yahi

Skjermbilde programvare:
yahi
Prog.varedetaljer:
Versjon: 0.1.2
Last opp dato: 20 Feb 15
Utvikler: Julien Tayon
Lisens: Gratis
Popularitet: 12

Rating: nan/5 (Total Votes: 0)

yahi er en allsidig log parser som gir standard ekstraktorer for apache / lighttpd.
kommandolinje bruk
Eksempel på data analyseres med yahi: http://wwwstat.julbox.fr/
Enkleste bruk er:
speed_shoot -g / usr / local / data / geoip / var / www / apache / tilgang * log
det vil returnere en JSON i form:
{
& Nbsp; "by_date": {
& Nbsp; "2012-5-3": 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; "ukjent": 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; "ukjent": 11
& Nbsp;}
& Nbsp; "week_browser": {
& Nbsp; "3": {
& Nbsp; "ukjent": 11
& Nbsp;}
& Nbsp;}
& Nbsp; "by_referer": {
& Nbsp; "-": 11
& Nbsp;}
& Nbsp; "by_browser": {
& Nbsp; "ukjent": 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; "amerikansk": 1
& Nbsp;}
}
Hvis du bruker:
speed_shoot -f csv -g / usr / local / data / geoip / var / www / apache / tilgang * log
Ditt resultat er:
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, ukjent, 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, ukjent, 11
week_browser, 3, ukjent, 11
by_referer, -, 11
by_browser, ukjent, 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)", en
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, en
Vel vel, det fungerer ikke fordi du først må hente geoip datafil:
wget -O "http://www.maxmind.com/download/geoip/database/GeoLiteCountry/GeoIP.dat.gz" | zcat> /usr/local/data/GeoIP.dat
Selvfølgelig er dette GeoLite database, jeg inkluderer ikke dataene i pakken siden geoip må oppdateres ofte for å holde nøyaktig.
Standard banen for geoip er data / GeoIP.dat
Bruk som et skript
speed shoot er faktisk en mal på hvordan du bruker yahi som en modul:
#! / Usr / bin / env python
fra archery.bow import Hankyu som _dict
fra yahi import hakk, skyte
fra datetime import datetime
context = hakk ()
date_formater = lambda dt: "% s-% s-% s"% (dt.year, dt.month, dt.day)
context.output (
& Nbsp; skyte (
& Nbsp; sammenheng,
& Nbsp; lambda data: _dict ({
& Nbsp; 'by_country': _dict ({data ['_ landet']: 1}),
& Nbsp; 'by_date': _dict ({date_formater (data ['_ datetime']): 1}),
& Nbsp; 'by_hour': _dict ({. Data ['_ datetime'] time: 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'] ukedag ():
& Nbsp; _dict ({data ["_ BROWSER_NAME"]: 1})}),
& Nbsp; 'total_line': 1,
& Nbsp;}),
& Nbsp;)
)
Installasjon
enkelt som:
PIP installere yahi
eller:
easy_install yahi
Anbefalte bruk
- For grunnleggende log aggregering, jeg tilrå å bruke kommandolinjen;
- For en skudd beregninger jeg anbefale en interaktiv konsoll (bpython eller ipython);
. - For spesifikke beregninger eller forseggjort filtre Jeg tilrå med API

Krav :

  • Python

Annen programvare fra utvikleren Julien Tayon

gof
gof

20 Feb 15

Kommentarer til yahi

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!