Log Monitoring at eBay kleinanzeigen (April 2013)

Preview:

Citation preview

Log Monitoring für schnelles Feedback

bei eBay Kleinanzeigen

Manuel Aldana (eBay Kleinanzeigen)

Zentralisiertes Loggingbei

eBay Kleinanzeigen

Manuel Aldanamaldana@ebay-kleinanzeigen.de

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 01.04.proposals-berlin-2013@devopsdays.org

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: maldana@ebay-kleinanzeigen.de

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

Recommended