Для "ручной правки" вас интересуют файлы *.sql в каталоге: Eserv3\script\control\wwwroot\reports\data\stat\
Где уже "фильтр навешивайте" согласно синтаксису SQL.
Например для Traffic.sql
select CLIENT_IP AS IP, COUNT(CLIENT_IP) AS CNT, SUM(CLIENT_READ) as RS, SUM(CLIENT_WRITE) as WS, SUM(OTHER_READ) as ORS, SUM(OTHER_WRITE) as OWS
from [{y}{m}stat.txt]
group by CLIENT_IP
order by SUM(CLIENT_WRITE)+SUM(CLIENT_READ) desc
select CLIENT_IP AS IP, COUNT(CLIENT_IP) AS CNT, SUM(CLIENT_READ) as RS, SUM(CLIENT_WRITE) as WS, SUM(OTHER_READ) as ORS, SUM(OTHER_WRITE) as OWS
from [{y}{m}stat.txt]
where CLIENT_IP like 'AA.BB.CC.DD'
group by CLIENT_IP
order by SUM(CLIENT_WRITE)+SUM(CLIENT_READ) desc
А писать целевой IP в статистику — это посложнее будет, лог там общий для всех серверов, а "вторая сторона" есть только у прокси.
Нет, не пойдёт так. Теоретически, в рамках одной клиентской сессии могут быть коннекты к разным целям, Eproxy это допускает. А если на это ещё каскадирование наложится, да неустойчивый коннект к каскаду (с переключением на прямой маршрут)...
В общем, это не та статистика, которая вас интересует.
но тогда статистика по другим клиентским IP писаться вообще не будет... наверно будет правильней создать дубликат лога 450 в commonplugins\log.str.txt добавив в него нужное поле т.е.
Что-то где-то рядом.
Только с sql у меня неважно...
selectUSER, SUM(OTHER_READ) as ORS, SUM(OTHER_WRITE) as OWS from [{y}{m}proxy.txt] where FROM-HOST like '{ip}' group by USER order by SUM(OTHER_WRITE)+SUM(OTHER_READ) desc
в браузере пишу: localhost:3140/reports/stat/UserTrafficNEW.html?ip=209.85.135.103&m=02&y=2008
а в итоге...
[Microsoft][Драйвер ODBC Текст] Слишком мало параметров. Требуется 2.
в schema.ini уже добавил.
[200802proxy.txt]
...
Col3=FROM-HOST Char Width 255
...
Опа!
А разве smtp трафик не идет в статистику?
Пришло 30мб почты, ушло 10мб. Ни у одного user`а ничего не появилось...
Причем в бывшей статистике usertraffic тоже внешний трафик входящий и исходящий по нулям...
Там нет деления на внешний и внутренний. Там есть деление на клиентскую сторону и сторону цели. Сторона цели есть только у прокси. Ну, и ещё у FTP туда попадает трафик канала данных.
pig пишет: 1. Да. Пишется на того, кто письмо на сервер запихал. Кому — это надо статистику доставки смотреть.
Трафик агента сюда вообще не попадает. У агента свой собственный лог и свой собственнй отчёт.
Дописал еще чтобы в MMYYYYproxy.txt писалась статистика SMTP. Теперь smtp трафик пишется на того, кому почта в ящик была положена (по размеру письма).
А трафик пользователя "-" остался только тот, от кого smtp сервер письмо не пропустил (blacklist итп).
Теперь всё Ок!
Спасибо за помощь!
Да, именно этот отчет.
Я правильно понял, что просто некуда написать что-то типа
IF TARGET_IP=81.* THEN
статистику не писать ...
Sorry, синтаксисом eserv не владею.
С удовольствием бы.
Но затраты даже в 1руб надо так долго согласовывать...
Для "ручной правки" вас интересуют файлы *.sql в каталоге: Eserv3\script\control\wwwroot\reports\data\stat\
Где уже "фильтр навешивайте" согласно синтаксису SQL.
Например для Traffic.sql
фильтр по конкретному IP будет примерно так:
а вы попробуйте закажите ключик (на полугодичный триал выпишем без проблем). Авось понравится и вам и начальству
Но это же будет не TARGET, а CLIENT_IP...
А TARGET_IP, как я понимаю в {m}{y}stat.txt вообще не пишется.
Поэтому я и спрашивал, как вообще не писать в stat.txt строку, если TARGET_IP=АА.BB.CC.DD
А может быть возможно добавить целевой ip в stat.txt?
Тогда и фильтр на sql можно будет прикрутить
А писать целевой IP в статистику — это посложнее будет, лог там общий для всех серверов, а "вторая сторона" есть только у прокси.
Нет, не пойдёт так. Теоретически, в рамках одной клиентской сессии могут быть коннекты к разным целям, Eproxy это допускает. А если на это ещё каскадирование наложится, да неустойчивый коннект к каскаду (с переключением на прямой маршрут)...
В общем, это не та статистика, которая вас интересует.
но тогда статистика по другим клиентским IP писаться вообще не будет... наверно будет правильней создать дубликат лога 450 в commonplugins\log.str.txt добавив в него нужное поле т.е.
в Eproxy\conf\OnDisconnect.rules.txt добавить в конец:
добавить в \Eserv3\DATA\log\stat\schema.ini секцию:
и создать новый отчет аналогичный Traffic.sql только с:
Под номер строки отведено строго шесть знаков. Ну, и имя файла чтобы соответствовало записи в схеме.
Да, верно, у меня сразу не получилось.
Я написал "4501 ". остальное сейчас проверяю...
... и proxyEx.txt сразу не воткнулось — подправил на proxy.txt
Только с sql у меня неважно...
select USER, SUM(OTHER_READ) as ORS, SUM(OTHER_WRITE) as OWS from [{y}{m}proxy.txt] where FROM-HOST like '{ip}' group by USER order by SUM(OTHER_WRITE)+SUM(OTHER_READ) desc
в браузере пишу: localhost:3140/reports/stat/UserTrafficNEW.html?ip=209.85.135.103&m=02&y=2008
а в итоге...
[Microsoft][Драйвер ODBC Текст] Слишком мало параметров. Требуется 2.
в schema.ini уже добавил.
[200802proxy.txt]
...
Col3=FROM-HOST Char Width 255
...
Попробуйте заменить FROM-HOST на FROM_HOST везде кроме log.str.txt
Так и было 8O
Всё получилось
Теперь, чтобы нужные ип не включались в статистику можно, как я понимаю просто добавить их в запрос sql
сейчас попробую
Всё работает как надо!
Спасибо Dandy, cпасибо Pig!
2 Dandy: MStat обещаю посмотреть
А разве smtp трафик не идет в статистику?
Пришло 30мб почты, ушло 10мб. Ни у одного user`а ничего не появилось...
Причем в бывшей статистике usertraffic тоже внешний трафик входящий и исходящий по нулям...
Я правильно в таком случае понимаю:
А трафик пользователя "-" остался только тот, от кого smtp сервер письмо не пропустил (blacklist итп).
Теперь всё Ок!
Спасибо за помощь!