Nagios graphics

Материал из noname.com.ua
Перейти к навигацииПерейти к поиску

Nagios NagiosGraph

Nagiosgraph - замена какти. Что бы не держать 2 системы попробую рисовать все в нагиосе.

Установка и настройка

принцип работы простой - писать перфоманс дату, и потом ее анализировать, результат анализа ложить в RRD
в nagios.cfg как то так (с точностью до путей)

	
process_performance_data=1
service_perfdata_file=/var/spool/nagios/perfdata.log
service_perfdata_file_template=$LASTSERVICECHECK$||$HOSTNAME$||$SERVICEDESC$||$SERVICEOUTPUT$||$SERVICEPERFDATA$
service_perfdata_file_mode=a
service_perfdata_file_processing_interval=30
service_perfdata_file_processing_command=process-service-perfdata

в commands.cfg

	
define command{
command_name  process-service-perfdata
command_line  /usr/bin/perl /usr/libexec/nagiosgraph/insert.pl
}

Тут тоже пути могут отличаться. Отмечу, что второй вариант это делать то же самое из крона. У меня были неясные проблемы с графиками которые переставали рисоваться и я переключился на крон.


Ссылку на графики можно обозначить несколькими способами, например описать в шаблоне:

define service{
name             local-service
use                generic-service
action_url       /nagios/cgi-bin/nagiosgraph/show.cgi?host=$HOSTNAME$&service=$SERVICEDESC$&geom=450x150
max_check_attempts              4
normal_check_interval           5
retry_check_interval            1
register                        0
}

Или для каждого хоста отдельно:

	
define host{
       use                     linux-server
       host_name               www
       address                 192.168.0.12
       action_url       /nagios/cgi-bin/nagiosgraph/show.cgi?host=$HOSTNAME$&service=$SERVICEDESC$&geom=450x150
}

Важный момент — в templates.cfg, в описании generic-service обязательно должно быть указано

	
process_perf_data               1

настройки nagiosgraph.

debug = 2
logfile = /var/spool/nagios/nagiosgraph.log
rrddir =  /var/spool/nagios/rrd
mapfile = /usr/local/etc/nagios/nagiosgraph/map
colorscheme = 3
heartbeat = 600
perflog = /var/spool/nagios/perfdata.log
stylesheet = /nagios/stylesheets/nagiosgraph.css
dbseparator = subdir
plotas = LINE2

В файле map описаны примеры того, в каком виде данные будут отображаться на графике. Например ping:

	
/output:PING.*?(\d+)%.+?([.\d]+)\sms/
and push @s, [ 'ping',
[ 'losspct', GAUGE, $1 ],
[ 'rta', GAUGE, $2 ] ];

Прописываем в insert.pl правильный путь к конфигу:

# Configuration
my $configfile = '/etc/nagios/nagiosgraph/nagiosgraph.conf';

И аналогичным образом в ... /nagiosgraph/show.cgi:

# Configuration
my $configfile = '/usr/local/etc/nagios/nagiosgraph/nagiosgraph.conf';