+|`n`
+|Message
+|`+const struct bt_message *+`
+
+|`i`
+|Message iterator
+|`struct bt_message_iterator *`
+
+|`C`
+|Component class
+|`struct bt_component_class *`
+
+|`c`
+|Component
+|`+const struct bt_component *+`
+
+|`p`
+|Port
+|`+const struct bt_port *+`
+
+|`x`
+|Connection
+|`+const struct bt_connection *+`
+
+|`g`
+|Graph
+|`+const struct bt_graph *+`
+
+|`z`
+|Interrupter
+|`+struct bt_interrupter *+`
+
+|`l`
+|Plugin
+|`+const struct bt_plugin *+`
+
+|`r`
+|Error cause
+|`+const struct bt_error_cause *+`
+
+|`o`
+|Object pool
+|`+const struct bt_object_pool *+`
+
+|`O`
+|Object
+|`+const struct bt_object *+`
+|===
+
+Conversion specifier examples:
+
+* `%!f`
+* `%![my-event-]+e`
+* `%!t`
+* `%!+F`
+
+The ``, `` string (comma and space) is printed between individual
+fields, but **not after the last one**. Therefore, you must put this
+separator in the format string between two conversion specifiers, for
+example:
+
+[source,c]
+----
+BT_LIB_LOGW("Message: count=%u, %!E, %!+K", count, event_class, clock_class);
+----
+
+Example with a custom prefix:
+
+[source,c]
+----
+BT_LIB_LOGI("Some message: %![ec-a-]e, %![ec-b-]+e", ec_a, ec_b);
+----
+
+It is safe to pass `NULL` as any Babeltrace object parameter: the macros
+only print its null address.
+
+WARNING: Build-time `printf()` format checks are disabled for the
+`+BT_LIB_LOG*()+` macros because there are custom conversion specifiers,
+so make sure to test your logging statements.
+
+
+[[comp-logging-statements]]
+==== Component-specific logging statement macros
+
+There are available logging macros for components. They prepend a prefix
+including the component's name to the logging message.
+
+See <<logging-instrument-c-file-compcls,Instrument a component class C
+source file>> and <<logging-instrument-h-file-compcls,Instrument a
+component class C header file>> to learn how to be able to use the
+following macros.
+
+The component logging statement macros are named `+BT_COMP_LOG*()+`
+instead of `+BT_LOG*()+`:
+
+`+BT_COMP_LOGT("format string", ...)+`::
+ Component trace logging statement.
+
+`+BT_COMP_LOGD("format string", ...)+`::
+ Component debug logging statement.
+
+`+BT_COMP_LOGI("format string", ...)+`::
+ Component info logging statement.
+
+`+BT_COMP_LOGW("format string", ...)+`::
+ Component warning logging statement.
+
+`+BT_COMP_LOGE("format string", ...)+`::
+ Component error logging statement.
+
+`+BT_COMP_LOGF("format string", ...)+`::
+ Component fatal logging statement.
+
+`+BT_COMP_LOGT_STR("preformatted string")+`::
+ Component preformatted string trace logging statement.
+
+`+BT_COMP_LOGD_STR("preformatted string")+`::
+ Component preformatted string debug logging statement.
+
+`+BT_COMP_LOGI_STR("preformatted string")+`::
+ Component preformatted string info logging statement.
+
+`+BT_COMP_LOGW_STR("preformatted string")+`::
+ Component preformatted string warning logging statement.
+
+`+BT_COMP_LOGE_STR("preformatted string")+`::
+ Component preformatted string error logging statement.
+
+`+BT_COMP_LOGF_STR("preformatted string")+`::
+ Component preformatted string fatal logging statement.
+
+`+BT_COMP_LOGT_ERRNO("initial message", "format string", ...)+`::
+ Component `errno` string trace logging statement.
+
+`+BT_COMP_LOGD_ERRNO("initial message", "format string", ...)+`::
+ Component `errno` string debug logging statement.
+
+`+BT_COMP_LOGI_ERRNO("initial message", "format string", ...)+`::
+ Component `errno` string info logging statement.
+
+`+BT_COMP_LOGW_ERRNO("initial message", "format string", ...)+`::
+ Component `errno` string warning logging statement.
+
+`+BT_COMP_LOGE_ERRNO("initial message", "format string", ...)+`::
+ Component `errno` string error logging statement.
+
+`+BT_COMP_LOGF_ERRNO("initial message", "format string", ...)+`::
+ Component `errno` string fatal logging statement.
+
+`+BT_COMP_LOGT_MEM(data_ptr, data_size, "format string", ...)+`::
+ Component memory trace logging statement.
+
+`+BT_COMP_LOGD_MEM(data_ptr, data_size, "format string", ...)+`::
+ Component memory debug logging statement.
+
+`+BT_COMP_LOGI_MEM(data_ptr, data_size, "format string", ...)+`::
+ Component memory info logging statement.
+
+`+BT_COMP_LOGW_MEM(data_ptr, data_size, "format string", ...)+`::
+ Component memory warning logging statement.
+
+`+BT_COMP_LOGE_MEM(data_ptr, data_size, "format string", ...)+`::
+ Component memory error logging statement.
+
+`+BT_COMP_LOGF_MEM(data_ptr, data_size, "format string", ...)+`::
+ Component memory fatal logging statement.