Zum Inhalt springen

Squid-Log Auswertung mit Webalizer


thiemo

Empfohlene Beiträge

Servus zusammen,

mein Squid nimmt jeweils die LOG Einträge eines Tages und packt diese in ein *.gz Archiv (Ein Archiv für jeden abgelaufenen Tag). Die aktuellen Einträge finden sich in der access.log.

In der webalizer.conf gebe ich nun die access.log als auszuwertende Datei an. Nun wird aber immer nur der aktuelle Tag ausgewertet.

Wie schaffe ich es nun, auch Monatsstatistiken zu erstellen. Also alle Log Dateien (auch die in Archiven) auszuwerten??

Gruß

Thiemo

Link zu diesem Kommentar
Auf anderen Seiten teilen

jetzt erst mal nachträglich weil der proxy schon ne zeitlang läuft und über diesen zeitraum hätte ich gern ne komplette auswertung

wenn ich den webalizer täglich laufen lasse, werden dann die dateien ergänzt oder jedes mal neu geschrieben?

Link zu diesem Kommentar
Auf anderen Seiten teilen

also ich habs jetzt mal probiert

leider nimmt der befehl:

webalizer -F squid *.gz

immer nur die erste gepackte logdatei (also nur einen tag) und fügt sie der auswertung hinzu

da es allerdings schon eine ganze menge dateien sind hätte ich schon gerne alle zusammen ausgewertet

gibt es noch irgendeinen trick?

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi jaraz,

danke für den tip. hier scheiterts leider an meinem bescheidenen wissen in dem bereich. ich hab mir die datei runtergeladen und das skript mal auf dem proxy laufen lassen. leider ohne erfolg und mit einigen fehlermeldungen.

mache ich irgendwas falsch. brauche ich noch zusätzlich sachen um das skript laufen zu lassen. oder irgendwelche optionen?

gruß thiemo

Link zu diesem Kommentar
Auf anderen Seiten teilen

Was heißt laufen lassen?

Welche Fehlermeldungen?

C:\>perl logresolvemerge.pl

liefert

----- logresolvemerge 1.2 (build 1.30) © Laurent Destailleur -----

logresolvemerge allows you to get one unique output log file, sorted on date,

built from particular sources:

- It can read several input log files,

- It can read .gz/.bz2 log files,

- It can also makes a fast reverse DNS lookup to replace

all IP addresses into host names in resulting log file.

logresolvemerge comes with ABSOLUTELY NO WARRANTY. It's a free software

distributed with a GNU General Public License (See COPYING.txt file).

logresolvemerge is part of AWStats but can be used alone as a log merger

or resolver before using any other log analyzer.

Usage:

logresolvemerge.pl [options] file

logresolvemerge.pl [options] file1 ... filen

logresolvemerge.pl [options] *.*

perl logresolvemerge.pl [options] *.* > newfile

Options:

-dnslookup make a reverse DNS lookup on IP adresses

-dnslookup=n same with a n parallel threads instead of serial requests

-dnscache=file make DNS lookup from cache file first before network lookup

-showsteps print on stderr benchmark information every 8192 lines

-addfilenum if used with several files, file number can be added in first

field of output file. This can be used to add a cluster id

when log files come from several load balanced computers.

This runs logresolvemerge in command line to open one or several

server log files to merge them (sorted on date) and/or to make a reverse

DNS lookup (if asked). The result log file is sent on standard output.

Note: logresolvemerge is not a 'sort' tool to sort one file. It's a

software able to output sorted log records (with a reverse DNS lookup

included or not) even if log records are dispatched in several files.

Each of thoose files must be already independently sorted itself

(but that is the case in all web server log files). So you can use it

for load balanced log files or to group several old log files.

Don't forget that the main goal of logresolvemerge is to send log records to

a log analyzer in a sorted order without merging files on disk (NO NEED

OF DISK SPACE AT ALL) and without loading files into memory (NO NEED

OF MORE MEMORY). Choose of output records is done on the fly.

So logresolvemerge is particularly usefull when you want to output several

and/or large log files in a fast process, with no use of disk or

more memory, and in a chronological order through a pipe (to be used by a log

analyzer).

Note: If input records are not 'exactly' sorted but 'nearly' sorted (this

occurs with heavy servers), this is not a problem, the output will also

be 'nearly' sorted but a few log analyzers (like AWStats) knowns how to deal

with such logs.

WARNING: If log files are old MAC text files (lines ended with CR char), you

can't run this tool on Win or Unix platforms.

WARNING: Because of important memory holes in ActiveState Perl version, use

another Perl interpreter if you need to process large lof files.

Now supports/detects:

Automatic detection of log format

Files can be .gz/.bz2 files if zcat/bzcat tools are available in PATH.

Multithreaded reverse DNS lookup (several parallel requests) with Perl 5.8+.

New versions and FAQ at http://awstats.sourceforge.net

C:\>

Da steht eigentlich alles was du wissen musst.

Gruß Jaraz

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Jaraz,

danke nochmals für die Hilfe. Hab das ganze jetzt mal über webmin versucht (also den webalizer) und da funzt alles problemlos. Er nimmt also wirklich alle logdateien aus dem verzeichnis (inkl. alle archive) und wertet diese aus. Also genau das was ich wollte. Warum das aber nur über webmin geht entzieht sich meinem verständnis ;)

egal hauptsache es funzt

danke

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 18 Jahre später...

Hallo, 

bin nun kein webalizer profi ... aber ich habe festgestellt webalizer mag die logfiles in der richtigen umgekehrten Reihenfolge einlesen.

Da ich mehrere Domains verwalte (tut nix zur Sache)  liest er alle conf files im /etc/webalizer Verzeichnis aus.
dort habe ich verschiedene Domains


1. meine Domain.conf liegt in /etc/webalizer
2. in der Conf definiere ich webalizer.log als LOGFILE
3. ich verwende 2 scripts

Inhalt oldlogs.sh (rückwärtszählen)

#!/bin/bash
echo erst im conf der Domain /etc/webalizer/domain.conf eintrag LOGFILE auf webalizer.log aendern
i=31
while [ $i -ne 1 ];
do
 zcat /var/log/nginx/domain-access.log.$i.gz >/var/log/nginx/webalizer.log;
 i=$[ $i -1 ];
 /root/scripts/webalizer
done

##################

Inhalt von webalizer script

#!/bin/bash
lockfile="/tmp/webalizer.lock"
# bail out if lock file still exists
if [ -f $lockfile ]; then
        echo "Lock file exists! Webalizer may still be crunching numbers!"
        exit 1
else
        # write the lock file
        date +"%d.%m.%Y - %H:%M" > $lockfile
        echo -e "-------------------------------------"
        echo "[`date +"%d.%m.%Y - %H:%M"`] Generating stats..."
        echo -e "-------------------------------------\n"
        # go trough config files and generate stats
        for i in /etc/webalizer/*.conf; do webalizer -c $i; done
        echo -e "\n-------------------------------------"
        echo "[`date +"%d.%m.%Y - %H:%M"`] Finished"
        echo -e "-------------------------------------\n"
        # delete the lock file
        rm -rf $lockfile
fi
exit 0

(Quelle webalizer script https://www.tekovic.com/blog/webalizer-stats-for-multiple-websites/ )

Link zu diesem Kommentar
Auf anderen Seiten teilen

Gast
Dieses Thema wurde nun für weitere Antworten gesperrt.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...