Boost logo

Boost :

Subject: Re: [boost] [log] Boost.Log formal review closing down
From: vicente.botet (vicente.botet_at_[hidden])
Date: 2010-03-17 17:45:32


----- Original Message -----
From: "Andrey Semashev" <andrey.semashev_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Wednesday, March 17, 2010 10:23 PM
Subject: Re: [boost] [log] Boost.Log formal review closing down

>
> On 03/18/2010 12:13 AM, vicente.botet wrote:
>> * __FILE__, __LINE__ and BOOST_CURRENT_FUNCTION are missing. The
>> library could make easier is use.
>
> Is this what you mean?
>
> http://boost-log.sourceforge.net/libs/log/doc/html/log/detailed/attributes.html#log.detailed.attributes.named_scope

I had read this already. If I have understoo you need two lines to add __FILE__, __LINE__ and BOOST_CURRENT_FUNCTION

            BOOST_LOG_NAMED_SCOPE("case 1");
            BOOST_LOG(lg) << "Some log record";

>> * all the logger macros should be able to generate non executed code.
>> In addition I would like that the filter on the severity be included
>> in. For example
>>
>> #if defined (BOOST_LOG_INCLUDED) #define BOOST_LOG_SEV(LOGGER,
>> SEVERITY) if (true); else logger #else #define BOOST_LOG_SEV(LOGGER,
>> SEVERITY) \ if (boost::log::core::enabled(SEVERITY) //as before
>> #endif
>>
>> The rational is that most of the time the application should not
>> trace nothing, except critical errors. This test avoids the
>> construction of the record_log, and evaluate the filter on all the
>> attributes.
>
> Answered on this earlier.

Not completly. You have no commented about testing severity before creating the log record. Could you comment?

>> In the same way the severity is a special attribute, we
>> need special filter for this attribute.
>
> Severity is not special. Users of channel-based logging would argue the
> same way about channels and they would be right.

And maybe they are right. The macro that using channel should check first if the channel is enabled.
 
>> - Did you try to use the library? With what compiler? Did you have
>> any problems?
>>
>> Yes I have tried to use it on cygwin-gcc3.4, and mingw-gcc4.4 and
>> msvc Express 9. * I get a lot of errors on cygwin as there are nor
>> wide characters on cygwin. * when compiling the library using just
>> bjam, there were alot of errors because the library don't work on
>> single_threaded environements. * when I compiled with msvc on mingw,
>> a 'mc' tool was missing * when I compiled with gcc4.4 on mingw the
>> same issue with 'mc'
>>
>> Unfortunatelly these error have not been corrected.
>
> mc is not present in MinGW, GCC or MSVC Express. You would have to
> install Windows SDK or full MSVC to get it. The mc tool is expected to
> be present in MSVC 10 Express. I have added the note to the docs in
> trunk about that.

What this tool does, and can the library work without? Could this be used conditionaly?

Vicente


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk