http://www.brownbaglunch.fr/baggers.html#Olivier_BAZOUD
Monitoring: regarder votre application à la loupe!
Regarder fonctionner votre application sous toutes les coutures.
Nous verrons comment alimenter Graphite, un excellent outil de métrologie, dans une architecture java (je peux m'adapter à vote langage): collectd, jmxtrans, metrics, statsd,.. afin de prendre des mesures au niveau du système, de l'applicatif, des batchs et du métier (KPI). Nous aborderons ensuite la corrélation tous ces métriques de façon très visuelle et comment réveiller vos sysadmins en cas d'urgence ;)
6. Principes
Comment se comporte mon application en
production ?
Comment analyser les problèmes ?
Comment anticiper le “capacity planning” de la
plate forme ?
7. Principes
● Business
○ nombre de virements, de connexions, workflow
● Application
○ consommation mémoire, temps de traitement
● Systèmes
○ load, swap, interface réseau
9. Principes
“Si ce n’est pas monitoré, ça ne va pas en
production!”
“Si tu ne peux pas le mesurer, tu ne peux pas l’
améliorer!”
“Metric Driven Development”
23. Carbon
● MAX_CACHE_SIZE
○ Taille du cache
● MAX_CREATES_PER_MINUTE
○ Permet de réduire les I/O
● MAX_UPDATES_PER_SECOND
○ Permet de réduire les I/O
24. Whisper
“Whisper is a fixed-size database (...). It provides fast,
reliable storage of numeric data over time. Whisper allows
for higher resolution (seconds per point) of recent data to
degrade into lower resolutions for long-term retention of
historical data.”
http://graphite.readthedocs.org/en/latest/whisper.html
25. Whisper
Création à la demande
1 métric = 1 fichier
Métric “dev.ks.load.shortterm”
-> ./dev/ks/load/shortterm.wsp
27. Whisper
[carbon]
pattern = ^load.
retentions = 10s:1d,1m:7d,4m:30d
1 point toutes les 10s pendant 1 jour
1 point par minute pendant 7 jours
1 point tous les 4 minutes pendant 30 jours
346
Ko
28. Whisper
[carbon]
pattern = ^load.
retentions = 10s:1d,30s:7d,5m:30d,15m:1y
1 point toutes les 10s pendant 1 jour
1 point toutes les 30s pendant 7 jours
1 point tous les 4 minutes pendant 30 jours
1 point tous les 15 minutes pendant 1 an
850
Ko
29. Whisper
[carbon]
pattern = ^load.
retentions = 10s:1d,30s:30d,2m:1y
1 point toutes les 10s pendant 1 jour
1 point toutes les 30s pendant 30 jours
1 point tous les 2 minutes pendant 1 an
4.1 M
o
30. Whisper
[carbon]
pattern = ^load.
retentions = 10s:15d,30s:180d,1m:3y
1 point toutes les 10s pendant 15 jours
1 point toutes les 30s pendant 180 jours
1 point tous les minutes pendant 3 ans
26 M
o