功能
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。数据归函数的调用者所有。