The documentation is oriented to both new and experienced library users. However,
users are expected to be familiar with commonly used Boost components, such
as shared_ptr
, make_shared
(see Boost.SmartPtr),
and function
(Boost.Function).
Some parts of the documentation will refer to other Boost libraries, as needed.
If this is your first experience with the library, it is recommended to read the Design overview section for a first glance at the library's capabilities and architecture. The Installation and Tutorial sections will help to get started experimenting with the library. The tutorial gives an overview of the library features with sample code snippets. Some tutorial steps are presented in two forms: simple and advanced. The simple form typically describes the most common and easy way to do the task and it is being recommended to be read by new users. The advanced form usually gives an expanded way to do the same thing but with an in-depth explanation and the ability to do some extra customization. This form may come in handy for more experienced users and should generally be read if the easy way does not satisfy your needs.
Besides the tutorial there is an Detailed features description chapter. This part gives descriptions of other tools provided by the library that were not covered by the tutorial. This chapter is best read on a case by case basis.
Last, but not least, there is a reference which gives the formal descriptions of library components.
To keep the code snippets in this documentation simple, the following namespace aliases are assumed to be defined:
namespace logging = boost::log; namespace sinks = boost::log::sinks; namespace src = boost::log::sources; namespace fmt = boost::log::formatters; namespace flt = boost::log::filters; namespace attrs = boost::log::attributes; namespace keywords = boost::log::keywords;
Aside from these namespaces the library also provides boost::log::experimental
namespace. Tools defined in
this namespace, as the naming implies, are not stable and thus are not advertised
for production use. However, adventurous developers are encouraged to explore
fresh features that appear in that namespace. Due to lack of their stability,
these instruments are not covered by this documentation.