PDA

Показать полную графическую версию : sarg+squid формирование статистики в автоматическом режиме


Anatoliy2004
14-09-2009, 17:22
Всем привет
стоит ubuntu server 9.04. Стоит на нём squid+ прикручена статистика по нём sarg

вроде все настроил правильно, тоесть при выполнении команды. sarg-report today все проходит нормально, статистику я вижу,
также настроил через cron и автоматическую генерацию отчетности

И вот вопрос:

в папке var\www\squid-reports есть куча папок с датой за каждый день!!!! а в папке daily етих папок нету(есть только те, которые я генерил вручную командой sarg-report today).. В чем может быть проблема?????????
Тоесть как бы статистика автоматом генерится... но она заливается не туда куда нужно . как я понял......И в итоге смотреть ее нету возможности..

Помогите!!!! Спасите...!!!

Зарание благодарен!!!

WhitePangolin
14-09-2009, 17:34
Я конечно не уверен. Но когда то такая похожая трабла была с LightSquid'ом, но я там немного ротацию логов не учел. Может у вас также?

Anatoliy2004
14-09-2009, 17:42
WhitePangolin,
может а как ее сделать???Помогите...

Anatoliy2004
14-09-2009, 18:01
root@proxy:/# run-parts --list /etc/cron.daily
/etc/cron.daily/apache2
/etc/cron.daily/apport
/etc/cron.daily/apt
/etc/cron.daily/aptitude
/etc/cron.daily/bsdmainutils
/etc/cron.daily/logrotate
/etc/cron.daily/man-db
/etc/cron.daily/mlocate
/etc/cron.daily/popularity-contest
/etc/cron.daily/samba
/etc/cron.daily/sarg
/etc/cron.daily/standard
/etc/cron.daily/sysklogd
root@proxy:/#

файл
etc/logrotate.d/squid

