logide-parsimine/bin/README.md

80 lines
1.7 KiB
Markdown

# Skriptide kasutamine
Allolevates näidetes on programmid käivitatud nii et
kaust milles skript paikneb on lisatud ```PATH``` keskkonnamuutujasse:
```bash
PATH=/tee/kaustani/logide-parsimine/bin:$PATH
```
Näiteks kodukataloogis bin kausta puhul:
```bash
PATH=~/bin:$PATH
```
Skripti käisitsi alla laadimisel ja kausta paigutamisel tuleb anda ka käivitamise õigsed, näiteks:
```bash
chmod +x ~/bin/top2
```
Selleks et PATH muutujasse automaatselt näiteks ~/bin kaust lisataks võib ```~/.bashrc``` faili lisada ```PATH=~/bin/:$PATH```.
# top2
Bashis kirjutatud skript mis parsib standardsisendist ning kuvab tulemused standardväljundisse
Käivitamiseks:
(cat access.log; zcat access.log.1.gz) | top2
# top4
Pythonis kirjutatud skript mis leiab enim külastatud URL-id.
Käivitamiseks:
```bash
cat access.log | top4 | head
```
# top5
Leiab top 5 enim külastatud URL-i, päringuid teinud IP aadressi ning enim kasutatud veebilehitsejat.
Käivitamiseks, nii et veateated kirjutatakse ```errors``` faili
```bash
cat access.log | top4 2>errors
```
# filter2
Python programm kaustast Apache logisid otsimiseks ning nende seest
alguse kuupäeva/kellaaja ning ajavahemiku järgi logikirjete otsimiseks.
Käsk võtab kolm argumenti:
* tee logide kaustani
* otsitava ajavahemiku alguse kuupäev/kellaaeg, kujul "YYYY-MM-DD HH:MM:SS"
* ajavahemik minutites
Käivitamiseks:
```bash
filter2 /tee/logide/kaustani "2015-12-12 18:25:10" 10
```
Käsurea analoog teatavate mööndustega on järgnev:
```bash
grep -E '12/Dec/2015:18:(2[5-9]|3[0-5])' -r /tee/logide/kaustani
```
Pythoni variandi põhilised erisused:
* Jooksvalt pakib lahti .gz lõpulised failid
* Jätab vahele failid mille sees otsitavat ajavahemikku kindlasti ei ole