MISE À JOUR: Depuis la rédaction de ce texte, j'ai remplacé Boost.Log par mon propre système de journalisation personnalisé, principalement parce que j'ai décidé de me débarrasser de toutes les dépendances à Boost dans tous mes projets pour diverses raisons. Si vous êtes à l'aise avec l'utilisation de Boost, je suppose que Boost.Log reste un choix valable, à en juger par la réponse de Klaim.
Mon expérience avec Boost.Log en 2010 suit.
J'ai intégré avec succès Boost.Log dans mon moteur de jeu et je ne peux en dire que du bien. Bien sûr, il est un peu tôt pour l'utiliser, car la version 2 sera la version effective qui deviendra la version officielle de Boost.Log.
Sachez que la version "1.0" disponible n'est pas entretenue. Pour recevoir des mises à jour, vous devez utiliser la version de développement (trunk) qui peut devenir instable. Prenez cela en compte si vous envisagez d'utiliser cette version dans des projets sérieux. Si vous n'avez pas peur d'utiliser des versions de développement ou de futurs changements, alors foncez. C'est vraiment agréable à utiliser tel quel dans son état actuel.
J'ai longtemps pensé que le système de journalisation hiérarchique de log4j/log4cxx était supérieur, mais Boost.Log m'a fait changer d'avis. Le filtrage et les attributs sont bien plus flexibles.
La conception des sorties séparées par frontend/backend facilite vraiment l'ajout de backends supplémentaires. Plus besoin de se soucier des problèmes de synchronisation ou de filtrage, car cela est géré par le frontend. La bibliothèque est également fournie avec de nombreux backends déjà disponibles, pour les fichiers rotatifs, la console, syslog, le registre d'événements Windows, etc.
J'ai écrit mes propres backends de sortie ; l'un va vers la console du jeu et l'autre vers une sorte de système de notification pour les événements plus sérieux. C'était plus facile que je ne le pensais, je l'ai mis en place en quelques minutes seulement.
Enfin, le mainteneur/développeur est vraiment serviable également. Vous obtiendrez beaucoup d'aide sur les forums du projet. Il a corrigé deux bugs (dont un majeur) ce week-end que j'ai signalés :-)