diff options
author | Aleksander Morgado <aleksandermj@chromium.org> | 2022-09-13 12:09:58 +0000 |
---|---|---|
committer | Aleksander Morgado <aleksandermj@chromium.org> | 2022-11-04 13:12:56 +0000 |
commit | 3592d98e5b9458a8b9ac9a42a130ec552e0d74da (patch) | |
tree | ba3757e63634085b3b800e3e042bd9e5c8af5c2f /src/mm-log.h | |
parent | afb89bb78f4d099e114a76bce6096150d1bf1325 (diff) |
log: new methods to check if a given logging level is enabled
There are certain cases where we perform a lot of data processing just
for logging purposes. Having methods that let us know whether a given
log level will be printed before doing all that data processing is useful.
Diffstat (limited to 'src/mm-log.h')
-rw-r--r-- | src/mm-log.h | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/src/mm-log.h b/src/mm-log.h index 4102c3b6..b0dab7ae 100644 --- a/src/mm-log.h +++ b/src/mm-log.h @@ -50,6 +50,12 @@ typedef enum { # define mm_dbg(...) mm_obj_dbg (NULL, ## __VA_ARGS__ ) #endif +#define mm_log_err_enabled() mm_log_check_level_enabled (MM_LOG_LEVEL_ERR) +#define mm_log_warn_enabled() mm_log_check_level_enabled (MM_LOG_LEVEL_WARN) +#define mm_log_msg_enabled() mm_log_check_level_enabled (MM_LOG_LEVEL_MSG) +#define mm_log_info_enabled() mm_log_check_level_enabled (MM_LOG_LEVEL_INFO) +#define mm_log_debug_enabled() mm_log_check_level_enabled (MM_LOG_LEVEL_DEBUG) + void _mm_log (gpointer obj, const gchar *module, const gchar *loc, @@ -58,16 +64,17 @@ void _mm_log (gpointer obj, const gchar *fmt, ...) __attribute__((__format__ (__printf__, 6, 7))); -gboolean mm_log_set_level (const gchar *level, - GError **error); -gboolean mm_log_setup (const gchar *level, - const gchar *log_file, - gboolean log_journal, - gboolean show_ts, - gboolean rel_ts, - gboolean show_personal_info, - GError **error); -void mm_log_shutdown (void); +gboolean mm_log_set_level (const gchar *level, + GError **error); +gboolean mm_log_setup (const gchar *level, + const gchar *log_file, + gboolean log_journal, + gboolean show_ts, + gboolean rel_ts, + gboolean show_personal_info, + GError **error); +gboolean mm_log_check_level_enabled (MMLogLevel level); +void mm_log_shutdown (void); /* Helper used when printing a string that may be personal * info. Depending on the settings, we may print it as-is, |