70debc533b
included into the size limit. The max_size method on the stream buffer will now attempt to truncate the attached string on the character boundary. Fixed character boundary detection for multibyte encodings. Clean up the overflow flag and the max size limit after the formatter has completed. Added a test for the max_size decorator. Cleaned up some includes and reduced the dependency on Boost.Thread.
53 lines
1.3 KiB
C++
53 lines
1.3 KiB
C++
/*
|
|
* Copyright Andrey Semashev 2007 - 2015.
|
|
* Distributed under the Boost Software License, Version 1.0.
|
|
* (See accompanying file LICENSE_1_0.txt or copy at
|
|
* http://www.boost.org/LICENSE_1_0.txt)
|
|
*/
|
|
|
|
#include <boost/move/utility_core.hpp>
|
|
#include <boost/log/sources/logger.hpp>
|
|
#include <boost/log/sources/record_ostream.hpp>
|
|
#include <boost/log/sources/global_logger_storage.hpp>
|
|
#include <boost/log/utility/setup/file.hpp>
|
|
#include <boost/log/utility/setup/common_attributes.hpp>
|
|
|
|
namespace logging = boost::log;
|
|
namespace src = boost::log::sources;
|
|
namespace keywords = boost::log::keywords;
|
|
|
|
BOOST_LOG_INLINE_GLOBAL_LOGGER_DEFAULT(my_logger, src::logger_mt)
|
|
|
|
void logging_function1()
|
|
{
|
|
src::logger lg;
|
|
|
|
//[ example_tutorial_logging_manual_logging
|
|
logging::record rec = lg.open_record();
|
|
if (rec)
|
|
{
|
|
logging::record_ostream strm(rec);
|
|
strm << "Hello, World!";
|
|
strm.flush();
|
|
lg.push_record(boost::move(rec));
|
|
}
|
|
//]
|
|
}
|
|
|
|
void logging_function2()
|
|
{
|
|
src::logger_mt& lg = my_logger::get();
|
|
BOOST_LOG(lg) << "Greetings from the global logger!";
|
|
}
|
|
|
|
int main(int, char*[])
|
|
{
|
|
logging::add_file_log("sample.log");
|
|
logging::add_common_attributes();
|
|
|
|
logging_function1();
|
|
logging_function2();
|
|
|
|
return 0;
|
|
}
|