On Feb 2, 2005, at 11:01 PM, Kadarkarai, Prabhakar (Prabhakar) wrote:
Hello All,
Right now I can send String message to LogCxx methods.
logger->debug(_T(“Debug Message”));
Can I send anything other than String to LogCXX methods ? If so, how?
Any example would be great.
The CVS HEAD logging methods and macros will accept char*, wchar_t*,
std::string and std::wstring. If the demand is there, this could be
expanded to include other string types (for example, MFC's CString)
with appropriate #ifdef's.
The logstream class defined in <log4cxx/stream.h> can take advantage of
any insertion operators into std::ostream<wchar_t>. There is an
example of this usage in the unit tests for the logstream in
tests/streamtestcase.cpp. In this example, an insertion operator is
defined that will throw an exception if called and is used to check
that short-circuiting is effective. However, the pattern should work
as well for real insertion operations.
There are recurrent questions on the log4j mailing lists about "binary"
messages (aka those that can not be represented effectively as
strings). I assume examples of this would include pictures or audio
clips. However, messages are assumed to be adequate represented as
strings and no compelling use cases for binary logging have emerged.
If this is your interest, please follow up on log4j user or logging
general as log4cxx won't break new ground on this.
|