[LINUX] Extrahieren Sie den Statuscodefehler der Serie 400.500 des Apache-Zugriffsprotokolls, indem Sie den Zeitbereich angeben

Da ich in der HH: MM: SS-Notation angeben möchte, verwenden Sie sed, um den Zeitteil unabhängig zu machen. Die Portnummer am Ende der IP wird übrigens auch weggelassen. Durch Angabe der Start- und Endzeit in HH: MM: SS wird der Statuscode innerhalb der angegebenen Zeit geändert. Es ist möglich, die Zeile zu extrahieren, die den Fehlercode darstellt.

qiita.rb


sed -r -e\ 's/(:[0-9]{4,5}|\/202[0-9]:)/ /'{,} /var/log/apache2/20200715/access_log | awk '"HH:MM:SS" <=$5&&$5<= "HH:MM:SS" {if($10>=400&&$10<=599)print $0}'

Als ich es tatsächlich benutzte, funktionierte es wie erwartet, aber es war ziemlich mühsam, die Zeit zu bearbeiten. Ist es also möglich, eine Stunde vor der aktuellen Zeit anzuzeigen, ohne sich die Mühe zu machen, sie zu bearbeiten? Als Ergebnis des Denkens entschied ich mich, Datum zu verwenden und awk die Variable definieren zu lassen.

qiita.rb


sed -r -e\ 's/(:[0-9]{4,5}|\/202[0-9]:)/ /'{,} /var/log/apache2/20200715/access_log | awk -va=`date -d "60 minute ago" +%H:%M:%S` -vb=`date +%H:%M:%S` '{if($5>a&&$5<b&&$10>=400&&$10<=599)print $0}'

Wenn Sie die Ausgabe etwas reduzieren möchten, geben Sie das zu druckende Teil an.

Recommended Posts

Extrahieren Sie den Statuscodefehler der Serie 400.500 des Apache-Zugriffsprotokolls, indem Sie den Zeitbereich angeben
Extrahieren Sie den Statuscodefehler der Serie 400.500 von Apache (kombiniert_tsv), indem Sie den Zeitbereich angeben.
Greifen Sie auf Github zu, indem Sie den SSH-Schlüssel in GitPython angeben
Die Geschichte eines Fehlers in PyOCR
Lesen Sie die Datei, indem Sie den Zeichencode angeben.
Sortieren Sie die Elemente eines Arrays, indem Sie Bedingungen angeben
Angeben des Bereichs von Ruby- und Python-Arrays
Lesen Sie die Ausgabe von subprocess.Popen in Echtzeit
Sortieren Sie die Liste der Tupel in Python, indem Sie die aufsteigende / absteigende Reihenfolge mehrerer Schlüssel angeben
○○ Probleme im Fachbereich Mathematik mit Optimierung lösen
Extrahieren Sie das Element, indem Sie das in der Zeichenfolge enthaltene Tag löschen