Aggregieren Sie die täglichen Treffer pro Sekunde aus den Webserver-Protokollen in Python

Grund für die Herstellung

Ich möchte die Anzahl der Zugriffe pro Sekunde für einen Tag wissen, aber die Sekunden, in denen kein Zugriff mit "uniq -c" usw. vorhanden ist, fehlen. Deshalb habe ich beschlossen, Nantoka auszuprobieren.

hits.py


#!/usr/bin/env python
import sys

def main():
	
	dict = {}
	
	#init dict
	for hour in range(24):
		for min in range(60):
			for sec in range(60):
				hhmmdd = '%02d:%02d:%02d' % (hour, min, sec,)
				dict[hhmmdd] = 0
	
	
	#read stdin
	for line in sys.stdin:
		text = line.rstrip('\n')
		dict[text] = dict[text] + 1
	
	
	#print hit/s
	for hour in range(24):
		for min in range(60):
			for sec in range(60):
				hhmmdd = '%02d:%02d:%02d' % (hour, min, sec,)
				print '%s %d' % (hhmmdd, dict[hhmmdd])
	
	
if __name__ == '__main__':
	main()

Wie benutzt man

Übergeben Sie den Stunden-, Minuten- und zweiten Teil des Webserverprotokolls

$ cat /var/log/httpd/access_log | cut -d" " -f4 | cut -d":" -f2- | python hits.py

Plaudern

Als ich SSDs organisierte, kam ein gefälschtes Skript heraus, das ich vor einiger Zeit erstellt hatte, also legte ich es auf Qiita. Ich wollte die Anzahl der Zugriffe pro Sekunde aus dem Apache-Protokoll wissen, also habe ich den Befehl "uniq -c" verwendet, um die Anzahl zu zählen, aber als ich mir das genau überlegte, wurden die Sekunden ohne Zugriff anstelle von "0" weggelassen. Es ist ganz natürlich ... (Ich bemerkte, dass ich 86400 machen werde, obwohl ich die Anzahl der Zugriffe pro Sekunde für einen Tag gezählt hatte.)

Also habe ich das folgende Skript entsprechend erstellt. Es ist ziemlich rau, aber ich erinnerte mich, dass ich es geschafft habe.

Recommended Posts

Aggregieren Sie die täglichen Treffer pro Sekunde aus den Webserver-Protokollen in Python
Die zweite Nacht der Runde mit für
Berechnen Sie die Gesamtzahl der Kombinationen mit Python
Lassen Sie Code Day10 ab Null "1431. Kinder mit der größten Anzahl von Süßigkeiten"
Richten Sie die Anzahl der Stichproben zwischen Datenklassen für maschinelles Lernen mit Python aus
Ein Python-Skript, das die Anzahl der Jobs für eine bestimmte Bedingung von Indeed.com abruft
Lerne Nim mit Python (ab Anfang des Jahres).
Erstellen Sie einen API-Server, um den Betrieb der Front-Implementierung mit Python3 und Flask zu überprüfen
Zweite Hälfte des ersten Tages des Python-Studiums Versuchen Sie, die Twitter-API mit Bottle zu erreichen
Wie man die Anzahl der GPUs aus Python kennt ~ Hinweise zur Verwendung von Multiprocessing mit pytorch ~
[Homologie] Zählen Sie mit Python die Anzahl der Löcher in den Daten
So ändern Sie die Protokollstufe von Azure SDK für Python
Der 14. März ist der Tag des Umfangsverhältnisses. Die Geschichte der Berechnung des Umfangsverhältnisses mit Python
[Python, Ruby] Selen-Holen Sie sich Webseiteninhalte mit Webdriver
Studieren von Web Scraping zum Extrahieren von Daten aus Filmarks # 2
Die Geschichte, einen Standardtreiber für db mit Python zu erstellen.
Seaborn-Grundlagen für Anfänger ① Aggregiertes Diagramm der Anzahl der Daten (Countplot)
Von der Einführung von JUMAN ++ bis zur morphologischen Analyse von Japanisch mit Python
Existenz aus Sicht von Python
[Abgeschlossene Version] Versuchen Sie, die Anzahl der Einwohner der Stadt anhand der Adressliste mit Python herauszufinden
Versuchen Sie es mit Pythons Webframework Django (1) - Von der Installation bis zum Serverstart
Treffen Sie eine Methode einer Klasseninstanz mit der Python Bottle Web API
Holen Sie sich Artikelbesuche und Likes mit Qiita API + Python
Ich habe die Geschwindigkeit der Listeneinschlussnotation für und während mit Python2.7 gemessen.
Holen Sie sich den Schlüssel für die Migration von JSON-Daten auf der zweiten Ebene mit Python
Die Geschichte der Migration vom Heimserver (MariaDB + Java) auf AWS (DynamoDB + Python + PHP) mit reduzierten monatlichen Kosten
WEB-Scraping mit Python (für persönliche Notizen)
Webserver zum Testen des Browsers mit Mocha
Notizen vom Anfang von Python 1 lernen
Überprüfen Sie die Existenz der Datei mit Python
Laden Sie mit Python Dateien im Web herunter
Die dritte Nacht der Runde mit für
Pandas des Anfängers, vom Anfänger, für den Anfänger [Python]
Notizen vom Anfang von Python 2 lernen
Zählen Sie die Anzahl der Zeichen mit Echo
[Für Anfänger] Versuchen Sie Web Scraping mit Python
Datenerfassung von der Analytics-API mit dem Google API-Client für die Python Part 2-Webanwendung
[Python] Anzahl der Ganzzahlzeichenfolgen der Länge n, für die die Summe m ist
Holen Sie sich einen Tag von Zellers gemeinsamer Zeremonie ~ Übrigens der ewige Kalender ~
Deep Learning von Grund auf neu Die Theorie und Implementierung des mit Python erlernten Deep Learning Kapitel 3
SSH-Anmeldung am Zielserver von Windows mit einem Klick auf eine Verknüpfung
Hinweis: So erhalten Sie den letzten Tag des Monats mit Python (hinzugefügt am ersten Tag des Monats)
[Einführung in Python] So erhalten Sie den Datenindex mit der for-Anweisung