
Alexey
07.12.2017
14:16:29
Всем, привет! коллеги, подскажите пожалуйста, хотя бы в какую сторону копать. есть задача. заббиксом мониторить лог на наличие FATAL и когда нашел он эту строчку то необходимо присылать на почту не только саму строчку а еще стэк трейс самого фатала. это порядка еще 15 строк. триггер стоит на поиск строки FATAL в логе. каким образом это реализовать?

Kolunchik
07.12.2017
14:21:32
Экшен c грепом.

Alexey
07.12.2017
14:22:27
а поподробнее? ?

Kolunchik
07.12.2017
14:23:54
grep -B 15 "ALARM" /var/log/messages | telegram-tra-ta-ta

Google

Kolunchik
07.12.2017
14:24:39
Вместо ALARM использовать переменную, которую выдавать из заббикса. Лучше, если в переменной будет время или что-то подобное, к чему можно просто зацепиться.

Alexey
07.12.2017
14:26:53
про grep -B я думал, но там нюанс что есть два типа фаталов и в одном 15 строк стектрейса а во втором 9 строк стектрейса и нужно как то определять (хотя бы по пустой строке) сколько брать строк после фатала. можно ли такое вобще сделать?

Kolunchik
07.12.2017
14:29:24
Да, это не совсем, конечно, удобненько. А не вариант писать какой-нибудь жсон в лог?

Alexey
07.12.2017
14:29:52
я далек от жсон логов. только примерно знаю что это

Dmitry
07.12.2017
14:29:59
надо написать парсер лога, который бы вычленял нужные строки. Думаю, что всё уже придумано до нас, и надо просто погуглить.

Ilya
07.12.2017
14:30:39
Реализовать – не используя заббикс как систему парсинга логов
Потому что заббикс – это система мониторинга

Dmitry
07.12.2017
14:31:02
вторая, более интересная задача - это сделать так, чтобы в работу брались только новые строки, а старые игнорировались. Но и тут думаю, что всё уже придумано до нас.

Ilya
07.12.2017
14:31:05
А для фаталов с трейсами – лог алертинг нормальный

Dmitry
07.12.2017
14:31:42
вот да. Навесить на заббикс алерт типа "атата, новая ошибка" - это норм. Но полный текст ошибок писать... это задача для другой системы

