(* GLogWriterFunc) (
  GLogLevelFlags log_level,
  const GLogField* fields,
  gsize n_fields,
  gpointer user_data


Writer function for log entries. A log entry is a collection of one or more GLogFields, using the standard field names from journal specification. See g_log_structured() for more information.

Writer functions must ignore fields which they do not recognise, unless they can write arbitrary binary output, as field values may be arbitrary binary.

log_level is guaranteed to be included in fields as the PRIORITY field, but is provided separately for convenience of deciding whether or where to output the log entry.

Writer functions should return G_LOG_WRITER_HANDLED if they handled the log message successfully or if they deliberately ignored it. If there was an error handling the message (for example, if the writer function is meant to send messages to a remote logging server and there is a network error), it should return G_LOG_WRITER_UNHANDLED. This allows writer functions to be chained and fall back to simpler handlers in case of failure.

Available since:2.50


log_level GLogLevelFlags

Log level of the message.

fields An array of GLogField

Fields forming the message.

 The length of the array is specified in the n_fields argument.
 The data is owned by the caller of the function.
n_fields gsize

Number of fields.

user_data gpointer

User data passed to g_log_set_writer_func()

 The argument can be NULL.

Return value

Returns: GLogWriterOutput

G_LOG_WRITER_HANDLED if the log entry was handled successfully; G_LOG_WRITER_UNHANDLED otherwise.