Страница 1 из 1

Nagios и кирилица

Добавлено: 2012-08-13 9:45:55
densan
Здравствуйте.
Давно использую нагиос. Все уведомления приходят в джабер. В качестве шаблонов уведомлений использую стандартне шаблоны. Возникла необходимость в уведомлениях, присылаемых нагиосом, добавления поля notes, в шаблон отправки сообщений внес необходимые изменения, для необходимых узлов мониторинга заполнил пол notes.
Но проблема в том, что поле notes в описании узла должно быть заполнено кирилицей

Код: Выделить всё

define host{
        use             generic-router
        host_name       kagau-Gagarina-28-cisco
        alias           kagau-Gagarina-28-cisco-x.x.x.x
        address         192.168.131.225
        hostgroups      routers
        parents         saratov_router
        г. ХХХХХХХХ ул. Гагарина 28, ТЦ ХХХХХХХХ, пров. ХХХХХХХХХХХ .......
        }
в сообщении

Код: Выделить всё

[12:49] ***** Penza Nagios *****
Notification Type: FLAPPINGSTOP
Host: kagau-Gagarina-28-cisco
State: UP
Note: ?. xxxxxxxx ??. ???????? 28, ?? xxxxxxxxxxxx, ????. xxxxxxxxxxxx .......
Address: 192.168.131.226
Info: PING OK - Packet loss = 0%, RTA = 34.35 ms
Date/Time: Sat Aug 11 12:49:00 MSK 2012
Подскажите как заставить нагиос присылать сообщения с читаемой кирилицей?

Re: Nagios и кирилица

Добавлено: 2012-08-30 15:40:57
densan
решил проблему так.
1. Конфиги нагиоса заполняет nagiosql в utf-8.
нагиосу по барабану в какой кодировке забиты данные. проблема была в получении читабельной информации в алертах. Алерты присылаются через джабер и емайл. Для рассылки по джаберу используется sendxmpp-0.0.8_1. В файле /usr/local/bin/sendxmpp исправил

Код: Выделить всё

#use encoding 'koi8-r';
use encoding 'utf-8';
для отсылки алертов через емайл исправил команду отсылки на

Код: Выделить всё

/usr/bin/printf "%b" "***** Penza Nagios *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" [b]| /usr/local/bin/iconv -f UTF-8 -t MS-CYRL[/b]| /usr/bin/mail -s "** $NOTIFICATIONTYPE$ Service Alert: $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" $CONTACTEMAIL$