Документация NetAMS (Автор) - страница 24

• notify {при_условии} {кого}

• Определяет, кому будут отсылаться почтовые сообщения о наступлении событий, связанных с данным юнитом.

• Условие ({при_условии}) - это одно из событий:

• soft — произошло переполнение «мягкой» квоты. Необходимо предупредить пользователя, не отключая его.

• hard — произошло переполнение «жесткой» квоты. Необходимо предупредить пользователя о том, что он отключен, и отключить его.

• return — по прошествии времени (например, начался новый месяц) пользователь должен быть включен и оповещен об этом.

• Получатель ({кого}) - персона, которую оповещать. Оповещены о наступлении события могут быть и/или собственно владелец юнита (при условии что юнит имеет тип user и для него установлен параметр email), а также один из заведенных в программе пользователей (user), например сам администратор сети. Возможные значения:

• {owner} - владелец юнита

• username — имя или OID пользователя (администратора).

Примеры (предположим ранее определено user name admin email root@localhost ):

notify soft {owner}

notify hard {owner} admin

notify return admin

• [hour … ], [day …], [week …], [month …]

• Задает значения квот на период времени. Формат:

• time_spec amount {in|out|sum},

• где timespec={hour|day|week|month}, amount — значение квоты (в байтах, но можно использовать модификаторы K, M, G), {in|out} - направление квотируемого трафика, {sum} - суммарный трафик (в обоих направлениях). Если необходимо сбросить значение квоты для определённого направления, то надо задать её равной 0. Например:

set name user1 month 0 in

В этом случае будет сброшена месячная квота на входящий трафик.

Значения параметров по умолчанию можно поменять в соответствующей секции файла src/netams.h и последующей полной пересборкой программы (make clean; make). Ниже приведен их список:

#define S_QUOTA_DEF_soft_treshold 80

#define S_QUOTA_DEF_delay 10

#define S_QUOTA_DEF_notify_soft 1

#define S_QUOTA_DEF_notify_hard 1

#define S_QUOTA_DEF_notify_return 1

Исполнение команд вида set … приводят к модификации внутренних структур программы (точнее, заполнению полей структуры u->quotadata юнита u), а также к модификации таблицы quota текущей указанной SQL–базы данных. Как обычно, если такой таблицы не существует, она создается автоматически при первом запуске. Формат таблицы можно посмотреть через вызов команды mysqlshow netams quota. Не пытайтесь редактировать SQL–таблицу quota извне своими программами. Все записи должны вноситься скриптами или вручную через telnet–интерфейс программы (команда set).

Ниже приведен пример применения сервиса контроля квот для небольшой сети. Постановка задачи следующая: