Kibana Webserver Logs nach User Agents auswerten
Nachdem nun die Logfiles eine Apaches Servers in einer Elasticsearch Datenbank gelandet sind wollte ich meine ersten Gehversuche mit der Auswertung der Daten in Kibana starten.
Für den Anfang wollte ich ein Kuchendiagramm mit den verwendeten Browsern und dem Betriebssystem erstellen
Leider wird bisher der Useragent an “einem Stück” von Logstash nach Elasticsearch geschrieben.
Mozilla/5.0 (Windows NT 6.3; Win64; x64; Trident/7.0; rv:11.0) like Gecko
Glücklicherweise gibt es in Logstash einen Filter der einem diesen String schön in die Bestandteile zerlegt. Wenn man diese Zeilen seiner Logstash Konfiguration hinzufügt
useragent {
source => "agent"
target => "useragent"
}
werden folgenden Daten später bereitgestellt
"useragent" => {
"name" => "IE",
"os" => "Windows 8.1",
"os_name" => "Windows 8.1",
"device" => "Other",
"major" => "11",
"minor" => "0"
Diese kann man dann in Kibana in einem Kuchendiagramm so darstellen. Der innere Kreis zeigt die Browser an und auf dem äußeren Kreis werden die Betriebssysteme dargestellt.