Googlebot Analyse
mit Elasticsearch, Logstash & Kibana
Wer ich bin
2 Googlebot Analyse | Valentin Pletzer | BurdaForward
Valentin Pletzer
Senior Search Analyst @ BurdaForward
https://twitter.com/VorticonCmdr
https://www.xing.com/profile/Valentin_Pletzer
https://plus.google.com/+ValentinPletzer
valentin.pletzer@burda-forward.de
http://www.chip.de/
http://www.focus.de/
http://www.netmoms.de/
http://www.finanzen100.de/
http://www.huffingtonpost.de/
Warum das Ganze?
3 Googlebot Analyse | Valentin Pletzer | BurdaForward
•  Informations-Lücken schließen (Google Search Console)
•  Informationen ergänzen (wie verhält sich der „echte“ Googlebot)
•  Weil es cool ist ;-)
Agenda
4 Googlebot Analyse | Valentin Pletzer | BurdaForward
Installation
Tuning des Mappings
1
2
Daten reinladen3
Dashboard einrichten4
Analyse5
Installation
5 Googlebot Analyse | Valentin Pletzer | BurdaForward
•  Elasticsearch als Datenhalde
•  evtl. noch das Head-Plugin
•  Logstash zum Parsen der Logfiles
•  Kibana zur Visualisierung
•  Alle müssen nur entpackt werden
•  elasticsearch.yml anpassen
•  cluster.name
•  path.data
•  path.log
•  ES_HEAP_SIZE (Hälfte des Arbeitsspeichers)
•  zum Starten: bin/elasticsearch
Tuning des Mappings
6 Googlebot Analyse | Valentin Pletzer | BurdaForward
•  URLs können sehr lang sein daher sollte
man die 256 Zeichen Beschränkung
aufheben
•  Zahlen will man tendenziell auch als solche
behandeln (Durchschnitt etc) und sollten
daher auch als solche gemappt sein
Daten reinladen
7 Googlebot Analyse | Valentin Pletzer | BurdaForward
•  (Apache) Logfiles besorgen
•  evtl Pre-Processing (nur Bots?)
•  Logstash Input-Filter-Output Skript
•  bin/logstash agent -f stdin-es.conf < /logs/googlebot.log
Mögliche Inputs und Filter
8 Googlebot Analyse | Valentin Pletzer | BurdaForward
•  Inputs
•  stdin
•  file
•  http
•  RabbitMQ, ZeroMQ
•  ...
•  Filter
•  dns (reverse lookup)
•  geoip (Karte)
•  grok (Parser mit Regex)
•  mutate (Replace, Split etc)
•  useragent
•  ...
Dashboard einrichten
9 Googlebot Analyse | Valentin Pletzer | BurdaForward
•  Kibana starten (bin/kibana)
•  Kibana öffnen (http://localhost:5601/)
•  Visualisierungen anlegen & speichern
•  Dashboard anlegen & speichern
Mögliche Fragestellungen
10 Googlebot Analyse | Valentin Pletzer | BurdaForward
•  Welche URL wird am häufigsten gecrawlt?
•  Kann die robots.txt immer einwandfrei gecrawlt werden?
•  Wie groß ist das größte File und brauche ich das?
•  Wie groß ist die durchschnittliche HTML-Filegröße?
•  Wird mein HTML größer oder kleiner?
•  Wann wurde ein bestimmte URL zum letzten Mal gecrawlt?
•  Wie viele 404, 301 etc liefere ich dem Bot aus?
•  Welche Googlebots kommen überhaupt?
•  Wie viele (unique) URLs wurden gecrawlt?
•  Wann waren Ausfälle (5xx) und wird wieder normal gecrawlt?
•  Drosselt der Googlebot zu bestimmten Tageszeiten?
Fragen?
Danke!

Googlebot Analyse mit Elasticsearch

  • 1.
  • 2.
    Wer ich bin 2Googlebot Analyse | Valentin Pletzer | BurdaForward Valentin Pletzer Senior Search Analyst @ BurdaForward https://twitter.com/VorticonCmdr https://www.xing.com/profile/Valentin_Pletzer https://plus.google.com/+ValentinPletzer valentin.pletzer@burda-forward.de http://www.chip.de/ http://www.focus.de/ http://www.netmoms.de/ http://www.finanzen100.de/ http://www.huffingtonpost.de/
  • 3.
    Warum das Ganze? 3Googlebot Analyse | Valentin Pletzer | BurdaForward •  Informations-Lücken schließen (Google Search Console) •  Informationen ergänzen (wie verhält sich der „echte“ Googlebot) •  Weil es cool ist ;-)
  • 4.
    Agenda 4 Googlebot Analyse| Valentin Pletzer | BurdaForward Installation Tuning des Mappings 1 2 Daten reinladen3 Dashboard einrichten4 Analyse5
  • 5.
    Installation 5 Googlebot Analyse| Valentin Pletzer | BurdaForward •  Elasticsearch als Datenhalde •  evtl. noch das Head-Plugin •  Logstash zum Parsen der Logfiles •  Kibana zur Visualisierung •  Alle müssen nur entpackt werden •  elasticsearch.yml anpassen •  cluster.name •  path.data •  path.log •  ES_HEAP_SIZE (Hälfte des Arbeitsspeichers) •  zum Starten: bin/elasticsearch
  • 6.
    Tuning des Mappings 6Googlebot Analyse | Valentin Pletzer | BurdaForward •  URLs können sehr lang sein daher sollte man die 256 Zeichen Beschränkung aufheben •  Zahlen will man tendenziell auch als solche behandeln (Durchschnitt etc) und sollten daher auch als solche gemappt sein
  • 7.
    Daten reinladen 7 GooglebotAnalyse | Valentin Pletzer | BurdaForward •  (Apache) Logfiles besorgen •  evtl Pre-Processing (nur Bots?) •  Logstash Input-Filter-Output Skript •  bin/logstash agent -f stdin-es.conf < /logs/googlebot.log
  • 8.
    Mögliche Inputs undFilter 8 Googlebot Analyse | Valentin Pletzer | BurdaForward •  Inputs •  stdin •  file •  http •  RabbitMQ, ZeroMQ •  ... •  Filter •  dns (reverse lookup) •  geoip (Karte) •  grok (Parser mit Regex) •  mutate (Replace, Split etc) •  useragent •  ...
  • 9.
    Dashboard einrichten 9 GooglebotAnalyse | Valentin Pletzer | BurdaForward •  Kibana starten (bin/kibana) •  Kibana öffnen (http://localhost:5601/) •  Visualisierungen anlegen & speichern •  Dashboard anlegen & speichern
  • 10.
    Mögliche Fragestellungen 10 GooglebotAnalyse | Valentin Pletzer | BurdaForward •  Welche URL wird am häufigsten gecrawlt? •  Kann die robots.txt immer einwandfrei gecrawlt werden? •  Wie groß ist das größte File und brauche ich das? •  Wie groß ist die durchschnittliche HTML-Filegröße? •  Wird mein HTML größer oder kleiner? •  Wann wurde ein bestimmte URL zum letzten Mal gecrawlt? •  Wie viele 404, 301 etc liefere ich dem Bot aus? •  Welche Googlebots kommen überhaupt? •  Wie viele (unique) URLs wurden gecrawlt? •  Wann waren Ausfälle (5xx) und wird wieder normal gecrawlt? •  Drosselt der Googlebot zu bestimmten Tageszeiten?
  • 11.