Ad Widget

Collapse

Проблемы с кодировкой при чтении журнала

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • baydakovss
    Junior Member
    • Mar 2010
    • 3

    #1

    Проблемы с кодировкой при чтении журнала

    Здравствуйте.
    Предыстория:
    В попытке решить проблему с русской кодировкой при мониторинге Eventlog (Windows 2003 RUS), обратился к проекту https://engineering.purdue.edu/ECN/R...s/UNIX/evtsys/. Настроил пересылку событий windows удаленному syslog.

    Проблема:
    Данные передаются в кодировке CP1251, хранятся соответственно тоже (проверял).
    Создал ITEM: log[/var/log/errorlog,,cp1251,10]
    Данные вижу. Но они опять вопросами.
    На сервере syslog стоит
    * debian 5.0.4 lenny
    * zabbix-agent 1.8
    * локаль по умолчанию UTF8, но CP1251 собрана

    На zabbix-сервере
    * debian squeze
    * zabbix-server 1.8.1
    * локаль по умолчанию UTF8, но CP1251 собрана

    Что я делаю не так? Я думал, что параметр cp1251 в итеме как раз для того, чтобы понимать кодировку, отличную от UTF

    Уж очень не хочется изобретать какой-то конвеер с iconv и syslog. Это уже будут двойные костыли.

    P.S. Может быть можно перевести русские сообщения eventlog в русской винде в английские? Это тоже был бы вариант. Такое использовал при мониторинге счетчиков производительности - перевел в английскую нотификацию с помощью изменений в реестре

    Спасибо
  • Vengant
    Junior Member
    • Dec 2013
    • 22

    #2
    Я настроил linux syslog сервер + mysql + loganalyzer по умолчанию.
    Логи приходят как в английской кодировке так и в русской от Windows серверов. НО русские символы показываются кракозябрами.
    Решил так: перенастроил глобальные переменные в mysql на UTF-8, пересоздал базу, настроил кодировку в loganalyzer на UTF-8
    + добавил в файле classes/logstreamdb.class.php
    ###строка 150###
    Code:
    $this->dbhandle = ...
    mysql_query("SET NAMES utf8");
    + добавил в файле include/functions_common.php
    ###строка 1179###
    Code:
    global $content; ...
    return $myStr;
    #return... //закоментил

    Данные передаются в кодировке CP1251, хранятся соответственно тоже (проверял)
    Не подтвердилось

    Comment

    Working...