X-Git-Url: http://git.liburcu.org/?a=blobdiff_plain;f=lttng-events.c;h=4588153bf2d76a3f1fe8190a9119b69285ca0b6c;hb=c88f762e4c83e3ff148f8e7962d3d9c52d64ff4e;hp=2e7670b8c9d4b59d05c2fb02568326921da7bc3f;hpb=3eb95be4200bdde975385f3acd00943ec3b78cc2;p=lttng-modules.git diff --git a/lttng-events.c b/lttng-events.c index 2e7670b8..4588153b 100644 --- a/lttng-events.c +++ b/lttng-events.c @@ -28,6 +28,7 @@ #include #include #include +#include #include /* for wrapper_vmalloc_sync_all() */ #include @@ -2514,15 +2515,16 @@ error: } static -int print_metadata_session_name(struct lttng_session *session) +int print_metadata_escaped_field(struct lttng_session *session, const char *field, + const char *field_value) { int ret; - ret = lttng_metadata_printf(session, " trace_name = \""); + ret = lttng_metadata_printf(session, " %s = \"", field); if (ret) goto error; - ret = print_escaped_ctf_string(session, session->name); + ret = print_escaped_ctf_string(session, field_value); if (ret) goto error; @@ -2541,6 +2543,7 @@ int _lttng_session_metadata_statedump(struct lttng_session *session) { unsigned char *uuid_c = session->uuid.b; unsigned char uuid_s[37], clock_uuid_s[BOOT_ID_LEN]; + const char *product_uuid; struct lttng_channel *chan; struct lttng_event *event; int ret = 0; @@ -2619,11 +2622,26 @@ int _lttng_session_metadata_statedump(struct lttng_session *session) if (ret) goto end; - ret = print_metadata_session_name(session); + ret = print_metadata_escaped_field(session, "trace_name", session->name); if (ret) goto end; + ret = print_metadata_escaped_field(session, "trace_creation_datetime", + session->creation_time); + if (ret) + goto end; + + /* Add the product UUID to the 'env' section */ + product_uuid = dmi_get_system_info(DMI_PRODUCT_UUID); + if (product_uuid) { + ret = lttng_metadata_printf(session, + " product_uuid = \"%s\";\n", + product_uuid + ); + if (ret) + goto end; + } - /* Close env */ + /* Close the 'env' section */ ret = lttng_metadata_printf(session, "};\n\n"); if (ret) goto end;