Main Page
Namespaces
Classes
Files
Related Pages
Examples
Boost Logging Library v2 - Table of contents
Boost Logging Library v2 : Introduction
Motivation
Feedback
Changelog
Current Version: v0.22.7, 3 feb 2008
Acknowledgements
Breaking changes
v0.20.1 - Use filters/loggers as functions: append "()" to them
Compilers it's been tested on
Compiling with bjam
Getting started - the Fast & Furious way...
Logging workflow
Introduction
Step 1: Filtering the message
Step 2: Processing the message
Step 2A: Gathering the message
Step 2B: Writing the message
Workflow when using formatters and destinations
Usage Scenarios (together with code)
Scenario 1, Common usage: Multiple levels, One logging class, Multiple destinations.
Scenario 2: No levels, One Logger, One Filter
Scenario 3: Fastest: Multiple Loggers, One Filter, Not using Formatters/Destinations, Not using <<
Your Scenario : Find out logger and filter, based on your application's needs
A more complex example - a Line counter application
A starter project...
Tutorial
Headers to #include
Declaring/Defining your logger/filter class(es)
Defining macros to do logging
Choose the best filter/logger class, based on your application's needs
Scoped Logs
Using tags
Profiling - computing the time spent while logging
Special Cases
Caching messages before logs are initialized
Using the logger(s)/filter(s) after they've been destroyed
Advanced concepts
Thread safety
Internationalization - Using Unicode charaters
Macros - how, what for?
The if-else strategy
Using the macros supplied with the library
Macros to declare/define logs/filters
Macros that help you define your own macros for logging
Setting formatter/destination strings
Using tags
Macros that treat compilation time
Macros that deal with Thread Specific Storage
The logger class
The gather namespace
The writer namespace
The filters (namespace)
Concepts as namespaces
General concepts
Logging (Processing) the message
Manipulator concepts
Writing concepts
Formatters and/or destinations (manipulators namespace)
Common base class
Specifying the base class
Default base classes
Using manipulators that come with the library
Creating your own formatter and/or destination class(es)
Sharing data for manipulator classes
Modifying a formatter's state
Modifying a destination's state
Formatters
Destinations
Boost.Logging Requirements
TODOs
Rationales
Known Issues
Copyright
John Torjo
© 2007
Have a question/ suggestion/ comment? Send me
feedback