Ad Widget

Collapse

Global and host based macros

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Jimson
    Senior Member
    • Jan 2008
    • 1327

    #1

    Global and host based macros

    Поставил 1.8.4rc1, пытаюсь проверить как работают user defined macros, и что то не получается. Добавил к хосту макрос, написал дескрипшен для элемента данных этого хоста с использованием макроса, во фронтэнде он не обновляется. Есть идеи что я не так мог сделать и куда смотреть? Ну или хотя бы есть ли в php какой то логгер, что бы можно было подебажить функцию items.inc.php:item_description

    Я так же немного поковырялся в исходниках, нашел там готовую функцию для раскрытия глобал и хост макросов libs/zbxserver/expression.c/item_description(*buff, key, hostid), никто не пробовал использовать её же для реализации глобал/хост макросов в SNMP community/OID ?
  • Jimson
    Senior Member
    • Jan 2008
    • 1327

    #2
    по образу и подобию item_description() сделал функцию substitute_user_macros(char **data, zbx_uint64_t hostid), ничего не изобретал, просто выкинул кусок кода подставляющий параметры ($1 $2 etc)

    в check_snmp.c добавил вызов этой функции для подстановки user defined macros, вроде работает

    буду брагодарен есть кто посмотрит не налажал ли я где с указателями и не надо в тех пару строках которые я добавил в check_snmp.c звать zbx_free(p)

    P.S. с первым вопросом я нашел ошибку у себя, доллар надо писать за скобками а не перед, как мы привыкли
    Attached Files

    Comment

    • ugh
      Senior Member
      • Jun 2009
      • 296

      #3
      что-то вы усложняете все
      что хотите то?
      макросы работают там где заявлено

      Comment

      • Jimson
        Senior Member
        • Jan 2008
        • 1327

        #4
        именно то что я и написал: поддержка user defined макросов в SNMP community

        Comment

        • zalex_ua
          Senior Member
          Zabbix Certified Trainer
          Zabbix Certified SpecialistZabbix Certified Professional
          • Oct 2009
          • 1286

          #5
          Originally posted by Jimson
          именно то что я и написал: поддержка user defined макросов в SNMP community
          Не забываем про треккер господа.

          по желанию можно голосовать.

          Comment

          • Jimson
            Senior Member
            • Jan 2008
            • 1327

            #6
            Originally posted by zalex_ua
            Не забываем про треккер господа.

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

            Comment

            • Jimson
              Senior Member
              • Jan 2008
              • 1327

              #7
              если вдруг это кому интересно, то

              1) поправил вариант реализации макросов для SNMP воспользовавшись уже существующей функцией item_description(), поддерживаются глобал/шаблон/узел макросы и параметры(ключи) для SNMP community, SNMP OID в том числе для индексного OID и для индексного value
              надеюсь нигде не закрался мемлик

              2) у меня хосты почти все под fbsd, для полноты картины добавил функции для active, inactive и wired memory (active+inactive+wired+cached+free=total)
              Attached Files

              Comment

              • zalex_ua
                Senior Member
                Zabbix Certified Trainer
                Zabbix Certified SpecialistZabbix Certified Professional
                • Oct 2009
                • 1286

                #8
                Originally posted by Jimson
                если вдруг это кому интересно, то

                1) поправил вариант реализации макросов для SNMP воспользовавшись уже существующей функцией item_description(), поддерживаются глобал/шаблон/узел макросы и параметры(ключи) для SNMP community, SNMP OID в том числе для индексного OID и для индексного value
                надеюсь нигде не закрался мемлик

                2) у меня хосты почти все под fbsd, для полноты картины добавил функции для active, inactive и wired memory (active+inactive+wired+cached+free=total)
                Обязательно присоедините патч для SNMP на трекер, а по fbsd пожалуйста создайте новый запрос и тоже присоедините патч.

                Comment

                Working...