Gjest Slettet+6132 Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 Stresser nå litt med min debian-server, prøver å lese apache sine logger i realtime, men vil manipulere dataene jeg får ut. Loggfila er ikke særlig stor, men samme hvordan jeg prøver får jeg ikke noe output. cat access.log | awk '{print $1 " (" $9 ") " $7}' gir dette: 192.168.1.1 (200) /webalizer/192.168.1.1 (200) /webalizer/usage.png 192.168.1.1 (200) /webalizer/usage_200607.html 192.168.1.1 (200) /webalizer/daily_usage_200607.png 192.168.1.1 (200) /webalizer/hourly_usage_200607.png 192.168.1.1 (200) /webalizer/ctry_usage_200607.png Følgende kommandoer blir testet etter iherdig googling: tail -f access.log | awk '{print $1 " (" $9 ") " $7}' og awk '{print $1 " (" $9 ") " $7}' <(tail -f access.log) Ingen av disse gir meg noe output av noe slag. Noen forslag? Lenke til kommentar
LessThanJake Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 prøv med: watch cat access.log | awk '{print $1 " (" $9 ") " $7}' Lenke til kommentar
olear Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 cat access.log | awk '{print $1 " (" $9 ") " $7}' <(tail -f access.log) Lenke til kommentar
LessThanJake Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 Min ble litt feil Dette burde i alle fall funke: watch "tail access.log| awk '{print \$1 \" (\" \$9 \") \" \$7}'" Lenke til kommentar
Gjest Slettet+6132 Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 (endret) olear: Den fungerte desverre dårlig. LessThanJake: Den virket litt bedre, ser ut til at den er brukbar EDIT: watch --interval 5 "tail -n 50 access.log | awk '{print \$1 \"\\t(\" \$9 \")\\t\" \$7}'", alle tiders! Endret 20. juli 2006 av Slettet+6132 Lenke til kommentar
olear Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 olear: Den fungerte desverre dårlig. Fungerer fint her. Lenke til kommentar
Gjest Slettet+6132 Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 olear: Den fungerte desverre dårlig.Fungerer fint her.Rart, kan det være forskjell på systemene da? Lenke til kommentar
olear Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 Don't know, testet i Slackware (coreutils 5.2.1 og gawk 3.1.5). Lenke til kommentar
Gjest Slettet+6132 Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 Merkelige saker ... Ok, bruker nå watch da, men la oss si jeg vil endre apaches timestamp [18/Jul/2006:17:56:24 +0200] til noe mer nyttig, som feks 18. Jul 2006 (tab) 17:56:24, hvordan går jeg da frem? Lenke til kommentar
LessThanJake Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 (endret) Merkelige saker ... Ok, bruker nå watch da, men la oss si jeg vil endre apaches timestamp [18/Jul/2006:17:56:24 +0200] til noe mer nyttig, som feks 18. Jul 2006 (tab) 17:56:24, hvordan går jeg da frem? 6528259[/snapback] sed edit: det her var jo morsom sovemedisin echo "18/Jul/2006:17:56:24 +0200" | sed -e s/+[0-2][0-9][0-6][0-9]// -e s#/#.\ # -e s#/#\ # -e s/:/\ \ / Endret 20. juli 2006 av LessThanJake Lenke til kommentar
Gjest Slettet+6132 Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 (endret) Flotters, hvordan ville du ha putta det inn i watch --interval 5 "tail -n 50 access.log | awk '{print \$1 \"\\t(\" \$9 \")\\t\" \$7}'" da? EDIT: Og $4 fra awk vil jo bli [18/Jul/2006:17:56:24, hvordan løses det? Går meg vill i all teksten snart ... EDIT: Løste problemet med [: echo "[18/Jul/2006:17:56:24 +0200" | sed -e s/+[0-2][0-9][0-6][0-9]// -e s#/#.\ # -e s#/#\ # -e s/:/\ \/ -e s/\\[//g gir nå 18. Jul 2006 17:56:24. Så er bare spørsmålet; hvordan få dette inn i den andre kommandoen? Endret 20. juli 2006 av Slettet+6132 Lenke til kommentar
Gjest Slettet+6132 Skrevet 20. juli 2006 Del Skrevet 20. juli 2006 (endret) Endelig! Løste problemet med å lage en awk-fil og rote litt rundt. apachelog (awk-fil) { ip = $1 status = $9 path = $7 date = $4 print date "\t" ip "\t(" status ")\t" path } program (fil for å slippe å escape all coden) tail -n 50 access.log | awk -f apachelog | sed -e s/+[0-2][0-9][0-6][0-9]// -e s#/#.\ # -e s#/#\ # -e s/:/\ \/ -e s/\\[//g Kommando: watch --interval 5 "./program" Flotters, takk for hjelpen! EDIT: Output: 20. Jul 2006 23:44:39 192.168.1.1 (304) /webalizer/20. Jul 2006 23:44:39 192.168.1.1 (304) /webalizer/usage.png 20. Jul 2006 23:48:02 192.168.1.1 (304) /webalizer/ 20. Jul 2006 23:48:02 192.168.1.1 (304) /webalizer/usage.png 20. Jul 2006 23:48:08 192.168.1.1 (304) /webalizer/ 20. Jul 2006 23:48:08 192.168.1.1 (304) /webalizer/usage.png Endret 20. juli 2006 av Slettet+6132 Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå