[+] Miesi

Konfiguracja serwerów, usług, itp.
sethiel
Junior Member
Posty: 762
Rejestracja: 28 stycznia 2008, 11:50
Lokalizacja: Wrocław

[+] Miesięczny sarg-reports nie działa

Post autor: sethiel »

Mam problem z miesięcznymi raportami squida

Kod: Zaznacz cały

sarg-reports monthly
Otóż nie działa. I nie bardzo wiem gdzie szukać.
Dzienne i tygodniowe śmigają bez problemu.
Przydałyby się jakieś pomysły detektywistyczne :) .
raf575
Posty: 9
Rejestracja: 03 lutego 2011, 23:58

Post autor: raf575 »

W pliku /etc/logrotate.d/squid ustaw miesięczną rotację logów (domyślnie jest dzienna – squid w takim przypadku ma dane z ostatniego dnia).

Kod: Zaznacz cały

 
#
#      Logrotate fragment for squid.
#
/var/log/squid/*.log {
#      daily   [b]# ta linijka musi być zakomentowana[/b]
       monthly  [b]# ta linijka musi być dodana[/b]
       compress
       delaycompress
       rotate 2
       missingok
       nocreate
       sharedscripts
       postrotate
             test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
       endscript
}

sethiel
Junior Member
Posty: 762
Rejestracja: 28 stycznia 2008, 11:50
Lokalizacja: Wrocław

Post autor: sethiel »

Wygląda to obecnie u mnie tak:

Kod: Zaznacz cały

/var/log/squid/*.log {
        monthly
        compress
        delaycompress
        rotate 2
        missingok
        nocreate
        sharedscripts

        prerotate
                test ! -x /usr/sbin/sarg-maint || /usr/sbin/sarg-maint
        endscript
        postrotate
                test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
        endscript
}
różni się jedynie prównując do Twojego:

Kod: Zaznacz cały

        prerotate
                test ! -x /usr/sbin/sarg-maint || /usr/sbin/sarg-maint
        endscript
Tak na oko to nie robi nic szczególnego - myślisz że powinienem wywalić i będzie działać?
A może trzeba pieroństwo zrobić miesięcznie + 1 dzień (monthly +1 day)? Ale wtedy to nie będzie miesięczny tylko prawie miesięczny.
Lepszy rydz niż nic. Ale wolabym nieeksperymentować, zwłaszcza że plik logów squida waży półtorej tony (11 gigabajtów).
raf575
Posty: 9
Rejestracja: 03 lutego 2011, 23:58

Post autor: raf575 »

A czy Squid zbierał Tobie dane przez pełny miesiąc, tzn od pierwszego do ostatniego? Wydaje mi się, że jeśli Squid chodził pół ostatniego miesiąca to Sarg raportów miesięcznych nie wygeneruje. Sarg chyba potrzebuje danych z pełnego okresu, czyli cały tydzień, miesiąc, dzień. Jeśli chcesz generować raporty powiedzmy za luty, to squid powinien mieć jakieś dane ze stycznia, chociażby z 31 dnia tego miesiąca. W lunym nie potrzeba danych ze wszystkich dni, ale istotone jest, żeby było coś ze stycznia. Testowałem to samo na maszynie wirtualnej i dopiero po iluśtam zmianach daty do przodu zaczęły mi wychodzić raporty tygodniowe i miesięczne.
sethiel
Junior Member
Posty: 762
Rejestracja: 28 stycznia 2008, 11:50
Lokalizacja: Wrocław

Post autor: sethiel »

Trzy miesiące squid już działa więc tu nie przyczyna.
Awatar użytkownika
sponsoriada
Beginner
Posty: 149
Rejestracja: 03 października 2010, 22:58
Lokalizacja: Płock

Post autor: sponsoriada »

Nie wiem czy to prawda, ponieważ mój squid dopiero dzisiaj zainstalowany, ale gdzieś na forum obiło mi się o oczy, że w katalogu /etc/cron.monthly plik sarg powinien znaleźć się przed logrotate (podobno wykonują się alfabetycznie), więc logrotate wcześniej przeniesie Ci dane niż sarg zdąży je wyeksportować. To tylko taka sugestia, nie potwierdzona z mojej strony.
sethiel
Junior Member
Posty: 762
Rejestracja: 28 stycznia 2008, 11:50
Lokalizacja: Wrocław

Post autor: sethiel »

Nie dopisałem, że problem rozwiązany, aczkolwiek router się niestety czasem wiesza(ł?) ponieważ -
- albo nie potrafi udźwignąć tak wielkiego pliku logu,
- albo jako że właśnie tydzień temu dysk się ugotował to może wada dysku była przyczyną...

Natomiast samo rozwiązanie to: /etc/cron.monthly - usunąć plik sarg, /etc/logrotate.d/squid

Kod: Zaznacz cały

/var/log/squid/*.log {
        monthly
        compress
        delaycompress
        rotate 2
        missingok
        nocreate
        sharedscripts
        prerotate
                /root/sarg-monthly
                test ! -x /usr/sbin/sarg-maint || /usr/sbin/sarg-maint
        endscript
        postrotate
                test ! -e /var/run/squid.pid || /usr/sbin/squid -k rotate
        endscript
}
/root/sarg-monthly

Kod: Zaznacz cały

#!/bin/sh

if [ -x /usr/sbin/sarg-reports ]; then
  /usr/sbin/sarg-reports monthly
fi
ODPOWIEDZ