Перейти к содержимому
Калькуляторы

Мониторинг СКАТ шаблоны и прочее

В 15.10.2018 в 06:09, VolanD666 сказал:

А у кого не заббкс, тем как мониторить? Я понимаю что можно запилить snmpd чтобы он отдавал это все, но как-то хочется из коробки. Плюс чтобы трапы былы, например, что скат не смог обновить списк РКН и т.п.

здесь вы вряд ли найдете ответ, пишити в саппорт.

Большая контора, много народу, а элементарные вопросы не отслеживаются.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

У СКАТа интересная система ротации логов, на которые натравливается шаблон.

"

- Ошибки в логах процесса fastdpi /var/log/dpi/fastdpi_alert.log

- Ошибки в системном логе /var/log/messages

"

Похоже, что СКАТ их не пересоздаёт, как нормальный логротейт, а переносит данные построчно в новый файл, вычищая старый.

Заббикс на это реагирует соответствующе (выдержка из мануала):

"Всякий раз, когда файл журнала становится меньше, чем значение счетчика размера известное агенту, счетчик обнуляется и агент начинает читать файл журнала с самого начала, принимая во внимание счетчик времени. "

 

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

И такая дребедень - каждый день.

 

И что делать с этим - непонятно.

Попробую увеличить интервал опроса этих файлов на сегодня.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Есть ли обновленная версия шаблона для последней версии dpi (11.3) и zabbix (6.0)? Если нет, то какой шаблон лучше всего использовать для мониторинга?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Мне тоже интересно, но тема похоже мертвая

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Я не нашел лучшего варианта, чем стандартный шаблон для Linux.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Интересно, а кто-нибудь прикручивал к СКАТУ какую-нибудь приблуду внутри, чтобы можно было собирать дату по абонентам?

Понятно, что такое можно дергать Питоном с модулем scrapli, забирая каждый раз всю таблицу абонентов командой "fdpi_cli -r 127.0.0.1 pppoe show sessions all". Потом все это парсится и я забираю соответствие логина и МАКа пользовательского роутера.

Но такое не хотелось бы постоянно дергать с помощью secureshell. Хочется, чтобы локально на СКАТе такое делалось раз в три минуты, и закидывалось в REDIS. И чтобы был демон на том же Go, который по запросу будет отдавать вышеописанное при http запросе к этому демону, вытаскивая данные из REDIS.

Кто-нибудь пытался такое реализовать у себя?

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Всем привет, простой zabbix template для мониторинга интерфейсов исходя из логов /var/log/dpi/fastdpi_stat.log.


1. Импортируем template 

fastdpi_template.yaml
 

Spoiler

