Ad Widget

Collapse

Анализ лог-файла с русскими символами вну

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • gibbon88
    Junior Member
    • Mar 2017
    • 4

    #1

    Анализ лог-файла с русскими символами вну

    Добрый день.
    Стоит Заббикс-сервер:
    zabbix_server (Zabbix) 3.2.4

    Есть лог-файлы, в которых присутствуют русские символы, например:

    =====================================
    The operation "Загрузка" has been performed successfully.
    =====================================

    Их необходимо анализировать с помощью Заббикса. Например, подсчитать количество строк с вхождениями слова "Загрузка".

    Как быть?

    Очевидно, что log[/<path_to_log>/log.log,"Загрузка"] не работает.

    Уважаемые форумчане, рассчитываю на вашу помощь.
  • yukra
    Senior Member
    • Apr 2013
    • 1359

    #2
    Originally posted by gibbon88
    Добрый день.
    Стоит Заббикс-сервер:
    zabbix_server (Zabbix) 3.2.4

    Есть лог-файлы, в которых присутствуют русские символы, например:

    =====================================
    The operation "Загрузка" has been performed successfully.
    =====================================

    Их необходимо анализировать с помощью Заббикса. Например, подсчитать количество строк с вхождениями слова "Загрузка".

    Как быть?

    Очевидно, что log[/<path_to_log>/log.log,"Загрузка"] не работает.

    Уважаемые форумчане, рассчитываю на вашу помощь.
    https://www.zabbix.com/documentation...BD%D1%8B%D1%85 - третий параметр "Кодировка" у ключа log пробовали?

    И это ... log вытягивает строки из лога в заббикс. Считать строки нужно или триггером или log.count

    Comment

    • gibbon88
      Junior Member
      • Mar 2017
      • 4

      #3
      Спасибо за ваш ответ.

      Да, кодировку конечно же пробовал.
      На текущий момент, элемент данных выглядит так:

      log[/<path_to_log>/mdmp.log,"[0-9]\"\.................\.","UTF-8",,,"\0"]

      Пробовал и так:
      log[/tmp/log/mdmp/mdmp.log,"[0-9]\"Загрузка","UTF-8",,,"\0"]

      но не работает.

      Насчёт .count, спасибо, в курсе, даже до 3.2 обновился из-за этого функционала.

      Сейчас задача стоит просто вытянуть строчки из лога, уже затем буду считать количество вхождений.

      Пример лога выглядит так:


      Code:
      2017-02-20 15:41:09,252 [ pool-2-thread-1] TRACE tractMdmpMessagePartComposerFile - The approximate size of a merged dictionary "RSPInterestRateAccountingTypes" is 1,674 bytes.
      2017-02-20 15:41:09,252 [ pool-2-thread-1] DEBUG         AbstractDictPerformerDao - 
      	=====================================================================
      	= "RSPInterestRateAccountingTypes" : "1.1". Загрузка...
      	=====================================================================
      2017-02-20 15:41:09,255 [ pool-2-thread-1] DEBUG                     JdbcTemplate - Executing prepared SQL query
      2017-02-20 15:41:09,256 [ pool-2-thread-1] DEBUG                     JdbcTemplate - Executing prepared SQL statement [select v.VERSION_ID, v.DICT_ID, v.VERSION, v.STATUS, v.STATUS_DATE, v.BEGIN_DATE, v.END_DATE, v.RECORDS_COUNT from MDMP_DICTIONARY d inner join MDMP_VERSION v on d.DICT_ID = v.DICT_ID and d.DICT_NAME = ? and v.VERSION = ?]
      2017-02-20 15:41:09,303 [ pool-2-thread-1] DEBUG                     JdbcTemplate - Executing SQL query [select SEQ_MDMP_VERSION.nextval from DUAL]
      Необходимо вытянуть строчку с "Загрузка..."
      Пока никак не удаётся.

      Comment

      • yukra
        Senior Member
        • Apr 2013
        • 1359

        #4
        Originally posted by gibbon88
        Спасибо за ваш ответ.

        Да, кодировку конечно же пробовал.
        На текущий момент, элемент данных выглядит так:

        log[/<path_to_log>/mdmp.log,"[0-9]\"\.................\.","UTF-8",,,"\0"]

        Пробовал и так:
        log[/tmp/log/mdmp/mdmp.log,"[0-9]\"Загрузка","UTF-8",,,"\0"]

        но не работает.

        Насчёт .count, спасибо, в курсе, даже до 3.2 обновился из-за этого функционала.

        Сейчас задача стоит просто вытянуть строчки из лога, уже затем буду считать количество вхождений.

        Пример лога выглядит так:


        Code:
        2017-02-20 15:41:09,252 [ pool-2-thread-1] TRACE tractMdmpMessagePartComposerFile - The approximate size of a merged dictionary "RSPInterestRateAccountingTypes" is 1,674 bytes.
        2017-02-20 15:41:09,252 [ pool-2-thread-1] DEBUG         AbstractDictPerformerDao - 
        	=====================================================================
        	= "RSPInterestRateAccountingTypes" : "1.1". Загрузка...
        	=====================================================================
        2017-02-20 15:41:09,255 [ pool-2-thread-1] DEBUG                     JdbcTemplate - Executing prepared SQL query
        2017-02-20 15:41:09,256 [ pool-2-thread-1] DEBUG                     JdbcTemplate - Executing prepared SQL statement [select v.VERSION_ID, v.DICT_ID, v.VERSION, v.STATUS, v.STATUS_DATE, v.BEGIN_DATE, v.END_DATE, v.RECORDS_COUNT from MDMP_DICTIONARY d inner join MDMP_VERSION v on d.DICT_ID = v.DICT_ID and d.DICT_NAME = ? and v.VERSION = ?]
        2017-02-20 15:41:09,303 [ pool-2-thread-1] DEBUG                     JdbcTemplate - Executing SQL query [select SEQ_MDMP_VERSION.nextval from DUAL]
        Необходимо вытянуть строчку с "Загрузка..."
        Пока никак не удаётся.
        кмк вы с регуляркой перемудрили в обоих случаях.
        По мне нужно сделать след:
        1) айтем log[/tmp/log/mdmp/mdmp.log,,"UTF-8"] и убедиться что данные приходят и русский текст отображается корректно.
        2) В простейшем случае переделать айтем на log[/tmp/log/mdmp/mdmp.log,"Загрузка","UTF-8"]
        3) При необходимости усложнять регулярку

        Comment

        • gibbon88
          Junior Member
          • Mar 2017
          • 4

          #5
          Спасибо большое.
          Вообщем-то справился Заббикс с русскими символами.

          "utf-8" важно указать и можно передавать паттерн "Загрузка".
          Еще раз спасибо за помощь и участие.

          Comment

          • gibbon88
            Junior Member
            • Mar 2017
            • 4

            #6
            Позвольте, пожалуйста, еще вопрос:

            как в item'е лог экранировать символ, например, точку или кавычки (") в том паттерне, по которому осуществляется поиск?

            Будет ли работать так:
            log.count[/tmp/log/mdmp/mdmp.log,"Загрузка\.","UTF-8",,,]

            Символ "\" годится для экранирования?

            Comment

            Working...