Ad Widget

Collapse

Zabbix, SNMP и APC UPS

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Anth0ny
    Member
    • Nov 2009
    • 85

    #1

    Zabbix, SNMP и APC UPS

    Приветствую коллеги!

    Приобрели девайс Smart-UPS 5000 RM. Подключили к сети и начал я его дёргать за snmp'ську. Информация отдаётся, тут всё без проблем. Но вот что поставило меня в тупик...

    Если открыть веб-страничку управления упсой, то в разделе "UPS status" виден параметр "Runtime:", который составляет 11 минут.

    При запросе snmp-тулзами данных у OID upsAdvBatteryRunTimeRemaining.0 (1.3.6.1.4.1.318.1.1.1.2.2.3.0) я получаю вполне конкретный ответ:

    upsAdvBatteryRunTimeRemaining.0 0:11:00.00

    Обрадовавшись, я сделал айтем в Заббиксе... И получил ответ 66000. Смекнув, что это тоже самое но только вид сбоку (х 0.6000), я попытался понять, ПОЧЕМУ тулзы возвращают данные в правильном формате а Заббикс- только в этом?

    Если пристально посмотреть на тип данных данного оида...

    Name:upsAdvBatteryRunTimeRemaining
    Oid:1.3.6.1.4.1.318.1.1.1.2.2.3
    Composed Type: TimeTicks
    Base Type: UNSIGNED32
    Module:PowerNet-MIB
    Description: The UPS battery run time remaining before battery exhaustion.

    ..., то складывается впечатление, что тулзы при наличии этого PowerNet-MIB и узнав из него что тип данных - UNSIGNED32\TimeTicks осуществляют преобразование в читабельный формат.

    попробовал snmpwalk: snmpwalk -v1 -c public 10.100.1.1 1.3.6.1.4.1.318.1.1.1.2.2.3.0
    результат: SNMPv2-SMI::enterprises.318.1.1.1.2.2.3.0 = Timeticks: (66000) 0:11:00.00

    отсюда вопрос: можно ли каким-либо образом КОРРЕКТНО преобразовать эти 66000 в 0:11:00.00 ну или на крайний случай просто в 11 (отбросив часы и секунды)? насколько корректным будет использование такого айтема с делителем (3) ?

    может быть дело в типах данных (1, 2 и 4), которые я должен использовать в Заббиксе?

    как вы думаете?
    Attached Files
    Last edited by Anth0ny; 30-06-2010, 09:48.
  • Anth0ny
    Member
    • Nov 2009
    • 85

    #2
    дополнение:
    мда. так множить нельзя.

    чтобы получить из 66000 11 это нужно умножать на 0,0018333333333333333333333333333333 (и т.д.)

    вообще поле "Multiplier" это только множитель? нельзя его как делитель использовать?
    Last edited by Anth0ny; 30-06-2010, 10:02.

    Comment

    • den_crane
      Senior Member
      • Feb 2006
      • 272

      #3
      Type of information: numeric float
      units: uptime
      Custom multiplier: 0.01

      Comment

      • Anth0ny
        Member
        • Nov 2009
        • 85

        #4
        Originally posted by den_crane
        Type of information: numeric float
        units: uptime
        Custom multiplier: 0.01
        omg, many thanks!
        =)

        отлично подошло! а откуда взята информация (мне для общего развития)?

        Comment

        • den_crane
          Senior Member
          • Feb 2006
          • 272

          #5
          Originally posted by anth0ny
          omg, many thanks!
          =)

          отлично подошло! а откуда взята информация (мне для общего развития)?
          Эээ. Тут-же все очевидно.
          66000 это время в сотых секунды. Я не читал вашу пургу со странными делителями, ибо лень.

          Comment

          • Anth0ny
            Member
            • Nov 2009
            • 85

            #6
            Originally posted by den_crane
            Эээ. Тут-же все очевидно.
            66000 это время в сотых секунды. Я не читал вашу пургу со странными делителями, ибо лень.
            согласен, пурга =)
            по поводу uptime: получается, что указание данной ед.измерения преобразует любые получаемые данные в формат 00:00:00 а множитель только корректирует смещение нужных данных в этом формате?
            Last edited by Anth0ny; 30-06-2010, 10:28.

            Comment

            • den_crane
              Senior Member
              • Feb 2006
              • 272

              #7
              Originally posted by Anth0ny
              согласен, пурга =)
              по поводу uptime: получается, что указание данной ед.измерения преобразует любые получаемые данные в формат 00:00:00 а множитель только корректирует смещение нужных данных в этом формате?
              забикс получает от упса значение 66000, умножает на 0.01, полученное 660 кладет таблицу. При отображении 660 секунд, из-за units uptime отображаются в виде 00:11:00

              Comment

              • Anth0ny
                Member
                • Nov 2009
                • 85

                #8
                спасибо, понятно =)
                тогда последний вопрос:

                в триггерах можно оперировать этими преобразованными в 00:00:00 данными? или придётся работать с 660?

                Comment

                • den_crane
                  Senior Member
                  • Feb 2006
                  • 272

                  #9
                  Originally posted by Anth0ny
                  спасибо, понятно =)
                  тогда последний вопрос:

                  в триггерах можно оперировать этими преобразованными в 00:00:00 данными? или придётся работать с 660?
                  накуя вам 00:00:00?? пишите last()<10m

                  .21.2. Множители связанные со временем

                  Начиная с версии 1.8.2 Zabbix доступны следующие временные множители:
                  * s - секунды; если используется, то работает так же как и сырое значение (raw values);
                  * m - минуты;
                  * h - часы;
                  * d - дни;
                  * w - недели.

                  {host:zabbix[proxy,zabbix_proxy,lastaccess]}>120
                  {host:system.uptime[].last()}<86400

                  можно изменить на:

                  {host:zabbix[proxy,zabbix_proxy,lastaccess]}>2m
                  {host:system.uptime.last()}<1d

                  Comment

                  • den_crane
                    Senior Member
                    • Feb 2006
                    • 272

                    #10
                    а можно кстати и numeric (unsigned) использовать

                    Comment

                    • Anth0ny
                      Member
                      • Nov 2009
                      • 85

                      #11
                      спасибо за помощь =)

                      Comment

                      Working...