Необходимо привесить проверку события...
Если во временной промежуток с 11:00 до 23:00 на определенном интерфейсе падает трафик ниже к примеру 7 Мбит/с то создать аларм и выслать почту, при восстановлении соответственно отменить аларм и выслать письмо о восстановлении.
Понимаю что это нужно делать через Treshholds, но как сделать, что-то не соображу. Подскажите плз..
Спасибо заранее.
Если вопрос в проверке времени, то сделать это можно двумя путями:
1. Сделать DCI, который собирается с 11:00 до 23:00, это можно сделать через advanced schedule.
2. ПРи обработке события добавить скрипт, который проверяет текущее время и не матчит правило если время не в нужном диапазоне.
Виктор, может я опять сумбурно объяснил, попытаюсь исправиться..
Итак:
Данные должны сниматься независимо не от чего каждые 300 сек по SNMP. (Это есть)
Если в промежутке времени с 11:00 до 23:00 загрузка интернет канала опускается до 7 Мбит/с то создать аларм, выслать письмо, после восстановления выше 7 Мбит/с аннулировать аларм.
С трешхолдами я примерно представляю как работать, а вот как указывать промежуток времени и именно на этот промежуток накладывать проверки, понять не могу.. Есть какой-нибудь примерчик?
Тогда способ №2 - т.е. трешолд срабатывает всегда, но в event policy ставим дополнительную проверку на текущее время. Скрипт может выглядеть так:
sub main()
{
t = localtime();
return ((t->tm_hour >= 11) && (t->tm_hour <= 23)) ? 1 : 0;
}
можно использовать gmtime() если время нужно в GMT.
Сделал как показано на скриншоте. В итоге почему-то отрабатывается 4-ое правило вместо 3-го. Можно какие-то советы по этому вопросу?
a kak vigljadit zapis' dlja sootvetstvujushego sobitija v event log'e?
Пример:
Дата Warning FFM_7603-bgp SYS_TRESHOLDS_REACHED ну и сообщение стандартное.
Что конкретно интересует?
P.S.> Жаль что нет экспорта в EventLog-е :(
Interesovalo chto takoe sobitie bilo i ego timestamp. Poskol'ku ispol'zuetsja localtime(), ne mozet bit' kakogo-nibud' prikola s time zone servera?
Ja tol'ko-chto u sebja takuju konstrukciju proveril - rabotaet.
Вроде после установки gmtime() все встало на свои места. Но есть друга проблема. У меня на этой же железке есть и другие DCI с Tresholds-ами. К примеру загрузка процессора. Можно ли как-то разделить эти моменты? Конкретнее если отработал Treshold по конкретному интерфейсу, на котором снимается загрузка интернет канала (таких интерфейсов там 5), то чтоб в Event Processing он отрабатывался своим выделенным правилом, а все остальные event-ы (т.е. tresholds-ы по 4 FastEhernet, CPU, память и т.д.) отрабатывались общим правилом.
Можно ли как-то в поле Source добавить возможность выбирать какой именно DCI с данной Node-ы или же Node-а целиком?
А то я создал собственный шаблон писем типа "Интернет канал ниже уровня XXXX и в данный момент загрузка YYYY". В итоге по загрузке CPU приходит тоже самое =) Вообщем смотрится прикольно, но не правильно =)
Variantov zdes' neskol'ko:
1. Sozdat' sobstvennij event (naprimer DC_HIGH_INTERFACE_UTILIZATION), i v thresholdah na interfeisah generit' ego, a ne SYS_THRESHOLD_REACHED. Nu i sootvetstvenno ego stavit' v pole Event v event processing policy.
2. V SYS_THRESHOLD_REACHED pervim parametrom idet imja parametra, vtorim - description. Mozno ih proverjat' v scripte v event processing policy.
Сделал по первому варианту. Тестирую.