Ad Widget

Collapse

Ткните в доку про ЛЮБЫЕ макросы в именах графиков

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Victor Vislobokov
    Senior Member
    • Aug 2018
    • 298

    #1

    Ткните в доку про ЛЮБЫЕ макросы в именах графиков

    Копаясь в исходниках я обнаружил:
    PHP Code:
    /**
    * Resolve functional item macros, for example, {{HOST.HOST1}:key.func(param)}.
    *
    * @param array $graphs list or hashmap of graphs
    * @param string $graphs[]['name'] string in which macros should be resolved
    * @param array $graphs[]['items'] list of graph items
    * @param int $graphs[]['items'][n]['hostid'] graph n-th item corresponding host Id
    * @param string $graphs[]['items'][n]['host'] graph n-th item corresponding host name
    *
    * @return string inputted data with resolved source field
    */
    private function resolveGraph($graphs) {
    ... 
    Но как ни странно, не нашёл ничего про это в документации. Отцы, ткните носом, плиз!
  • Kos
    Senior Member
    Zabbix Certified SpecialistZabbix Certified Professional
    • Aug 2015
    • 3404

    #2
    Не уверен, что понял Ваш вопрос.
    Вроде бы, совсем недавно мыс Вами выясняли, что пользовательские макросы в именах графиков всё ещё не поддерживаются, и есть незакрытый ZBXNEXT на эту тему.
    Всё, что я вижу об этом в официальной документации, - это то, что в именах графиков поддерживаются макрофункции вида {host:key.func(param)} (см. конец таблицы и примечания к этому пункту).
    Откуда Вы процитировали этот кусок исходника и почему думаете, что именно он должен быть как-то по особенному прокомментирован в документации - я не знаю.

    Comment

    • Victor Vislobokov
      Senior Member
      • Aug 2018
      • 298

      #3
      Я не пишу сейчас про пользовательские маркосы. С ними мы действительно всё выяснили.
      Да, то, что вы привели я и искал, а не нашёл, потому что смотрел РУССКУЮ версию документации, в которой этого ничего нет
      Я пытался задействовать поиск, но и по нему ничего не нашёл. Единственное, что навело меня на мысль, что что-то должно быть - это как раз комментарий в исходниках.

      Откуда Вы процитировали этот кусок исходника
      Из include/classes/macros/CMacrosResolver.php

      и почему думаете, что именно он должен быть как-то по особенному прокомментирован в документации
      Ну как же? Есть функционал, но нигде не описан! Как выяснилось всё-таки описан, но по моему скромному мнению, было бы логично упомянуть об этом не только в разеделе макросов. И вы знаете, в АНГЛИЙСКОЙ документации я нашёл это и графиках тоже, в русской опять же ничего этого нет! Пичалька!

      В общем спасибо, уважаемый Kos, вы указали на то, что я как раз и искал!


      P.S. Я допилил исходник для поддержки пользовательских макросов и вот как раз хочу проверить, не ломает ли моя поддержка имеющуюся функциональность.

      Comment

      • Kos
        Senior Member
        Zabbix Certified SpecialistZabbix Certified Professional
        • Aug 2015
        • 3404

        #4
        Понятно, спасибо!
        Интересно, чем закончатся Ваши изыскания. Если получится доделать - можно будет в тот же упомянутый ZBXNET об этом написать и приложить предлагаемый патч. Возможно, это поможет включить, наконец, данный функционал в основную ветку продукта.

        Comment

        • Victor Vislobokov
          Senior Member
          • Aug 2018
          • 298

          #5
          Можно заценить то, что получилось. Я не PHP программист, а всего-лишь сисадмин с небольшим уровнем в PHP программировании, так что мог где-то ошибиться, но у меня это работает и на Zabbix 3 и на Zabbix 4 без каких-то проблем. Чтобы проверить, просто укажите в имени графика какой-либо пользовательский макрос, который был определён в шаблоне. При выборе Графика в Мониторинге, после выбора имени хоста, в выпадающем списке отобразяться все доступные графики и если где-то в их именах есть пользовательский макрос - он должен быть заменён соответствующим ему значением. Обработка пользовательских макросов выполняется после обработки функциональных, так что ничем этой самой обработке помешать не должна.

          Comment

          • Kos
            Senior Member
            Zabbix Certified SpecialistZabbix Certified Professional
            • Aug 2015
            • 3404

            #6
            Спасибо! Я подписан на тот ZBXNEXT, мне уже пришло уведомление о Ваших правках. Я тоже не PHP-программист (мне трудно оценить эффективность и корректность Ваших правок), но надеюсь, что Ваши усилия окажутся полезными.

            Comment

            Working...