Нагиосграф rrd файлы не созданы (возможно из-за файла карты)

У меня проблема с Nagiosgraph. Я создал проверку nagios, которая следит за трафиком на сервере / рабочей станции через SNMP, и вывод проверки представляет собой длинную строку, которая выглядит следующим образом:

  OK - traffmon eth0:incoming:170KB:outgoing:1606KB eth1:incoming:1576KB:outgoing:170KB eth2:incoming:156:outgoing:0|lo;incoming;25;outgoing;25 tunl0;incoming;0;outgoing;0 gre0;incoming;0;outgoing;0 sit0;incoming;0;outgoing;0 eth0;incoming;170KB;outgoing;1606KB eth1;incoming;1576KB;outgoing;170KB eth2;incoming;156;outgoing;0

Я заинтересован в первых трех интерфейсах, поэтому я отделил eth0,eth1,eth2 от всей строки с помощью интерфейсов (которые я рассмотрел данные о производительности), и я следовал инструкциям на http://www.novell.com/coolsolutions/feature/19843.html и у меня есть в моей service.cfg

  define serviceextinfo{
    host_name                workstation
    service_description      Throughput Monitor
    action_url               /nagiosgraph/cgi-bin/show.cgi?host=$HOSTNAME$&service=$SERVICEDESC$&db=eth0,incoming,outgoing,&geom=500x100&rrdopts%3D-l%200%20-u%2010000%20-t%20Traffic
  }

и в моем файле карты я написал это, чтобы соответствовать вещам, которые меня интересовали:

  /output:.*traffmon ([0-9]+), ([0-9]+), ([0-9]+), ([0-9]+), ([0-9]+), ([0-9]+),   ([0-9]+), ([0-9]+), ([0-9]+)/
  and push @s, [ 'eth0',
            ['incoming', 'GAUGE', $2],
            ['outgoing', 'GAUGE', $3] ],
         [ 'eth1',
            ['incoming', 'GAUGE', $5],
            ['outgoing', 'GAUGE', $6] ],
         [ 'eth2',
            ['incoming', 'GAUGE', $8],
            ['outgoing', 'GAUGE', $9] ];

Я хотел создать три таблицы (eth0, eth1, eth2) с двумя столбцами (входящие, исходящие) и с тех пор пытаться представить их красиво. Дело в том, что обычно мои rrd-файлы создаются автоматически, но для этой проверки папка в rrd-папке с именем рабочей станции не создается и не являются.rrd-файлами, и у меня такое ощущение, что у него есть, чем заняться с файлом карты, может быть, сопоставление не работает или что-то (я говорю это, потому что я не Perl сейчас). Любое предложение приветствуется. Спасибо

1 ответ

Решение

Вы можете попробовать это регулярное выражение:

/traffmon eth0:incoming:(\d+)(?:KB):outgoing:(\d+)(?:KB) eth1:incoming:(\d+)(?:KB):outgoing:(\d+)(?:KB) eth2:incoming:(\d+):outgoing:(\d+)/

Вы можете проверить это на Rubular: http://rubular.com/r/vj7VXwDPPU


Я не знаком с тем, как работает ваша система nagios, но если есть место для большего количества Perl-кода, вы также можете сделать что-то вроде:

my $res = 'OK - traffmon eth0:incoming:170KB:outgoing:1606KB eth1:incoming:1576KB:outgoing:170KB eth2:incoming:156:outgoing:0|lo;incoming;25;outgoing;25 tunl0;incoming;0;outgoing;0 gre0;incoming;0;outgoing;0 sit0;incoming;0;outgoing;0 eth0;incoming;170KB;outgoing;1606KB eth1;incoming;1576KB;outgoing;170KB eth2;incoming;156;outgoing;0';
my @s;
push @s, map { 
    my @f = split /:/;
    [ $f[0], [$f[1], 'GAUGE', $f[2] ], [$f[3], 'GAUGE', $f[4]] ]
  } (split(/ |\|/, $res))[3..5];
print Dumper @s;

Это разбивает строку на пробел или труба |, принимает 3-5-й элемент (который является первыми тремя интерфейсами), а затем выполняет цикл с ними. Это раскалывается на толстой кишке :, строит вашу структуру данных и возвращает ее для каждого интерфейса. Возвращенная структура данных помещается в @s,

Выход:

$VAR1 = [
          'eth0',
          [
            'incoming',
            'GAUGE',
            '170KB'
          ],
          [
            'outgoing',
            'GAUGE',
            '1606KB'
          ]
        ];
$VAR2 = [
          'eth1',
          [
            'incoming',
            'GAUGE',
            '1576KB'
          ],
          [
            'outgoing',
            'GAUGE',
            '170KB'
          ]
        ];
$VAR3 = [
          'eth2',
          [
            'incoming',
            'GAUGE',
            '156'
          ],
          [
            'outgoing',
            'GAUGE',
            '0'
          ]
        ];
Другие вопросы по тегам