Add option to enable wildcard expansion (#4265)

This is needed because wildcard expansion causes counters to be localized.
This commit is contained in:
Vlasta Hajek
2018-06-11 20:10:53 +02:00
committed by Daniel Nelson
parent 3112ea1d8a
commit c03a144640
6 changed files with 471 additions and 56 deletions

View File

@@ -8,9 +8,6 @@ whether the Object, Instance and Counter exist on Telegraf startup.
Counter paths are refreshed periodically, see [CountersRefreshInterval](#countersrefreshinterval)
configuration parameter for more info.
Wildcards can be used in instance and counter names. Partial wildcards are supported only
in instance names on Windows Vista and newer.
In case of query for all instances `["*"]`, the plugin does not return the instance `_Total`
by default. See [IncludeTotal](#includetotal) for more info.
@@ -34,18 +31,36 @@ Bool, if set to `true` will print out all matching performance objects.
Example:
`PrintValid=true`
#### UseWildcardsExpansion
If `UseWildcardsExpansion` is set to true, wildcards can be used in instance name and counter name
.
Partial wildcard (e.g. `chrome*`) is supported only in instance name on Windows Vista and newer.
On localized Windows, returned counters will be also localized.
It also returns instance indexes in instance names.
If set to `false`, wildcards (not partial) in instance names can still be used, but instance indexes will not be returned in instance names.
Example:
`UseWildcardsExpansion=true`
#### CountersRefreshInterval
Configured counters are matched against available counters at the interval
specified by the `CountersRefreshInterval` parameter. Default value is `1m` (1 minute).
If wildcards are used in instance or counter names, they are expanded at this point.
If wildcards are used in instance or counter names, they are expanded at this point, if the `UseWildcardsExpansion` param is set to `true`.
Setting `CountersRefreshInterval` too low (order of seconds) can cause Telegraf to create
a high CPU load.
Set to `0s` to disable periodic refreshing.
Example:
`CountersRefreshInterval=1m`
#### PreVistaSupport
_Deprecated. Necessary features on Windows Vista and newer are checked dynamically_
@@ -88,7 +103,7 @@ By default any results containing `_Total` are stripped,
unless this is specified as the wanted instance.
Alternatively see the option `IncludeTotal` below.
It is also possible to set partial wildcards, eg. `["chrome*"]`
It is also possible to set partial wildcards, eg. `["chrome*"]`, if the `UseWildcardsExpansion` param is set to `true`
Some Objects do not have instances to select from at all.
Here only one option is valid if you want data back,
@@ -101,8 +116,8 @@ Counters key (this is an array) is the counters of the ObjectName
you would like returned, it can also be one or more values.
Example: `Counters = ["% Idle Time", "% Disk Read Time", "% Disk Write Time"]`
This must be specified for every counter you want the results of,
or use `["*"]` for all the counters for object.
This must be specified for every counter you want the results of, or use `["*"]` for all the counters for object,
if the `UseWildcardsExpansion` param is set to `true`
#### Measurement
*Optional*