On a installé logstash récemment et c'est vraiment génial pour la visualisation 
de logs. Pas testé par contre pour l'envoi de mail (qu'on gère par ailleurs 
avec un système qui ne dédoublonne pas, ce qui nous a permis de nous faire 
blacklister les ips de nos serveurs par gmail :( ).

Ca demande un peu de boulot pour être exploité pleinement, et un peu de tuning 
(surtout au niveau d'ElasticSearch). Au final, on a du passer un peu moins 
d'une semaine (pour une archi d'une dizaine de machines, avec un volume de logs 
"moyen"), plus autant pour ajouter des identifiants de requêtes dans notre 
appli web pour arriver à corréler les différents logs.

Avec un peu de background sur le tuning Java, et un ou deux articles de blog, 
ça passe.

A noter que c'est relativement consommateur de ressources (CPU/RAM), maintenant 
YMMV.

JFB

Le 3 sept. 2013 à 13:32, Rémy Sanchez a écrit :

> Bonjour à tous,
> 
> Je déploie actuellement avec grand plaisir des applications Java en charge de 
> faire du traitement de masse sur des données.
> 
> Actuellement, on utilise log4j pour sortir ces logs, configuré grosso modo 
> comme tel :
> 
>   * Les messages de debug sortent dans un fichier debug.log qui est rotaté 
> dès qu'il dépasse 100 Mo
>   * Les messages autres vont dans des fichiers info.log, warn.log, error.log, 
> qui sont rotatés sur base de la date
>   * Quand une erreur arrive, on envoie un mail
> 
> Donc pour les messages de debug, tout va bien, par contre pour le reste 
> comment dire... Quand on a une erreur lancée pour chaque ligne de donnée (ce 
> qui est arrivé plus d'une fois), alors on a grosso modo la même exception qui 
> monte des millions de fois (mais pas exactement la même).
> 
> Cela a plusieurs effets de bord : d'une part faire tomber le serveur mail, et 
> d'autre part saturer les disques et empêcher le fonctionnement du service.
> 
> L'idée serait donc d'externaliser la gestion des logs pour 2 raisons :
> 
>   * Empêcher que les logs nuisent à l'exécution du programme en saturant 
> l'espace disque
>   * Être capable de gérer les erreurs par lot : si une même exception arrive 
> 2 millions de fois, générer une seule alerte et l'envoyer par mail à la team 
> de maintenance, par exemple
> 
> Je cherche donc un système en mesure d'absorber des gros pics de logs, de ne 
> pas consommer des gigas et des gigas de stockage, et de préférence avec une 
> interface de visualisation web sympa. Possiblement compatible avec syslog ou 
> en tout cas avec un appender log4j.
> 
> Pour l'instant j'ai trouvé http://three.kibana.org/ qui semble convenir 
> approximativement à ces besoins. Il y a aussi un vieux thread 
> (http://www.frsag.org/pipermail/frsag/2010-July/000226.html) qui liste pas 
> mal de choses, mais qui n'ont pas l'air d'être adaptées au besoin de traiter 
> les choses en bloc. À part Facebook Scribe éventuellement, mais ça a l'air 
> trop perché par rapport au temps que je peux y consacrer.
> 
> Je suis preneur de toute proposition/retour d'expérience :)
> 
> Merci,
> -- 
> Rémy Sanchez
> http://hyperthese.net/
> _______________________________________________
> Liste de diffusion du FRsAG
> http://www.frsag.org/

_______________________________________________
Liste de diffusion du FRsAG
http://www.frsag.org/

Répondre à