WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Splitta log fil från apache (https://www.wn.se/forum/showthread.php?t=8885)

gabriel 2005-07-13 21:37

Någon som vet nått verktyg som i efterhand kan splitta apache loggen månadsvis i enskilda filer...

Har glömt o rotera en av mina loggar som hade vart smidig att splita nu om det går...

hnn 2005-07-13 22:10

parsa loggen rad för rad?

Sen med ett reguljärt uttryck så kollar du vilket datum det är.

WizKid 2005-07-13 23:26

Borde det inte funka att bara köra grep? Risken att följande sträng finns på något annat ställe än i datum är väl rätt liten.
Kod:

grep "/Apr/2005:" access_log > access_log_apr

gabriel 2005-07-14 01:43

Citat:

Ursprungligen postat av hnn
parsa loggen rad för rad?
Sen med ett reguljärt uttryck så kollar du vilket datum det är.

Citat:

Ursprungligen postat av WizKid
Borde det inte funka att bara köra grep? Risken att följande sträng finns på något annat ställe än i datum är väl rätt liten.
Kod:

grep /Apr/2005 access_log access_log_apr

Tänk va enkelt det kan va ibland...
Att man inte kan se de enkla lösningarna innan man letar efter de avancerade.

Får bara hoppas att ingen idiot skrivit nått dumt som query-string eller nått, men som sagt e den risken ganska liten...

Kan iof se om jag kan hitta nått gammalt script som parsar raden så att man få ut bara datumet att jämföra med för säkerhets skull...

zoran 2005-07-14 08:40

Citat:

Ursprungligen postat av gabriel
Citat:

Originally posted by -hnn@Jul 13 2005, 22:10
parsa loggen rad för rad?
Sen med ett reguljärt uttryck så kollar du vilket datum det är.



Citat:

Ursprungligen postat av WizKid
Borde det inte funka att bara köra grep? Risken att följande sträng finns på något annat ställe än i datum är väl rätt liten.
Kod:

grep /Apr/2005 access_log access_log_apr

Tänk va enkelt det kan va ibland...
Att man inte kan se de enkla lösningarna innan man letar efter de avancerade.

Får bara hoppas att ingen idiot skrivit nått dumt som query-string eller nått, men som sagt e den risken ganska liten...

Kan iof se om jag kan hitta nått gammalt script som parsar raden så att man få ut bara datumet att jämföra med för säkerhets skull...

Mer säker variant (som även tillåter querys Apr/2005) är :
Kod:

awk ' $4 ~ /Apr\/2005/ { print }' apache_log > apache_log_apr
/Zoran

gabriel 2005-07-14 11:27

Citat:

Originally posted by zoran@Jul 14 2005, 08:40

Mer säker variant (som även tillåter querys Apr/2005) är :
Kod:

awk 4 ~ /Apr/2005/ { print } apache_log apache_log_apr
/Zoran


Precis den jag leta efter... visste att jag hade den någonstans...
såg dock nu att jag glömt rotera den sen Aug förra året så det blir till att pilla en del...
Om någon hittar nått automatiskt så säg gärna till då jag har 5 loggar som inte låg med i ordinarie rotation...(blir ju en del med 12mån x 5 loggar = 60 manuella rader att editera o skriva in)

zoran 2005-07-14 13:45

Citat:

Ursprungligen postat av gabriel
Citat:

Ursprungligen postat av zoran
Mer säker variant (som även tillåter querys Apr/2005) är :
Kod:

awk 4 ~ /Apr/2005/ { print } apache_log apache_log_apr
/Zoran


Precis den jag leta efter... visste att jag hade den någonstans...
såg dock nu att jag glömt rotera den sen Aug förra året så det blir till att pilla en del...
Om någon hittar nått automatiskt så säg gärna till då jag har 5 loggar som inte låg med i ordinarie rotation...(blir ju en del med 12mån x 5 loggar = 60 manuella rader att editera o skriva in)

Nja
Kod:

MONTHS="Jan Feb Mar Apr May Jun Jul Aug Sep Okt Nov Dec"
YEARS="2004 2005"
for year in $YEARS; do
  for month in $MONTHS; do
  awk ' $4 ~ /$month\/$year/ { print }' apache_log* > sorted_apache_log_$month_$year
  done
done

All automatik du behöver.

Den snutten kommer söka genom alla filer som börjar på apache_log, först år 2004 och sen 2005, och skapa en loggfil för varje månad.

Filerna kommer vara namngivna sorted_apache_log_Apr_2005 för exempelvis April i år.

/Zoran


Alla tider är GMT +2. Klockan är nu 12:46.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson