Korrastatud Apache2 näited
This commit is contained in:
		
							
								
								
									
										106
									
								
								apache2.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										106
									
								
								apache2.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,106 @@ | |||||||
|  | #Apache2 logide parsimine | ||||||
|  |  | ||||||
|  | Laadi alla mõned näidised ja paki need lahti: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | wget https://media.k-space.ee/apache2.tar | ||||||
|  | ionice nice tar xvf apache2.tar # Lahti pakkimine madala CPU ja IO prioriteediga | ||||||
|  | cd apache2 | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Leiame esimesed kümme GET päringut apache logifailist: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log | grep  GET | head -n3 | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Esimene tulp kus on tavaliselt IP aadressid, kus tulbad tühikutega eraldatud: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log | grep GET | cut -d " " -f 1 | head | ||||||
|  | cat access.log | grep GET | awk '{ print $1 }' | head | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Natuke keerukam näide awk abil, kus GET sõnet otsitakse konkreetsest tulbast mis on kahekordsete ülakomadega eraldatud: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log | awk -F\" '{ if ($2 ~ "^GET ") print $1 }' | awk '{ print $1 }' | head | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Teisest tulbast kuni lõpuni välja: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log | grep GET | cut -d " " -f 2- | head | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Sorteeri IP aadressid mis esinesid logifailides: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log | grep GET | cut -d " " -f 1 | sort | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Loenda kokku ühesuguste IP-dega read: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log | grep GET | cut -d " " -f 1 | sort | uniq -c | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Top 10 IP aadressid kust HTTP päringud tulid: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log | grep GET | cut -d " " -f 1 | sort | uniq -c | sort -n -r | head | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Top 10 IP aadressid kahest kokku pakitud failist: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | zcat access.log.1.gz access.log.2.gz \ | ||||||
|  |  | grep GET \ | ||||||
|  |  | cut -d " " -f 1 \ | ||||||
|  |  | sort \ | ||||||
|  |  | uniq -c \ | ||||||
|  |  | sort -n -r \ | ||||||
|  |  | head | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Mitmest (pakitud) logifailist lugemine, asjakohaste ridade välja filtreerimine, esimese tulba välja lõikamine, sorteerimine deduplitseerimiseks, ridade loendamine, vastete arvu järgi sorteerimine ning lõpuks top 10 kuvamine: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | (cat access.log; zcat access.log.1.gz access.log.2.gz) \ | ||||||
|  |  | grep GET \ | ||||||
|  |  | cut -d " " -f 1 \ | ||||||
|  |  | sort \ | ||||||
|  |  | uniq -c \ | ||||||
|  |  | sort -n -r \ | ||||||
|  |  | head | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Enim külastatud URL veebiserveris: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log \ | ||||||
|  |  | awk -F \" '{ print $2}' \ | ||||||
|  |  | cut -d ' ' -f 2- \ | ||||||
|  |  | sort \ | ||||||
|  |  | uniq -c \ | ||||||
|  |  | sort -n -r \ | ||||||
|  |  | head | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Kõige enam sisu postitanud veebilehitsejad: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | cat access.log \ | ||||||
|  |  | awk -F \" '{ if ($2 ~ "^POST ") print $6}' \ | ||||||
|  |  | sort \ | ||||||
|  |  | uniq -c \ | ||||||
|  |  | sort -n -r \ | ||||||
|  |  | head | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | Veateate 5xx põhjustanud päringute leidmine: | ||||||
|  |  | ||||||
|  | ```bash | ||||||
|  | (cat access.log; zcat access.log*.gz) \ | ||||||
|  |   | awk -F \" '{ if ($3 ~ "^ 5[0-9][0-9] ") print $0}' | ||||||
|  | ``` | ||||||
		Reference in New Issue
	
	Block a user