Ad Widget

Collapse

огранчиение на UserParametr? команда возвращает "length:64 output"

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • zar
    Senior Member
    • Mar 2018
    • 148

    #1

    огранчиение на UserParametr? команда возвращает "length:64 output"


    в конфиги агента заббикса добавляю
    UserParameter=uCPU.temp[*],"wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CurrentTemperature /value | find "CurrentTemperature=""
    и в логи падает

    021/05/27 14:48:53.040737 plugin Cpu: executing collector task
    2021/05/27 14:48:53.572140 connection established using TLSv1.2 PSK-AES128-CBC-SHA
    2021/05/27 14:48:53.572140 received passive check request: 'uCPU.temp[]' from '10.202.100.150'
    2021/05/27 14:48:53.572140 [1] processing update request (1 requests)
    2021/05/27 14:48:53.572140 [1] adding new request for key: 'uCPU.temp[]'
    2021/05/27 14:48:53.572140 [1] created direct exporter task for plugin 'UserParameter' itemid:0 key 'uCPU.temp[]'
    2021/05/27 14:48:53.572140 executing direct exporter task for key 'uCPU.temp[]'
    2021/05/27 14:48:53.572140 [UserParameter] executing command:'"wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CurrentTemperature /value"'
    2021/05/27 14:48:53.617342 [UserParameter] command:'"wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CurrentTemperature /value"' length:64 output:'Синтаксическая ошибка в им'
    2021/05/27 14:48:53.617342 executed direct exporter task for key 'uCPU.temp[]'
    а на сервер приходит:
    mon01:~# zabbix_get -s MININT-CSMLECU -k uCPU.temp
    ���⠪��᪠� �訡�� � ����� 䠩��, ����� ����� ��� ��⪥ ⮬�.


    не знаете в чем причина?


    в мануале про ограничения ни слово....
    Last edited by zar; 27-05-2021, 09:21.
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #2
    Originally posted by zar
    в конфиги агента заббикса добавляю

    и в логи падает

    [...]

    а на сервер приходит:

    [...]

    не знаете в чем причина?
    Причина какого из этих событий?

    Причина того, что Вы что-то добавляете в конфиги агента2 Zabbix - наверное, хотите решить свою задачу, не заглянув в документацию, где есть примеры:
    Examples:
    UserParameter=system.test,who|wc -l
    UserParameter=check_cpu,./custom_script.sh
    Причина того, что в лог агента2 идёт ругань, - по всей видимости, то, что у Вас некорректно прописана выполняемая команда. Вся командная строка зачем-то обрамлена кавычками, при таком вызове и у меня происходит ругань на неверный синтаксис. Только у меня английская локализация, поэтому сообщение выглядит так:
    The filename, directory name, or volume label syntax is incorrect.
    Видимо, у агента Zabbix есть ограничение на размер сообщения об ошибке, поэтому в лог попадает только его начало.

    Причина того, что на сервер эта ругань приходит в нечитаемом виде - то, что результат (в данном случае - сообщение об ошибке) возвращается в кодировке, отличной от UTF-8.

    Comment

    • zar
      Senior Member
      • Mar 2018
      • 148

      #3
      Originally posted by Kos
      Причина какого из этих событий?

      Причина того, что Вы что-то добавляете в конфиги агента2 Zabbix - наверное, хотите решить свою задачу, не заглянув в документацию, где есть примеры:


      Причина того, что в лог агента2 идёт ругань, - по всей видимости, то, что у Вас некорректно прописана выполняемая команда. Вся командная строка зачем-то обрамлена кавычками, при таком вызове и у меня происходит ругань на неверный синтаксис. Только у меня английская локализация, поэтому сообщение выглядит так:

      Видимо, у агента Zabbix есть ограничение на размер сообщения об ошибке, поэтому в лог попадает только его начало.

      Причина того, что на сервер эта ругань приходит в нечитаемом виде - то, что результат (в данном случае - сообщение об ошибке) возвращается в кодировке, отличной от UTF-8.
      спасибо! действительно, понял что ошибся в самом написание... просто пытался добавить


      UserParameter=uCPU.temp[*],"wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CurrentTemperature /value | find "CurrentTemperature=""
      или
      UserParameter=uCPU.temp[*],cmd.exe wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CurrentTemperature /value | find "CurrentTemperature="
      и не получалось выполнить команду
      оказалось правильно просто


      UserParameter=uCPU.temp[*],wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CurrentTemperature /value | find "CurrentTemperature="
      без добавления вызова командной строки до этого использовал только powershell и затупил т.к. там он указывается явно






      Comment

      Working...