功能
GLiblog_set_handler
声明 [src]
guint
g_log_set_handler (
const gchar* log_domain,
GLogLevelFlags log_levels,
GLogFunc log_func,
gpointer user_data
)
说明 [src]
设置域和一组日志级别的日志处理程序。
要处理致命消息和递归消息,log_levels
参数必须与 G_LOG_FLAG_FATAL
和 G_LOG_FLAG_RECURSION
字节标志结合使用。
请注意,因为 G_LOG_LEVEL_ERROR
日志级别始终很致命,如果你想要为此日志级别设置处理程序,必须将其与 G_LOG_FLAG_FATAL
结合使用。
如果启用了结构化日志记录,此功能不起作用;请参阅 使用结构化日志记录。
log_domain
参数可以设置为 NULL
或空字符串,以使用默认应用程序域。
以下是对默认域中所有警告消息添加日志处理程序的示例
g_log_set_handler (NULL, G_LOG_LEVEL_WARNING | G_LOG_FLAG_FATAL
| G_LOG_FLAG_RECURSION, my_log_handler, NULL);
以下示例为 GTK 中的所有严重消息添加日志处理程序
g_log_set_handler ("Gtk", G_LOG_LEVEL_CRITICAL | G_LOG_FLAG_FATAL
| G_LOG_FLAG_RECURSION, my_log_handler, NULL);
以下示例为 GLib 中的所有消息添加日志处理程序
g_log_set_handler ("GLib", G_LOG_LEVEL_MASK | G_LOG_FLAG_FATAL
| G_LOG_FLAG_RECURSION, my_log_handler, NULL);
此功能不直接提供给语言绑定。
此功能的实现由语言绑定中的 g_log_set_handler_full()
提供。
参数
log_domain
-
类型:
const gchar*
日志域应用程序域。
参数可以是 NULL
。数据归函数的调用者所有。 该值是 NUL 终止的 UTF-8 字符串。 log_levels
-
类型:
GLogLevelFlags
要为其应用日志处理程序的日志级别。要同时处理致命消息和递归消息,将日志级别与
G_LOG_FLAG_FATAL
和G_LOG_FLAG_RECURSION
字节标志结合使用。 log_func
-
类型:
GLogFunc
日志处理程序函数。
user_data
-
类型:
gpointer
传递给日志处理程序的数据。
参数可以是 NULL
。数据归函数的调用者所有。