Запись счетчиков в базу данных

Эта опция протоколирования позволяет записывать показания счетчиков фильтров в базу данных что делает возможным постоение гибкой системы учета трафика Ваших пользователей. Для использование данной опции Вы должны:

Алгоритм записи счетчиков в базу данных

  1. Вычисляется значение поля ts (timestamp) исходя из: 1) заданного пользователем Сэмпл-Интервала; 2) на основании показаний системных часов. Например, если текущее время 09:49, дата - 22 августа 2003 года, то
     
    Сэмпл-Интервал Значение поля ts (формат ymmddhhmi)
    1 минута 308220949
    5 минут 308220945
    15 минут 308220945
    30 минут 308220930
    1 час 308220900
    2 часа 308220800
    1 день 308220000

     
  2. Из базы данных считываются "предыдущие" показания счетчиков путем выполнения команды "select * from traffic_table where ts=Вычисленное значение поля ts"
  3. К полученным "предыдущим" показаниям счетчиков (если таковые имеются) добавляются значения счетчиков за прошедший интервал времени
  4. Новые значения счетчиков записываются в базу данных на место "предыдущих" показаний. Если "предыдущие" показания отсутствуют, создаются новые записи в таблице

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