Настройки ведения статистики


Секция stat (настройка статистики)

Для генерации статистики предназначен исполняемый файл /usr/local/ucfp/bin/genstat

Параметры этой секции:

dir = foldername Папка для хранения файлов статистики.
Default: /usr/local/ucfp/stat

cols = filename Файл с описанием колонок статистики.
Default: /usr/local/ucfp/etc/stat

rows = ip/login значение строк статистики, ip - IP-адрес клиента, login - логин клиента.
Default: ip

count_cache = yes/no Считать в статистике трафик из кэша от следующего за UCFP прокси. Актуален для схем работы № 2,4,6.
Default: no

html = yes/no Статистические данные представляются в формате html.
Default: yes

Описание категорий трафика (колонок статиcтики) задается в файле, указанном в конфигурационном файле, в секции [ucfp.stat], параметр cols (по умолчанию /usr/local/ucfp/etc/stat)

Описания категорий трафика задаются в формате "параметр = значение;". Завершающий символ ";" обязателен. Перечисление значений указывается через знак ",".

Общие принципы описания категорий трафика:

  1. Описания категории трафика начинается с параметра name

  2. Перечисление параметров возможно как в одну строку, так и в несколько

  3. В описании категории трафика обязательным является только параметр name

  4. При определении категорий трафика можно использовать следующие параметры:

    name = имя категории трафика (латинские буквы без пробелов);
    urls = список серверов для данной категории трафика (в качестве значений для объектов данного типа можно так же указывать описание подсети в формате x.x.x.x/x или диапазон IP-адресов в формате x.x.x.x-x.x.x.x)
    price = число, означающее стоимость 1Мб трафика для данной категории;
    comment = комментарий (строка без каких-либо ограничений);

  5. При определении значения параметра urls допустимо использование объектов типа urls в формате $object_name, где object_name - значение параметра name объекта.

  6. При пустом файле с описанием категорий статистика не ведется.

  7. Прохождение описаний категорий трафика осуществляется сверху вниз, до первого удовлетворения параметров запроса определенной категории.

  8. Заголовком колонок статистики является значение параметра comment (если параметр comment не задан, то значение параметра name) из описания категории трафика.

  9. При формировании колонки client происходит поиск объектов типа clients или logins с value равным значению строки статистики. Если такой объект найден, то вместо IP-адреса или логина в статистике указывается значение поля comment объекта.

  10. Стоимость трафика данной категории указывается в скобках после объема.

Пример:

Имеются следующие объекты (файл /usr/local/ucfp/etc/objects):

name = ip01; type = clients; value = 10.0.0.1; comment = Директор;
name = ip02; type = clients; value = 10.0.0.2; comment = Василий Пупкин;
name = ip04; type = clients; value = 10.0.0.4; comment = Федор Сумкин;

Конфигурационный файл config, секция [ucfp.stat]

dir = /usr/local/ucfp/stat
cols = /usr/local/ucfp/etc/stat
rows = ip
html = no

Описание категорий трафика (файл /usr/local/ucfp/etc/stat):

name = isp;
urls = my_provider.ru;
price = 0.01;
comment = Провайдер;
name = in;
urls = 222.222.222.0/19;
price = 0.2;
comment = Городской;
name = all;
price = 2;
comment = Внешний;

Статистика за определенный промежуток будет выглядеть следующим образом:

Провайдер
Городской
Внешний
Всего
Директор
42 (0.42)
20 (4.00)
10 (20.00)
72 (24.42)
Василий Пупкин
10 (0.10)
10 (2.00)
15 (30.00)
35 (32.10)
10.0.0.3
30 (0.30)
15 (3.00)
18 (36.00)
63 (39.30)
Федор Сумкин
58 (0.58)
25 (5.00)
32 (64.00)
115 (69.58)
Всего
140 (1.40)
70 (14.00)
75 (150.00)
285 (165.40)

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

name = all; price = 2; comment = Внешний;
name = isp; urls = my_provider.ru; price = 0.01; comment = Провайдер;
name = in; urls = 222.222.222.0/19; price = 0.2; comment = Городской;

весь трафик будет принадлежать категории all (внешний).