Задать вопрос
@MaxxxZ

Как создать собственный счётчик сообщений?

У меня в системе syslog-ng отправляет сообщения, полученные на порту syslog в pipe, а из pipe их читает скрипт, производящий дальнейшую обработку.
Всё работает хорошо, но иногда на сервер падает пачка сообщений, которая не помещается в pipe и часть теряется. В целом, ничего страшного в этом нет, но хотелось бы знать о таких моментах. Самое простое, что приходит на ум - нумеровать все сообщения при размещении в pipe и в скрипте проверять, нет ли в последовательности дыр.

Однако, не понятно как это реализовать. Есть макрос ${RCPTID}, который нумерует сообщения. Но проблема в том, что он нумерует их для всех источников в системе, обрабатываемых syslog-ng. Т.е. в номерах образуются дыры: 456, 473, 489 и т.д.

Вопрос: можно ли внедрить монотонно возрастающий (до рестарта сервиса) счётчик сообщений для конкретно destination или заставить ${RCPID} считать только в пределах destination?

Макросы в template вроде получается использовать и даже доставать переменные. Не разобрался как инкрементировать переменные при поступлении пакета.
  • Вопрос задан
  • 27 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    1C-программист: расширенный курс
    18 месяцев
    Далее
  • Академия Эдюсон
    Python-разработчик + ИИ
    9 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по информационной безопасности + ИИ
    9 месяцев
    Далее
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы