German umlauts in service variables / perfmon check

I tried to configure few perfmon counters for a german W2K12 Server. They all works fine, except of these which require german umlauts. F.e.:
“\SMB-Serverfreigaben(_Total)\Geöffnete Dateien/s”
is not recognized by the system (Der angegebene Leistungsindikator wurde nicht gefunden.)
However, the same counter checked directly with the plugin via command line on server returns the data correctly (however the umlauts in output are destroyed, but in input required).

What coud be the problem?

Hi,

which version of Icinga 2 is involved on the master and the Windows server?

Can you extract the executed command line from the Icinga master? That is possible with either the Director’s Inspect feature in the detail view, or you’ll go with manually querying the REST API shown here.

Cheers,
Michael

You should also consider using the english performance counter names or even their numerical values, as the german ones are just translations on top which can create problem. I ran into the same problem a few years ago and decided to use the numerical values as we have Servers with different language packs.

Icinga Version: r2.9.1-1
Director: hm, master

Icinga Windows Agent Version: 2.9.1

You meant this:

zones.d/SICINGAPL/services.conf

object Service “Windows Server Perfmon - SMB-Shares - Opened files / sec” {
host_name = “myhostname.fqdn
check_command = “perfmon-windows
enable_notifications = true
enable_active_checks = true
enable_passive_checks = true enable_event_handler = true enable_flapping = true
enable_perfdata = true
command_endpoint = host_name
vars.perfmon_win_counter = “\SMB-Serverfreigaben(_Total)\Geöffnete Dateien/s” }

I’d love to use english ones (although i even had no idea it would be possible). However, system tools return german names, i used to use the “Leistungsüberwachung” to choose what’s for me interesting and where are any coming data and so on and then set up it in icinga. Do you know any good perfmon browser which would give me english counters names i could use in my system?

You should be able get them, by simply changing your language to english. I’m not sure if it works with any windows server version, but it should be as long as the english language pack is available

Yeah, this is out of the table i suppose - corp. standard.

you could also use this to get the numerical values of the performance counter, so they are portable between all windows versions and language packs

Ok, this looks good, i’ll test this

Hi,

No, the actual executed command line from Icinga 2 for this service. Maybe something weird happens in there, and umlauts are cut off on the way down to the Windows host.

curl -k -s -u director:<apiuserpassword> -H 'Accept: application/json' -H 'X-HTTP-Method-Override: GET' -X POST 'https://localhost:5665/v1/objects/services' \
-d '{ "filter": "match(pattern, service.name)", "filter_vars": { "pattern": "Windows Server Perfmon*" }, "attrs": [ "__name", "last_check_result" ], "pretty": true }'

Future versions of check_perfmon.exe will also support the respective Englisch counter name, but that’s not yet released.

Cheers,
Michael

This command unfortunately does not return anything in my system - password is correct, i am just getting a single empty line.

Frankly, i have no idea how to use it with check_perfmon. I tried some combination, but generally, numerical values are not recognized :frowning:

Hmmm, could you adjust the pattern to something like Windows Server* and could retrieve anything from it?