zabbix_export:
  version: '6.0'
  date: '2024-02-14T13:20:29Z'
  groups:
    -
      uuid: dc579cd7a1a34222933f24f52a68bcd8
      name: 'Linux servers'
  templates:
    -
      uuid: 0d511dd52d834cb899ccbe1241d15469
      template: 'Template FastDPI'
      name: 'Template FastDPI'
      groups:
        -
          name: 'Linux servers'
      discovery_rules:
        -
          uuid: 4274b8cc1efb4af599f6e4bf07103fc5
          name: 'Interface Discovery'
          key: ifdiscovery
          delay: 1h
          item_prototypes:
            -
              uuid: 6d6f1db70f10435b9d9d1fd17bacb989
              name: '{#INTERFACE}: Bad packet received'
              key: 'interface.error[{#INTERFACE}, bad_pkt]'
              delay: 5m
              units: pkts
              preprocessing:
                -
                  type: CHANGE_PER_SECOND
                  parameters:
                    - ''
              tags:
                -
                  tag: Application
                  value: DPI
            -
              uuid: e17367e7166c4cd39bfcab710946d38b
              name: '{#INTERFACE}: RX no memory buffer'
              key: 'interface.error[{#INTERFACE}, rx_nombuf]'
              delay: 5m
              units: pkts
              preprocessing:
                -
                  type: CHANGE_PER_SECOND
                  parameters:
                    - ''
              tags:
                -
                  tag: Application
                  value: DPI
            -
              uuid: f934c4e5f47d45a4a16bb59d98b21af6
              name: '{#INTERFACE}: RX queue full'
              key: 'interface.error[{#INTERFACE}, rx_queue_full]'
              delay: 5m
              units: pkts
              preprocessing:
                -
                  type: CHANGE_PER_SECOND
                  parameters:
                    - ''
              tags:
                -
                  tag: Application
                  value: DPI
            -
              uuid: faa5a73d9a934d3ca79e0af9c1cbcb34
              name: '{#INTERFACE}: TX fail'
              key: 'interface.error[{#INTERFACE}, tx_fail]'
              delay: 5m
              units: pkts
              preprocessing:
                -
                  type: CHANGE_PER_SECOND
                  parameters:
                    - ''
              tags:
                -
                  tag: Application
                  value: DPI
            -
              uuid: 27a1b485f83f401490fb838f3c1069fc
              name: '{#INTERFACE}: Bits received'
              key: 'interface.get[{#INTERFACE}, RX]'
              delay: 5m
              units: bits
              preprocessing:
                -
                  type: CHANGE_PER_SECOND
                  parameters:
                    - ''
                -
                  type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                -
                  tag: Application
                  value: DPI
            -
              uuid: ccbe639d2740484392f9f27220f71269
              name: '{#INTERFACE}: Bits send'
              key: 'interface.get[{#INTERFACE}, TX]'
              delay: 5m
              units: bps
              preprocessing:
                -
                  type: CHANGE_PER_SECOND
                  parameters:
                    - ''
                -
                  type: MULTIPLIER
                  parameters:
                    - '8'
              tags:
                -
                  tag: Application
                  value: DPI
          graph_prototypes:
            -
              uuid: 763a7399329f4bcf84b5b03b84e23e5d
              name: 'Traffic {#INTERFACE}'
              graph_items:
                -
                  drawtype: GRADIENT_LINE
                  color: 1A7C11
                  calc_fnc: ALL
                  item:
                    host: 'Template FastDPI'
                    key: 'interface.get[{#INTERFACE}, RX]'
                -
                  sortorder: '1'
                  drawtype: BOLD_LINE
                  color: 2774A4
                  calc_fnc: ALL
                  item:
                    host: 'Template FastDPI'
                    key: 'interface.get[{#INTERFACE}, TX]'
                -
                  sortorder: '2'
                  color: FC6EA3
                  yaxisside: RIGHT
                  calc_fnc: ALL
                  item:
                    host: 'Template FastDPI'
                    key: 'interface.error[{#INTERFACE}, bad_pkt]'
                -
                  sortorder: '3'
                  color: A54F10
                  yaxisside: RIGHT
                  calc_fnc: ALL
                  item:
                    host: 'Template FastDPI'
                    key: 'interface.error[{#INTERFACE}, rx_nombuf]'
                -
                  sortorder: '4'
                  color: F63100
                  yaxisside: RIGHT
                  calc_fnc: ALL
                  item:
                    host: 'Template FastDPI'
                    key: 'interface.error[{#INTERFACE}, rx_queue_full]'
                -
                  sortorder: '5'
                  color: 6C59DC
                  yaxisside: RIGHT
                  calc_fnc: ALL
                  item:
                    host: 'Template FastDPI'
                    key: 'interface.error[{#INTERFACE}, tx_fail]'

 



2. Создаем конфигурацию для zabbix_agent

/etc/zabbix/zabbix_agentd.d/fastdpi.conf
 

Spoiler

# Interfaces list
UserParameter=ifdiscovery,/opt/zbx_fastdpi/interface-list.sh

# RX TX Rates
UserParameter=interface.get[*],/opt/zbx_fastdpi/interface-stats.sh $1 $2

# Errors
UserParameter=interface.error[*],/opt/zbx_fastdpi/interface-errors.sh $1 $2


 

3. Создаём папку zbx_fastdpi в дериктории /opt/ помещаем туда скрипты 🙂

 interface-list.sh
 

Spoiler

#!/usr/bin/env bash
 

INTERFACES=$(tac /var/log/dpi/fastdpi_stat.log | sed /'Memory usage'/q | tac | grep -B 3 -P "Error" | grep dev | awk '{print $2}' | sort -u)

LAST_ITEM=$(echo $INTERFACES | awk '{print $NF}')

echo "["

for IF in $INTERFACES; do
    if [ $IF == $LAST_ITEM ]; then
        echo "{\"{#INTERFACE}\": \"$IF\"}"
    else
        echo "{\"{#INTERFACE}\": \"$IF\"},"
    fi

done

echo "]"

 

interface-stats.sh
 

Spoiler

tac /var/log/dpi/fastdpi_stat.log | sed /'Memory usage'/q | tac | grep -P -B 3 -A 3 'RX pkt' | grep $1 -A 3 | head -3 | grep $2 | awk '{print $5}' | sed -e 's/\// /g' | awk '{print $2}'


interface-errors.sh
 

Spoiler

#!/usr/bin/env bash

PATTERN="(?<=$2=)\d+"

tac /var/log/dpi/fastdpi_stat.log | sed /'Memory usage'/q | tac | grep -B 3 -P Error | grep -A 3 $1 | grep -Po $PATTERN

 

fastdpi_template

Изменено пользователем v.mazurenko

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Норм. Мне всё лень нормальный мониторинг НАТа сделать, да и разработчики меняют метрики - какие были важные (свободные порты), теперь ознакомительные (переиспользуются), а важные в новой версии другие...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 смайлов.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.