Apache access log parsing for multi-site vhost traffic statistics
Python
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.gitignore
Parser.py
README.markdown
generate_test_db.py
list.py
model.py
parselogs.py

README.markdown

Aiempi hahmotelma skriptin mahdollisesta toimintalogiikasta. Mahdollistaisi sen, että lokeista luetaan vain uudet osat, ei jo luettua uudestaan. Kuitenkin tarpeettoman monimutkaista?

# alustus
if ei löydy tilaa taulusta:
   luetaan access.log.1 jos on (eka päivä heitetään hukkaan)
   luetaan access.log
else:
    # sivusto.mtime == mtime(access.log.1)
    if rotatoitu:
        seek(access.log.1, seekpoint)
        tiedostolista = [access.log.1, access.log]
    else:
        seek(access.log, seekpoint)
        tiedostolista = [access.log]

    if not md5(rivi) == md5:
        # jos rotatoitu huonosti
        alustus()
    else:
        jatketaan lukemista
Tilataulu (mihin kelataan)  (onko rotatoitu)
 sivusto  | seekpoint   | al1 mtime  | md5(viimeinen rivi)
  yx.fi       123899      1234567890 | abcdabbacd
         = edellisen päivän
           viimeisen rivin alku
Hitit
  sivusto   |   päivä     | tavuja   | hittejä
yx.fi          2009-11-10   100000      2900
yx.fi          2009-11-10   100000      2900
derbian.fi     2009-11-10   100000000   2900000
derbian.fi     2009-11-10   100000000   2900000