Андрей
07.12.2017
14:32:27
Народ. Через 10 минут после срабатывания триггира приходит ОК Событие .. что не так? хотя интерфейс упал в даун и так в нем и лежит. А после того как интерфейс поднимается срабатывает триггер и снова ОК событие
{Kerio SNMP:ifOperStatus[{#SNMPVALUE}].diff(0)}=1

Google

Dmitry
07.12.2017
14:33:07
потому что diff

Андрей
07.12.2017
14:33:34
ага последнее с предыдущим сравнивается .. на что можно поменять ?

Dmitry
07.12.2017
14:33:48
last

Андрей
07.12.2017
14:34:13
ок попробую сейчас

Dmitry
07.12.2017
14:34:48
по latest data лучше свериться, чтобы узнать, какие цифры каким статусам соответствуют

Alexey
07.12.2017
14:37:32

Dmitry
07.12.2017
14:40:15

Vi
07.12.2017
14:41:25
сложно становится когда скриптов переваливает за N а их никто не держит в гите

Dmitry
07.12.2017
14:41:44
а вообще чисто технически можно и через заббикс весь стектрейс прогонять, чтобы он весь в алерты попадал, если сильно хочется. Может это даже было бы правильнее, чем ставить что-то дополнительно. Главное хранение настроить, чтобы не было оверхедов.

Ilya
07.12.2017
14:42:01

Dmitry
07.12.2017
14:42:05
но парсинг должен быть на агенте, это 100%
сентри тема, да. Но это как базука по воробьям в некоторых случаях.

Alexey
07.12.2017
14:43:11
спасибо! про сентри надо почитать сейчас будет.

Некто
07.12.2017
14:43:50

Alexey
07.12.2017
14:44:48

Dmitry
07.12.2017
14:45:27
сентри это целая система, состоящая из постгреса, редиса и нескольких демонов. Если всё что надо - это слать в алерты стектрейсы, то сентри это люто избыточно

Ilya
07.12.2017
14:47:29
Короче, чтобы реализовать задачу – надо уметь руками что-то делать, а не кнопочки нажимать

Alexey
07.12.2017
14:47:33

Google

Kamil
07.12.2017
14:50:30

Dmitry
07.12.2017
14:52:23
если всё что надо - это стектрейс в алерты слать, то можно локальными скриптами по тем же каналам связи их слать параллельно с заббиксом, разница будет небольшая
так что надо решить, сильно ли надо иметь их именно в заббиксе. В целях хранения истории инцидентов, к примеру
можно написать демон, который будет делать "tail -F". Можно вызывать периодически, запоминая позицию в логе. Вариантов много


Alexey
07.12.2017
14:54:54
нет, мне не обязательно хранить историю, история хранится в том же самом телеграмме к примеру если туда их слать. задача просто найти фатал взять его стектрейс и отправить. судя по всем заббиксмо не получится. в самом деле проще будет сделать локальными скриптами

Dmitry
07.12.2017
14:56:57
стоит сперва погуглить, 99% что готовый вариант найдётся легко)

Kolunchik
07.12.2017
14:57:21
Если записей не так чтоб много и используется rsyslog, то он много чего умеет сам.

Alexey
07.12.2017
14:59:16

Ilya
07.12.2017
16:10:41

0_о
07.12.2017
16:16:18
Привет. Получилось?
Да получилось
Вроде все ок
Проблема только в том, чтобы передавать параметр PS скрипту в юзерпараметр прототипа айтема в ковычках (‘$1’)

0_о
07.12.2017
16:16:32
Но думаю нагуглю решение

Ilya
07.12.2017
16:16:46
Ok, спасибо, буду иметь в виду ?

0_о
07.12.2017
16:17:48
@ableev

Ilya
07.12.2017
16:18:20
Спасибо
У меня не ругается ни на что – молча жрёт данные

0_о
07.12.2017
16:18:57
Прототип создал?

Google

Ilya
07.12.2017
16:18:59
И ещё есть проблема, что любой может, зная ключ, снести дискавери ?

Anton
07.12.2017
17:15:17

Александр
07.12.2017
17:21:03
Про троллейбус из хлеба уже шутили?

Евгений
07.12.2017
17:24:13

Anton
07.12.2017
17:29:20
Про троллейбус из хлеба уже шутили?
иногда троллейбус из хлеба - самое невинное, что может соорудить человек, волею судьбы занесённый в данный чат. это из наблюдений. серьёзно.

Ilya
07.12.2017
17:51:09

Admin
ERROR: S client not available

Ilya
07.12.2017
17:51:13
Это даунтайм

Некто
07.12.2017
18:00:28
Так в пределах keep lost items, они должны опрашиваться невзирая на то, что в lld прилетело, разве нет?

Anton
07.12.2017
18:07:16
Нормальная тема, только заббиксу нужно время на синк данных
это да. была у меня откуда-то инфа, что фронт научился обновлять конфигурацию сервера в рилтайме. при беглом просмотре не нашёл такого в коде. видать приснилось.
в любом случае минута в дефолтной конфигурации не столь большой крюк ) для бешеной-то собаки

Realmagnum Alex
07.12.2017
20:02:44
есть заббикс на работе. хочу туда добавить проверку на доступность(пинг) парочки камер в домашней сетке. и там, и там свои наты. кроме впн и тоннеля, и кроме заббикс-прокси есть еще варианты решения задачи?

Ivan
07.12.2017
20:04:12

Ilya
07.12.2017
20:07:40

Realmagnum Alex
07.12.2017
20:10:44
для протокола icmp указание порта в микроте недоступно.
делать проброс как tcp?

Ilya
07.12.2017
20:18:52
Ну у камер ведь очевидно есть какой-то tcp порт

John
07.12.2017
20:26:54
А на сколько умные камеры? Может они по снмп общаться умеют?
Вообще если инет упадёт это не будет значить, что камеры не работают. Так что вопрос интересный

Google

Evgenia
07.12.2017
20:32:02
Ну так можно отдельно мониторить доступность инета как такового, и слделать зависимости триггеров

Oleg
07.12.2017
20:45:53
Не пробрасывай порты камер в интернет пожалуйста) Уязвимости в ПО находят каждый день, а на камерах по почти не обновляется. Если пробросишь, зафайрволь хотя бы.

Alexander
07.12.2017
20:52:11

Oleg
07.12.2017
20:52:17
Если есть какая-нибудь железка, на которую заббикс агент поставится, можно ее наружу портом заббикса выставить и с нее уже любой скрипт для мониторинга чего угодно запускать. И даже чайник включать через 10 минут после того как ты с работы вышел и ноут закрыл.
Если чайник с вайфаем, конечно.

Taz
07.12.2017
20:53:38

Oleg
07.12.2017
20:55:55

Alexander
07.12.2017
20:56:41

Vitalii
07.12.2017
20:57:56
Читал такое мнение, что OSI сама по себе - сферический конь в вакууме. Мне эта мысль нравится

Oleg
07.12.2017
21:00:49
То есть на втором?

Ilya
07.12.2017
21:01:11
То есть не на первом и третьем

Alexander
07.12.2017
21:02:01
Но мой ответ неверный :)

Ilya
07.12.2017
21:02:08
Я вообще не отвечал!

Oleg
07.12.2017
21:02:24
Да, но в процессе работы оно обменивается udp пакетами со вполне конкретным портом.

Alexander
07.12.2017
21:05:14
Да, тупанул из-за широковещательных сообщений, клиент просто адрес 0.0.0.0 и 255.255.255.255 ставит.
В wireshark'е это очень похоже на ARP выглядит.

Паша
07.12.2017
21:13:59

Oleg
07.12.2017
21:14:04
Ну да, похоже на то, что протокол сочетает в себе подходы из разных уровней.

Realmagnum Alex
07.12.2017
21:23:52


Геннадий
07.12.2017
21:26:06
Доброй ночки. Парни подскажите кто в теме. Сервак с виртуалками, на нём стоит прокси. После перезагрузки сервака прокси перестал отдавать данные на две виртуалки, на остальные нормал. Убрал прокси у хостов - напрямую всё ок. Включил дебаг на прокси, ничего особо не нашёл. Залез в базу на прокси, а там в табличке hosts напротив этих двух поле disable_until не 0 как у всех, а какое-то безумное. База sqlite.
Базу стёр, ребутнул сервис, создалась новая, данные от сервера подтянулись и всё ок стало. Сейчас всё норм, но осадочек остался. Ну теперь вечный вопрос, WTF???