Модераторы: ginnie
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с регулярными выражениями 
:(
    Опции темы
Зюзе
Дата 27.2.2009, 13:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 27.2.2009

Репутация: нет
Всего: нет



Всем привет. Сразу скажу я не программист, с перлом имел дело постольку-поскольку  smile 
Сейчас настраиваю приблуду к софтине (nagiosgraph) которая отрисовывает графики. 
В доках нарисован такой пример:
# INSTRUCTIONS:
# This file contains several example of service types. Edit this file to
# add more service types. The data string from Nagios is in $_ . Use
# regular expressions to identify and extract data like the examples below
# below.  Match on either output: or perfdata: . The code is pure perl,
# that will be run inside an eval{}. Results are expected in @s. The
# general format is:
# /output|perfdata:<servicetype> <key>=<value> <key2=value2> .../
# and push @s, [ <databasename>,
#                [ <key>,  GAUGE|DERIVE, <value>  ],
#                [ <key2>, GAUGE|DERIVE, <value2> ],
#                [ .       .              .        ],
#                [ .       .              .        ] ];
# But more advanced code is possible, as long as the resulting
# data structure is correct.

По примеру сделал график отрисовки загрузки процессора, 
#   Service type: ntload
#   check command: check_nt -H Address -v CPULOAD -l5,70,90,30,70,90
#   output: CPU Load 9% (5 min average)
#   perfdata:5 min avg Load=9%;80;90;0;100
/perfdata:.*5 min avg load=(\d+)%;(\d+);(\d+);(\d+);(\d+)/
and push @s, [ ntload,
  [ avg05min, GAUGE, $1 ] ];

но видимо где-то косяк с регекспами, потому что график не строится,
в логах пишет что 
insert.pl,v $ $Revision: 1.25 $ info - Input servicedescr:ntload
insert.pl,v $ $Revision: 1.25 $ info - Input output:CPU Load 0% (5 min average)
insert.pl,v $ $Revision: 1.25 $ warn - perfdata not recognized

Я уже перелом мозга получил с этими регекспами, не могу понять почему не воспринимает данные  smile  smile  smile 


PM MAIL   Вверх
amg
Дата 27.2.2009, 15:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1145
Регистрация: 3.8.2006
Где: Новосибирск

Репутация: нет
Всего: 50



Цитата(Зюзе @  27.2.2009,  13:44 Найти цитируемый пост)
#   perfdata:5 min avg Load=9%;80;90;0;100
/perfdata:.*5 min avg load=(\d+)%;(\d+);(\d+);(\d+);(\d+)/
Все правильно приведенной строке это рег. выражение не подходит. Нужно 
/perfdata:.*5 min avg Load=(\d+)%;(\d+);(\d+);(\d+);(\d+)/ либо
/perfdata:.*5 min avg load=(\d+)%;(\d+);(\d+);(\d+);(\d+)/i
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Perl: Регулярные выражения | Следующая тема »


 




[ Время генерации скрипта: 0.0389 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.