MySQL 8.0.40
Source Code Documentation
|
Windows specific logging handler(sink) that writes the logs to the Windows eventlog. More...
#include <eventlog_plugin.h>
Public Member Functions | |
EventlogHandler (bool format_messages, mysql_harness::logging::LogLevel level, bool create_registry_entries=true, const std::string event_source_name=kDefaultEventSourceName) | |
Constructor. More... | |
~EventlogHandler () override | |
void | reopen (const std::string dst="") override |
Request to reopen underlying log sink. More... | |
Public Member Functions inherited from mysql_harness::logging::Handler | |
Handler ()=default | |
Handler (const Handler &)=default | |
Handler & | operator= (const Handler &)=default |
virtual | ~Handler ()=default |
void | handle (const Record &record) |
void | set_level (LogLevel level) |
LogLevel | get_level () const |
void | set_timestamp_precision (LogTimestampPrecision precision) |
bool | has_logged () const |
check if the handler has logged at least one record. More... | |
Static Public Attributes | |
static constexpr const char * | kDefaultName = "eventlog" |
Static Public Attributes inherited from mysql_harness::logging::Handler | |
static constexpr const char * | kDefaultName = nullptr |
Default identifier. More... | |
Private Member Functions | |
void | do_log (const mysql_harness::logging::Record &record) noexcept override |
Log message handler primitive. More... | |
Private Attributes | |
HANDLE | event_src_ |
const std::string | event_source_name_ |
Additional Inherited Members | |
Protected Member Functions inherited from mysql_harness::logging::Handler | |
std::string | format (const Record &record) const |
Handler (bool format_messages, LogLevel level, LogTimestampPrecision timestamp_precision) | |
void | has_logged (bool v) |
Windows specific logging handler(sink) that writes the logs to the Windows eventlog.
EventlogHandler::EventlogHandler | ( | bool | format_messages, |
mysql_harness::logging::LogLevel | level, | ||
bool | create_registry_entries = true , |
||
const std::string | event_source_name = kDefaultEventSourceName |
||
) |
Constructor.
It adds appropriate entries to the Windows registry and registers the Router as the event log messages source.
format_messages | flag indicating if the logged messages should be formatted |
level | minimal log level for the handler |
create_registry_entries | If true, initialisation will perform extra steps (which may potentially fail, thus you might prefer to disable them for mission-critical usage) |
event_source_name | the event source name for event log entries |
std::runtime_error | on WinAPI calls failures |
|
override |
|
overrideprivatevirtualnoexcept |
Log message handler primitive.
This member function is implemented by subclasses to properly log a record wherever it need to be logged. If it is not possible to log the message properly, an exception should be thrown and will be caught by the caller.
record | Record containing information about the message. |
Implements mysql_harness::logging::Handler.
|
inlineoverridevirtual |
Request to reopen underlying log sink.
Should be no-op for handlers NOT writing to a file. Useful for log rotation, when the logger got the signal with the request to reopen the file. Provide a destination filename for the old file for file based handlers.
Implements mysql_harness::logging::Handler.
|
private |
|
private |
|
staticconstexpr |