log_variant


Description:

[ Version ( since = "2.50" ) ]
public void log_variant (string? log_domain, LogLevelFlags log_levels, Variant fields)

Log a message with structured data, accepting the data within a [type@GLib.

Variant].

This version is especially useful for use in other languages, via introspection.

The only mandatory item in the fields dictionary is the `"MESSAGE"` which must contain the text shown to the user.

The values in the fields dictionary are likely to be of type `G_VARIANT_TYPE_STRING`. Array of bytes (`G_VARIANT_TYPE_BYTESTRING`) is also supported. In this case the message is handled as binary and will be forwarded to the log writer as such. The size of the array should not be higher than `G_MAXSSIZE`. Otherwise it will be truncated to this size. For other types [method@GLib.Variant.print] will be used to convert the value into a string.

For more details on its usage and about the parameters, see [func@GLib.log_structured].

Parameters:

log_domain

log domain, usually `G_LOG_DOMAIN`

fields

a dictionary ([type@GLib.Variant] of the type `G_VARIANT_TYPE_VARDICT`) containing the key-value pairs of message data.

log_level

log level, either from [type@GLib.LogLevelFlags], or a user-defined level


Namespace: GLib
Package: glib-2.0