Kom ihåg mig?
Home Menu

Menu


Splitta log fil från apache

Ämnesverktyg Visningsalternativ
Oläst 2005-07-13, 21:37 #1
gabriel gabriel är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 399
gabriel gabriel är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 399
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...
gabriel är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-07-13, 22:10 #2
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
hnn hnn är inte uppkopplad
Banned
 
Reg.datum: Mar 2004
Inlägg: 2 587
parsa loggen rad för rad?

Sen med ett reguljärt uttryck så kollar du vilket datum det är.
hnn är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-07-13, 23:26 #3
WizKid WizKid är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2004
Inlägg: 618
WizKid WizKid är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Apr 2004
Inlägg: 618
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
WizKid är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-07-14, 01:43 #4
gabriel gabriel är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 399
gabriel gabriel är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 399
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...
gabriel är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-07-14, 08:40 #5
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
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
zoran är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-07-14, 11:27 #6
gabriel gabriel är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 399
gabriel gabriel är inte uppkopplad
Flitig postare
 
Reg.datum: Jul 2003
Inlägg: 399
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)
gabriel är inte uppkopplad   Svara med citatSvara med citat
Oläst 2005-07-14, 13:45 #7
zorans avatar
zoran zoran är inte uppkopplad
Mycket flitig postare
 
Reg.datum: Jun 2004
Inlägg: 598
zoran zoran är inte uppkopplad
Mycket flitig postare
zorans avatar
 
Reg.datum: Jun 2004
Inlägg: 598
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
zoran är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 05:49.

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