@cedricludovic can you try with:
/usr/lib64/nagios/plugins/check_centreon_nrpe3 -H server1.domain.local -p 5666 -t 60 -u -2 -P 8192 -c check_centreon_plugins -a 'os::windows::local::plugin' 'updates'
/usr/lib64/nagios/plugins/check_centreon_nrpe3 -H server1.domain.local -p 5666 -t 60 -u -2 -P 8192 -c check_centreon_plugins -a 'os::windows::local::plugin' 'updates' ' --verbose --display-updates '
Also, any clues in your nsclient.log?
Hello,
Thank’s for your help.
Unfortunately, no clues in nsclient.log, even in debug or trace mode.
The last line is the command I do.
The 2 commands gave the same result :
UNKNOWN: Cannot decode json response: illegal backslash escape sequence in string, at character offset 44 (before "\\x85 jour cumulativ...") at C:\Windows\TEMP\par-53525653514c3230313924\cache-c0092cafd5f6f1c92999240ce6556f3a3bb56530\inc\lib/os/windows/local/mode/updates.pm line 107.
we can check that nrpe3 is working ok, update x.x.x.x with the required host.
time /usr/lib64/nagios/plugins/check_centreon_nrpe3 -H x.x.x.x -p 5666 -t 600 -u -2 -P 8192
then confirm that you have the latest plugin
https://github.com/centreon/centreon-nsclient-build/releases
Cannot decode json response: illegal backslash escape sequence in string, at character offset 44 (before "\\x85 jour cumulativ...")
I”ve seen this a lot : there is an issue with french accent and other unicode character in the centreon plugins for windows
“Mise à jour cumulative” (the name of the patch in french) contains “à”, this is unicode
this problem happens on a lot of check, I have some issues with german and french servers, even on service names where the check return json decode errors
it also happen with the check nscllient web api or nrpe, but as the message states, it’s the perl file on windows side that does the error, not the check on the poller side
(you can have the problem on some exchange check for queues, for windows services with unicode, usually third party apps or in house development where they used é è ç à… )
I never deep dived in this part of the code, and found workarounds (exclusion, or simply ignoring), but maybe something could be done globally on the windows plugins to parse all string for unicode char before converting them in json, or maybe there are option in the perl json lib to work around that.
It is way too complicated for me to debug
ah yes, this, but that’s not what I was mentionning, there are some issue also sometime in the “windows\temp….pm” code generated by the plugin pack windows that uses json and have the decoding issue on top of the restapi issue
this is what’s happening in cedricludovic’s case
this perl https://github.com/centreon/centreon-plugins/blob/c642befb68297d4cd516c9532b9518d2bebd2d7a/src/os/windows/local/mode/updates.pm#L107
parse the json output from this powershell command output centreon-plugins/updates.pm at develop · centreon/centreon-plugins · GitHub
you can see some encoding/escaping in this last script, but that’s where I lost my way trying to understand which string escaping was taking place where
any scripts in this folder centreon-plugins/src/centreon/common/powershell at develop · centreon/centreon-plugins · GitHub using json output from poweshell from perl can have issue with unicode char, it’s hard to debug
@christophe.niel-ACT Your right. It’s exactly the problem. It’s an issue with the french accent.
And this is far beyond my knowledge.
Pour les accents:
--source-encoding=ISO-8859-1
La solution n’est pas de moi mais ça marche:
/usr/lib64/nagios/plugins/check_centreon_nrpe -H RDSH03 -p 5666 -t 420 -u -m 8192 -c check_centreon_plugins -a 'os::windows::local::plugin' 'updates' ' --filter-title="" --exclude-title="Microsoft Defender Antivirus" --filter-mandatory="" --warning-pending-updates="0" --critical-pending-updates="2" --exclude-title="KB5023049" --verbose --display-updates --source-encoding=ISO-8859-1 '
Thank you Jumulus,
It works like a charm.
--exclude-title="KB5023049"