mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-04-22 04:38:55 +02:00
log: Construct global logger on first use
This commit is contained in:
@@ -357,9 +357,9 @@ static void EnableOrDisableLogCategories(UniValue cats, bool enable) {
|
||||
|
||||
bool success;
|
||||
if (enable) {
|
||||
success = g_logger->EnableCategory(cat);
|
||||
success = LogInstance().EnableCategory(cat);
|
||||
} else {
|
||||
success = g_logger->DisableCategory(cat);
|
||||
success = LogInstance().DisableCategory(cat);
|
||||
}
|
||||
|
||||
if (!success) {
|
||||
@@ -405,14 +405,14 @@ UniValue logging(const JSONRPCRequest& request)
|
||||
);
|
||||
}
|
||||
|
||||
uint32_t original_log_categories = g_logger->GetCategoryMask();
|
||||
uint32_t original_log_categories = LogInstance().GetCategoryMask();
|
||||
if (request.params[0].isArray()) {
|
||||
EnableOrDisableLogCategories(request.params[0], true);
|
||||
}
|
||||
if (request.params[1].isArray()) {
|
||||
EnableOrDisableLogCategories(request.params[1], false);
|
||||
}
|
||||
uint32_t updated_log_categories = g_logger->GetCategoryMask();
|
||||
uint32_t updated_log_categories = LogInstance().GetCategoryMask();
|
||||
uint32_t changed_log_categories = original_log_categories ^ updated_log_categories;
|
||||
|
||||
// Update libevent logging if BCLog::LIBEVENT has changed.
|
||||
@@ -421,8 +421,8 @@ UniValue logging(const JSONRPCRequest& request)
|
||||
// Throw an error if the user has explicitly asked to change only the libevent
|
||||
// flag and it failed.
|
||||
if (changed_log_categories & BCLog::LIBEVENT) {
|
||||
if (!UpdateHTTPServerLogging(g_logger->WillLogCategory(BCLog::LIBEVENT))) {
|
||||
g_logger->DisableCategory(BCLog::LIBEVENT);
|
||||
if (!UpdateHTTPServerLogging(LogInstance().WillLogCategory(BCLog::LIBEVENT))) {
|
||||
LogInstance().DisableCategory(BCLog::LIBEVENT);
|
||||
if (changed_log_categories == BCLog::LIBEVENT) {
|
||||
throw JSONRPCError(RPC_INVALID_PARAMETER, "libevent logging cannot be updated when using libevent before v2.1.1.");
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user