Ad Widget

Collapse

Форматированный вывод значений (need help)

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • swq
    Member
    • Sep 2009
    • 84

    #1

    Форматированный вывод значений (need help)

    Может кто подскажет как сделать форматированый вывод значений в zabbix, что бы при чтении истории элемента типа "Text" колонки не съезжали друг относительно друга?
    Как-то так:


    Причем, если в выводе есть слова, то колонки съезжают вправо еще больше в зависимости от длины слова и ширины буквы. При выводе данных perl скрипта на консоль все отформатировано и наблюдаются стройные колонки.
    Есть мнение, что надо юзать monospace шрифт. Как это сделать? Гугл не помог (ну или я не нашел).
    Кто сможет предложить решение?
  • aib
    Senior Member
    • Jan 2014
    • 1615

    #2
    Буквально сегодня видел тему, где в качестве данных для поля text предлагалось передавать .html
    Может, вам также попробовать?
    Ибо там, в примерах, были таблицы, и даже графики.

    Вот эта тема: https://www.zabbix.com/forum/showthread.php?t=48795
    Last edited by aib; 17-03-2015, 20:48.
    Sincerely yours,
    Aleksey

    Comment

    • swq
      Member
      • Sep 2009
      • 84

      #3
      Идея то понятна, страницу html можно сделать, гугл мне в помощь, но в ссылке не сказано как впихнуть в html значение переменной и самое главное как все это передать с помощью zabbix_sender-а в базу.
      Попробовал передать простой код из учебника, получил:



      Данные передавал так zabbix_sender -z 127.0.0.1 -i /var/tmp/test.txt
      Формат test.txt:
      TEST test.key.1 "тут пример кода html"

      Comment

      • aib
        Senior Member
        • Jan 2014
        • 1615

        #4
        "Не сработала хреновина"
        Видимо, не зря при отображении Plain Text в Экранах можно поставить галочку "Отображать как HTML". Наверняка там какой-то интерпретатор стоит
        Sincerely yours,
        Aleksey

        Comment

        • swq
          Member
          • Sep 2009
          • 84

          #5
          Originally posted by aib
          "Не сработала хреновина"
          Видимо, не зря при отображении plain text в Экранах можно поставить галочку "Отображать как html". Наверняка там какой-то интерпретатор стоит
          cпасибо, уже сам разобрался. Писал автору ответов в ссылке, он помог.

          Comment

          • aib
            Senior Member
            • Jan 2014
            • 1615

            #6
            Не поделитесь опытом?
            Чтоб в будущем не рыскать в поисках ответов.
            Sincerely yours,
            Aleksey

            Comment

            • sadman
              Senior Member
              • Dec 2010
              • 1611

              #7
              Наверное зря head и body вкрячивал - достаточно было прямо с table зайти

              Comment

              • swq
                Member
                • Sep 2009
                • 84

                #8
                Originally posted by sadman
                Наверное зря head и body вкрячивал - достаточно было прямо с table зайти
                Ну во первых я взял для пробы пример в гугле, а так как я html не знаю, то и не заморачивался.

                Originally posted by aib
                Не поделитесь опытом?
                Чтоб в будущем не рыскать в поисках ответов.
                Во вторых я вообще ошибся, так как хотел форматировать с помощью html текст и видеть результат в истории тут: Monitoring\Latest data
                Как оказалось это не возможно.
                Как бы то ни было работает это так:
                1. Создаем комплексный экран, выбираем ресурс как "Простой текст", отмечаем бокс "Показать текст в виде HTML" и выбираем нужный элемент. Тип элемента должен быть "Текст"
                2. Команда - zabbix_sender -z 127.0.0.1 -i /work/tmp/test.txt
                3. Содержимое файла:
                TEST test.1 <html>blabla</html>
                где:
                TEST - host
                test.1 - key
                Третье поле передаваемый текст.
                Текст должен быть неразрывным и в одну строку. Если надо сделать пробел, то лучше всего использовать код &nbsp; для перевода строки \n

                Так что вопрос остался открытым. Что надо сделать с текстом, чтобы видеть его тут Monitoring\Latest data в отформатированном виде? Или так. Возможно ли это?

                Comment

                • aib
                  Senior Member
                  • Jan 2014
                  • 1615

                  #9
                  Originally posted by swq
                  3. Содержимое файла:
                  TEST test.1 <html>blabla</html>
                  где:
                  TEST - host
                  test.1 - key
                  Третье поле передаваемый текст.
                  Напишите что-нибудь типа таблицы в HTML
                  Code:
                  <html><body><table><tr><th>Заголовок&nbsp;1&nbsp;колонки</th><th>Заголовок&nbsp;2&nbsp;колонки</th></tr><tr><td>123456</td><td>6</td></tr><tr><td>789</td><td>7</td></tr></table></body></html>
                  Как и просили - всё в одну строку, пробелы заменены.
                  Sincerely yours,
                  Aleksey

                  Comment

                  • swq
                    Member
                    • Sep 2009
                    • 84

                    #10
                    Originally posted by aib
                    Напишите что-нибудь типа таблицы в html
                    Code:
                    <html><body><table><tr><th>Заголовок&nbsp;1&nbsp;колонки</th><th>Заголовок&nbsp;2&nbsp;колонки</th></tr><tr><td>123456</td><td>6</td></tr><tr><td>789</td><td>7</td></tr></table></body></html>
                    Как и просили - всё в одну строку, пробелы заменены.
                    Вы меня не поняли. "cделать в одну строку" я не просил. Я рекомендовал так сделать по вашей же просьбе.
                    Не поделитесь опытом?
                    Чтоб в будущем не рыскать в поисках ответов.

                    Comment

                    • aib
                      Senior Member
                      • Jan 2014
                      • 1615

                      #11
                      Originally posted by swq
                      Так что вопрос остался открытым. Что надо сделать с текстом, чтобы видеть его тут monitoring\latest data в отформатированном виде? Или так. Возможно ли это?
                      Чтобы не было недопонимания - я ответил на вот этот, процитированный мной вопрос.
                      Ответ: "Сделайте таблицу и передайте её в виде одной строки".
                      Sincerely yours,
                      Aleksey

                      Comment

                      • swq
                        Member
                        • Sep 2009
                        • 84

                        #12
                        Originally posted by aib
                        Чтобы не было недопонимания - я ответил на вот этот, процитированный мной вопрос.
                        Ответ: "Сделайте таблицу и передайте её в виде одной строки".
                        Вот тут monitoring\latest data html работать не будет. Это видно на одном из скринов, которые я постил выше.

                        Comment

                        • aib
                          Senior Member
                          • Jan 2014
                          • 1615

                          #13
                          да, не будет
                          потому-что Latest Data - для предварительной оценки того, что данные собираются.
                          Сводный экран, включающий в себя статистику и графики - гораздо более информативен, чем Latest Data.

                          Это примерно как использовать "tail -f syslog" - ты видишь, как мимо тебя текут события и можешь проконтролировать текущие изменения. Но при этом не знаешь, насколько загружен процессор и сколько свободного места на дисках осталось. Это пример. Просто пример...
                          Sincerely yours,
                          Aleksey

                          Comment

                          Working...