OpFlex Framework
1.7.0
|
Interface for a log message handler for the OpFlex framework. More...
#include <opflex/logging/OFLogHandler.h>
Public Types | |
enum | Level { TRACE, DEBUG7, DEBUG6, DEBUG5, DEBUG4, DEBUG3, DEBUG2, DEBUG1, DEBUG0, INFO, WARNING, ERROR, FATAL, NO_LOGGING } |
Log levels for OpFlex framework logging. | |
Public Member Functions | |
OFLogHandler (Level logLevel) __attribute__((no_instrument_function)) | |
Allocate a log handler that will log any messages with equal or greater severity than the specified log level. More... | |
virtual void | handleMessage (const std::string &file, const int line, const std::string &function, const Level level, const std::string &message)=0 |
Process a single log message. More... | |
virtual bool | shouldEmit (const Level level) __attribute__((no_instrument_function)) |
Check whether we should attempt to log at the given log level. More... | |
Static Public Member Functions | |
static void | registerHandler (OFLogHandler &handler) __attribute__((no_instrument_function)) |
Register a custom handler as the log handler. More... | |
static OFLogHandler * | getHandler () __attribute__((no_instrument_function)) |
Get the currently-active log handler. More... | |
Protected Attributes | |
Level | logLevel_ |
The log level for this logger. | |
Interface for a log message handler for the OpFlex framework.
You will need to implement this interface and register your implementation if you want to log to your custom handler.
By default, the OpFlex Framework will simply log to standard out at INFO or above, but you can override this behavior by registering a customer log handler.
If you simply want to disable logging, the simplest way is as follows:
opflex::logging::OFLogHandler::OFLogHandler | ( | Level | logLevel | ) |
Allocate a log handler that will log any messages with equal or greater severity than the specified log level.
logLevel | the minimum log level |
|
static |
Get the currently-active log handler.
Returns the default handler if there is no active custom handler.
|
pure virtual |
Process a single log message.
This file is called synchronously from the thread that is doing the logging and is unsynchronized.
file | the file that performs the logging |
line | the line number for the log message |
function | the name of the function that's performing the logging |
level | the log level of the log message |
message | the formatted message to log |
Implemented in opflex::logging::StdOutLogHandler.
|
static |
Register a custom handler as the log handler.
You must ensure that the custom log handler is not deallocated before any framework components that might need to log to it.
handler | the customer handler to register |
|
virtual |
Check whether we should attempt to log at the given log level.
level | the level of a message to log |