Log Monitoring für schnelles Feedback bei eBay Kleinanzeigen Manuel Aldana (eBay Kleinanzeigen)
Log Monitoring für schnelles Feedback
bei eBay Kleinanzeigen
Manuel Aldana (eBay Kleinanzeigen)
Change / Feedback
flickr.com/photos/tomas_sobek/4649690892/
Change / Feedback
FeedbackReaktion
Change
BenutzerAktivität
(inhouse/extern)
Logs
Daten-Zustand(Persistence)
Operativ(I/O, CPU, Capacity)
Log Typen
HTTPLogs (Apache,
Varnish)
ApplikationsLogs
JavaScriptLogs
FachlicheLogs
OSLogs
BackendLogs (DB, Search, ..)
- Log-Qualität- Sichtbarkeit ?
Old-School Logs-Scanning
tail –f, cat, grep Hölle
Post-Rollout Donkey
Pre-Rollout Post-Rollout
tsss....
Feedback damals
Angry Mean Face by David Rader IICC license: flickr.com/photos/chexed/1546923312
Ops
Benutzer
Customer Support
Risikominimierung
Pre-Rollout Post-Rollout
Verbessertes Log-Feedback
Verbesserte Log-Infrastruktur
● Zentralisiert ● Aggregiert ● Nahe-Echtzeit● Suchbar● Sichtbar für alle!!
APP X APP Y APP Z
Zentralisiert Speicher + Suche
Feedback heute
Log Daten
● Log-Beschreibung● Version● Applikationstyp ● Stack-trace● User-Agent● URL● Cookies● Timestamp● Payload (POST, PUT)● Level: INFO,WARN,ERROR● Log-Source (z.B. MeineKlasse.java:78)
Vorstellung Log-Tool...
Log Incident-Code
Implementierungsdetails
● log4j-Appender● graylog2-server (0.9.5)● MongoDB storage● Indexer per Groovy + Cron-Job● Solr Suche (3.2)● Inhouse frontend (Play framework 1.2.4,
google-charts)
Custom
Reuse
Custom
Reuse
Log Stats Production
● ~40 "loggende" Server-Instanzen● ~600K Logs pro Tag● minutenaktuell● insg. 17M Logs bei 1 Monat Historie● Index Größe Solr: 5 GB● MongoDB Size: 25 GB (klein angesetzt)
Alarming
● Monitoring != Alarming● Alarm on ERROR threshold● Nagios Plugin● Mail Event● Audio Event
Ausblick
● Solr Upgrade● HTTP + SMTP-Logs nachziehen● Event-Basiertes tracking (statsd, graphite)● Alarming erweitern
Technologie Alternativen
Logster
Eure Anforderungen...
● Wie lange Release Zyklen?● Wie große Change-Sets?● Echtzeitanforderung wie hoch?● Kritikalität von Bugs?● Traffic wie hoch?● Log-Volumen wie hoch?
Zusammenfassung
● Logs wichtige Informationsquelle und KEIN Abfallprodukt
● Erkenne DEINE verursachten Probleme schneller als andere
● Suboptimale Lösung besser als gar keine● Reuse wenn möglich, Anpassen falls nötig
Pre-Rollout Post-Rollout
Produktion Mindset
tsss....
Berlin DevOpsDays 201327./28.05.2012, Urania Berlinhttp://devopsdays.org/events/2013-berlin/
Call for proposalsopen until [email protected]
DevOpsDays - The conference that brings Dev & Ops together
Nicht verzagen, sondern fragen...
Surprise, we are hiring...
1) Senior Frontend Developer
2) Senior Android Developer
1st Contact: [email protected]
Kurze Referenz Folien: Log-Tool
(da Live-Toolvorstellung nicht in Folien übernommen werden kann)
Log Beschreibung
● For overview and Log Hotspots Classification● Normalization (e.g. cut id‘s)
App Version
● Identify issues for new rollout-version
Release Vergleich
Log-Timestamp
● Time related patterns
User-Agent
● Knowing your client... (web + API)
● Reproktion per copy/paste URL + params● Payload Probleme identifizieren
Path + Payload
Stack Trace
● Call-Trace nachvollziehen
Log-Source
● Schnell direkt im Code nachvollziehen