#
# Logrotate fragment for squid.
#
/var/log/squid/*.log {
daily
compress
delaycompress
rotate 2
missingok
nocreate
sharedscripts
prerotate
test ! -x /usr/sbin/sarg-reports || /usr/sbin/sarg-reports
endscript
postrotate
test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
endscript
}

Anatoliy2004
16-09-2009, 10:46
все работает
что я делал???
Итак
команда
crontab -u root -e
и заменил все строки на:

* 08-18/1 * * * /usr/sbin/sarg-reports today
* 00 * * * /usr/sbin/sarg-reports daily
* 01 * * 1 /usr/sbin/sarg-reports weekly
* 02 1 * * /usr/sbin/sarg-reports monthly

Anatoliy2004
16-09-2009, 22:17
блин опять не работает!!!
выкладываю файл var/log/syslog


когда работал то писало:

Sep 16 18:53:01 proxy /USR/SBIN/CRON[12867]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 16 18:54:01 proxy /USR/SBIN/CRON[13258]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 16 18:55:01 proxy /USR/SBIN/CRON[13649]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 16 18:56:01 proxy /USR/SBIN/CRON[14041]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 16 18:57:01 proxy /USR/SBIN/CRON[14433]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 16 18:58:02 proxy /USR/SBIN/CRON[14826]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 16 18:59:01 proxy /USR/SBIN/CRON[15391]: (root) CMD (/usr/sbin/sarg-reports today)


а теперь пишет


Sep 16 21:00:01 proxy /USR/SBIN/CRON[3065]: (root) CMD ([ -x /usr/sbin/update-motd ] && /usr/sbin/update-motd 2>/dev/null)
Sep 16 21:00:01 proxy /USR/SBIN/CRON[3067]: (root) CMD ([ -x /usr/sbin/update-motd ] && /usr/sbin/update-motd hourly 2>/dev/null)
Sep 16 21:09:01 proxy /USR/SBIN/CRON[3337]: (root) CMD ( [ -x /usr/lib/php5/maxlifetime ] && [ -d /var/lib/php5 ] && find /var/lib/php5/ -type f -cmin +$(/usr/lib/php5/maxlifetime) -print0 | xargs -n 200 -r -0 rm)
Sep 16 21:10:01 proxy /USR/SBIN/CRON[3394]: (root) CMD ([ -x /usr/sbin/update-motd ] && /usr/sbin/update-motd 2>/dev/null)



что можете сказать???

WhitePangolin
17-09-2009, 07:59
Эм... во-первых, могу сказать, что у вам не жалко машину и у вас очень требовательные пользователи, раз уж вы sarg-reports раз в минуту заводите. Ну а во-вторых... фиг его знает что у вас там не работает, однако, не думаю что:[ -x /usr/sbin/update-motd ] && /usr/sbin/update-motd 2>/dev/null »
имеет к саргу отношение :)

Смотрите:
В течение рабочего дня (с 8 до 18 часов) вы мучаете машинку заставляя ее каждую минуту командой /usr/sbin/sarg-reports today формировать статистику. Далее в 00 часов у вас происходит ротация лога сквида и он у вас становится девственно чистым. Сразу после этого вы запускаете /usr/sbin/sarg-reports daily который создает папку для даты, но так как данных нет (access.log то теперь пустой), в папку ничего не ложится. В итоге имеем то что имеем: стата существует только в пределах текущего рабочего дня.

Anatoliy2004
17-09-2009, 10:34
нет статистика только для меня!!!!
тогда подскажите что делать!!!???
с всего выше описаного я понял одно.
1)убрать сарг репорт тудей каждой минуты!!!
2)потом сргрепорт дайли установить перед ротацией лога!!

так или нет???

но скажу чесно пришол утром на работу вся статистика на месте!!! все работает

также статистика формируется каждую минуту!!!

Sep 17 09:30:01 proxy /USR/SBIN/CRON[4773]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 17 09:31:01 proxy /USR/SBIN/CRON[5327]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 17 09:32:01 proxy /USR/SBIN/CRON[5670]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 17 09:33:01 proxy /USR/SBIN/CRON[6013]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 17 09:34:01 proxy /USR/SBIN/CRON[6356]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 17 09:35:01 proxy /USR/SBIN/CRON[6707]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 17 09:36:01 proxy /USR/SBIN/CRON[7058]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 17 09:37:01 proxy /USR/SBIN/CRON[7411]: (root) CMD (/usr/sbin/sarg-reports today)

WhitePangolin
17-09-2009, 10:36
Думаю да. А завтра проверим :)

Anatoliy2004
17-09-2009, 10:40
WhitePangolin,
как сделать чтоб sarg-reports today отрабатывал не каждую минуту а например каждый час !!!

WhitePangolin
17-09-2009, 11:53
0 08-18 * * * /usr/sbin/sarg-reports today

Anatoliy2004
17-09-2009, 12:43
WhitePangolin, сделал!!!! посмотрим что будет!!! надо ли что нибуть ребутить???

наверное надо :)

Sep 17 11:42:08 proxy crontab[24794]: (root) BEGIN EDIT (root)
Sep 17 11:42:32 proxy crontab[24794]: (root) REPLACE (root)
Sep 17 11:42:32 proxy crontab[24794]: (root) END EDIT (root)
Sep 17 11:43:01 proxy /usr/sbin/cron[3001]: (root) RELOAD (crontabs/root)
Sep 17 11:43:02 proxy /USR/SBIN/CRON[25128]: (root) CMD (/usr/sbin/sarg-reports today)
Sep 17 11:44:01 proxy /USR/SBIN/CRON[25510]: (root) CMD (/usr/sbin/sarg-reports today)

Anatoliy2004
17-09-2009, 23:33
вс теперь я все понял , даже с самого себя смешно :lol: * 08-18/1 * * * /usr/sbin/sarg-reports today »

репорт у меня делался с 8 до 18 часов а дальше не делался...я думал что сарг сдох


теперь перенастроил на запуск каждые 10 минут с 8 до 23
* 08-23/10 * * * /usr/sbin/sarg-reports today

и все

еще раз спасибо!

dmitryst
18-09-2009, 14:25
перенастроил на запуск каждые 10 минут »
а зачем каждые 10 минут-то? У меня статистика берется раз в час, чаще, ИМХО, и не нужно :)

Anatoliy2004
18-09-2009, 17:00
dmitryst,
выложите плиз свой
crontab -u root -e

Anatoliy2004
21-09-2009, 11:54
итак вылезла следующая проблема:
при формировании отчета за целую неделю туда попадают даные только за последний день :(
где копать подскажите!!!я так понял что команда отрабатывает отлично, но даных нету.. тоесть даные есть только за последний день

WhitePangolin
21-09-2009, 12:26
Ну... если у вас ротация логов сквида осуществляется ежедневно, то и команда /usr/sbin/sarg-reports weekly будет создавать отчеты в которые будет попадать тоьлко один день.
Настройте ротацию логов например раз в 35 дней (чтобы не создавать потом на форуме сообщение типа "в ежемесячные отчеты попадает не вся статистика"), но учтите что при хороших объемах активных пользователей, лог растет очень быстро и в дальнейшем это может повлечь проблемы типа переполнения /var, а так же учтите что sarg в отличие от того же LightSQUID ОЧЕНЬ любит нагружать процессор да и парсинг больших логов может занимать ОЧЕНЬ длительное время.

dmitryst
21-09-2009, 13:11
Anatoliy2004,
30 18 * * * root /usr/local/bin/sarg
Срабатывает ежедневно в 18-30. Для меня вполне достаточно, т.к. официально день заканчивается в 18-00, полчаса для особо "трудолюбивых". :)




© OSzone.net 2001-2012