yahi

Screenshot der Software:
yahi
Softwarebeschreibung:
Version: 0.1.2
Upload-Datum: 20 Feb 15
Entwickler: Julien Tayon
Lizenz: Frei
Popularität: 12

Rating: nan/5 (Total Votes: 0)

Yahi ist ein vielseitiges Protokollparser Bereitstellung von Standard-Extraktoren für Apache / lighttpd.
Befehlszeilenbenutzung
Beispiel Daten mit Yahi analysiert: http://wwwstat.julbox.fr/
Einfachste Anwendung ist:
speed_shoot -g / usr / local / data / geoip / var / www / apache / Zugang * log
er wird eine JSON in der Form zurück:
{
& Nbsp; "by_date": {
& Nbsp; "2012.05.03": 11
& Nbsp;},
& Nbsp; "total_line": 11,
& Nbsp; "ip_by_url": {
& Nbsp; "/ favicon.ico": {
& Nbsp; "192.168.0.254": 2,
& Nbsp; "192.168.0.35": 2
& Nbsp;},
& Nbsp; "/": {
& Nbsp; "74.125.18.162": 1,
& Nbsp; "192.168.0.254": 1,
& Nbsp; "192.168.0.35": 5
& Nbsp;}
& Nbsp;},
& Nbsp; "by_status": {
& Nbsp; "200": 7,
& Nbsp; "404": 4
& Nbsp;},
& Nbsp; "by_dist": {
& Nbsp; "unbekannt": 11
& Nbsp;},
& Nbsp; "bytes_by_ip": {
& Nbsp; "74.125.18.162": 151,
& Nbsp; "192.168.0.254": 489,
& Nbsp; "192.168.0.35": 1093
& Nbsp;},
& Nbsp; "by_url": {
& Nbsp; "/ favicon.ico": 4,
& Nbsp; "/": 7
& Nbsp;},
& Nbsp; "by_os": {
& Nbsp; "unbekannt": 11
& Nbsp;},
& Nbsp; "week_browser": {
& Nbsp; "3": {
& Nbsp; "unbekannt": 11
& Nbsp;}
& Nbsp;},
& Nbsp; "by_referer": {
& Nbsp; "-": 11
& Nbsp;},
& Nbsp; "by_browser": {
& Nbsp; "unbekannt": 11
& Nbsp;},
& Nbsp; "by_ip": {
& Nbsp; "74.125.18.162": 1,
& Nbsp; "192.168.0.254": 3,
& Nbsp; "192.168.0.35": 7
& Nbsp;},
& Nbsp; "by_agent": {
& Nbsp; "Mozilla / 5.0 (X11, Ubuntu, Linux x86_64; rv: 12,0) Gecko / 20100101 Firefox / 12,0, gzip (GFE) (via translate.google.com)": 1,
& Nbsp; "Mozilla / 5.0 (X11, Ubuntu, Linux x86_64; rv: 12,0) Gecko / 20100101 Firefox / 12.0": 10
& Nbsp;},
& Nbsp; "by_hour": {
& Nbsp; "9": 3,
& Nbsp; "10": 4,
& Nbsp; "11": 1,
& Nbsp; "12": 3
& Nbsp;},
& Nbsp; "by_country": {
& Nbsp; "": 10,
& Nbsp; "US": 1
& Nbsp;}
}
Wenn Sie:
speed_shoot -f CSV -g / usr / local / data / geoip / var / www / apache / Zugang * log
Ihr Ergebnis:
by_date, 2012-5-3,11
total_line, 11
ip_by_url, / favicon.ico, 192.168.0.254,2
ip_by_url, / favicon.ico, 192.168.0.35,2
ip_by_url, /, 74.125.18.162,1
ip_by_url, /, 192.168.0.254,1
ip_by_url, /, 192.168.0.35,5
by_status, 200,7
by_status, 404,4
by_dist, unbekannt, 11
bytes_by_ip, 74.125.18.162,151
bytes_by_ip, 192.168.0.254,489
bytes_by_ip, 192.168.0.35,1093
by_url, / favicon.ico, 4
by_url, / 7
by_os, unbekannt, 11
week_browser, 3, unbekannt, 11
by_referer, -, 11
by_browser, unbekannt, 11
by_ip, 74.125.18.162,1
by_ip, 192.168.0.254,3
by_ip, 192.168.0.35,7
by_agent, "Mozilla / 5.0 (X11, Ubuntu, Linux x86_64; rv: 12,0) Gecko / 20100101 Firefox / 12,0, gzip (GFE) (via translate.google.com)", 1
by_agent, Mozilla / 5.0 (X11, Ubuntu, Linux x86_64; rv: 12,0) Gecko / 20100101 Firefox / 12.0,10
by_hour, 9,3
by_hour, 10,4
by_hour, 11,1
by_hour, 12,3
by_country ,, 10
by_country, USA, 1
Nun, ich denke, es funktioniert nicht, da müssen Sie zuerst GeoIP Datendatei zu holen:
wget -O "http://www.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz" | zcat> /usr/local/data/GeoIP.dat
Natürlich, das ist der GeoLite Datenbank, weiß ich nicht die Daten enthalten im Paket da GeoIP müssen häufig aktualisiert genaue bleiben werden.
Standardpfad für GeoIP ist Daten / GeoIP.dat
Verwenden Sie als Skript
Geschwindigkeit schießen ist in der Tat eine Vorlage, wie Yahi als Modul verwendet werden:
#! / Usr / bin / env python
von archery.bow Import Hankyu als _dict
von Yahi Import Kerbe, schießen
von Datetime Datetime-Import
context = Kerbe ()
date_formater = Lambda dt: "% s-% s-% s"% (dt.year, dt.month, dt.day)
context.output (
& Nbsp; schießen (
& Nbsp; dabei
& Nbsp; Lambda Daten: _dict ({
& Nbsp; "by_country ': _dict ({data [' _ Landes]: 1}),
& Nbsp; "by_date ': _dict ({date_formater (data [' _ datetime ']): 1}),
& Nbsp; "by_hour ': _dict ({. Data [' _ datetime '] Stunden: 1}),
& Nbsp; "by_os ': _dict ({data [' _ os_name ']: 1}),
& Nbsp; "by_dist ': _dict ({data [' _ dist_name ']: 1}),
& Nbsp; "by_browser ': _dict ({data [' _ browser_name ']: 1}),
& Nbsp; "by_ip ': _dict ({data [' ip ']: 1}),
& Nbsp; "by_status ': _dict ({data [' Status ']: 1}),
& Nbsp; "by_url ': _dict ({data [' uri ']: 1}),
& Nbsp; "by_agent ': _dict ({data [' Agent ']: 1}),
& Nbsp; "by_referer ': _dict ({data [' Referer ']: 1}),
& Nbsp; "ip_by_url ': _dict ({data [' uri ']: _dict ({data [' ip ']: 1})}),
& Nbsp; "bytes_by_ip ': _dict ({data [' ip ']: int (data [' Bytes '])}),
& Nbsp; "week_browser ':. _dict ({Data [' _ datetime '] Wochentag ():
& Nbsp; _dict ({Daten ["_ browser_name"]: 1})}),
& Nbsp; "total_line ': 1,
& Nbsp;}),
& Nbsp;),
)
Installation
einfach wie:
pip Yahi installieren
oder:
easy_install Yahi
Wir empfehlen Nutzung
- Für Basisprotokollaggregation, ich empfehlen mit der Befehlszeile;
- Für einen Schuss Metriken Ich empfehle eine interaktive Konsole (BPython oder ipython);
. - Für spezifische Metriken oder aufwändige Filter ich mit Hilfe der API empfehlen

Anforderungen :

  • Python

Andere Software von Entwickler Julien Tayon

gof
gof

20 Feb 15

Kommentare zu yahi

Kommentare nicht gefunden
Kommentar hinzufügen
Schalten Sie auf die Bilder!