#include <babeltrace2/babeltrace.h>
-#define BT_COMP_LOG_SELF_COMP (trace->fs_sink->self_comp)
-#define BT_LOG_OUTPUT_LEVEL (trace->log_level)
-#define BT_LOG_TAG "PLUGIN/SINK.CTF.FS/TRACE"
-#include "logging/comp-logging.h"
-
#include "common/assert.h"
#include "fs-sink-ctf-meta.hpp"
* the format.
*/
if (!g_time_val_from_iso8601(datetime, &tv)) {
- BT_COMP_LOGI("Couldn't parse datetime as ISO 8601: date=\"%s\"", datetime);
+ BT_CPPLOGI_SPEC(trace->logger, "Couldn't parse datetime as ISO 8601: date=\"{}\"",
+ datetime);
goto end;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(tc, "tracer_buffering_id");
if (!v || !bt_value_is_signed_integer(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"tracer_buffering_id\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger,
+ "Couldn't get environment value: name=\"tracer_buffering_id\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(tc, "architecture_bit_width");
if (!v || !bt_value_is_signed_integer(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"architecture_bit_width\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger,
+ "Couldn't get environment value: name=\"architecture_bit_width\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(tc, "procname");
if (!v || !bt_value_is_string(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"procname\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger, "Couldn't get environment value: name=\"procname\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(tc, "vpid");
if (!v || !bt_value_is_signed_integer(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"vpid\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger, "Couldn't get environment value: name=\"vpid\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(tc, "vpid_datetime");
if (!v || !bt_value_is_string(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"vpid_datetime\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger,
+ "Couldn't get environment value: name=\"vpid_datetime\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(trace->ir_trace, "tracer_name");
if (!v || !bt_value_is_string(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"tracer_name\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger, "Couldn't get environment value: name=\"tracer_name\"");
goto error;
}
tracer_name = bt_value_string_get(v);
if (!g_str_equal(tracer_name, "lttng-ust") && !g_str_equal(tracer_name, "lttng-modules")) {
- BT_COMP_LOGI("Unrecognized tracer name: name=\"%s\"", tracer_name);
+ BT_CPPLOGI_SPEC(trace->logger, "Unrecognized tracer name: name=\"{}\"", tracer_name);
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(trace->ir_trace, "tracer_major");
if (!v || !bt_value_is_signed_integer(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"tracer_major\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger, "Couldn't get environment value: name=\"tracer_major\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(trace->ir_trace, "tracer_minor");
if (!v || !bt_value_is_signed_integer(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"tracer_minor\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger, "Couldn't get environment value: name=\"tracer_minor\"");
goto error;
}
tracer_minor = bt_value_integer_signed_get(v);
if (!(tracer_major >= 3 || (tracer_major == 2 && tracer_minor >= 11))) {
- BT_COMP_LOGI("Unsupported LTTng version for automatic trace path: major=%" PRId64
- ", minor=%" PRId64,
- tracer_major, tracer_minor);
+ BT_CPPLOGI_SPEC(trace->logger,
+ "Unsupported LTTng version for automatic trace path: major={}, minor={}",
+ tracer_major, tracer_minor);
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(trace->ir_trace, "hostname");
if (!v || !bt_value_is_string(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"tracer_hostname\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger,
+ "Couldn't get environment value: name=\"tracer_hostname\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(trace->ir_trace, "trace_name");
if (!v || !bt_value_is_string(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"trace_name\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger, "Couldn't get environment value: name=\"trace_name\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(trace->ir_trace,
"trace_creation_datetime");
if (!v || !bt_value_is_string(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"trace_creation_datetime\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger,
+ "Couldn't get environment value: name=\"trace_creation_datetime\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(trace->ir_trace, "domain");
if (!v || !bt_value_is_string(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"domain\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger, "Couldn't get environment value: name=\"domain\"");
goto error;
}
v = bt_trace_borrow_environment_entry_value_by_name_const(trace->ir_trace,
"tracer_buffering_scheme");
if (!v || !bt_value_is_string(v)) {
- BT_COMP_LOGI_STR("Couldn't get environment value: name=\"tracer_buffering_scheme\"");
+ BT_CPPLOGI_STR_SPEC(trace->logger,
+ "Couldn't get environment value: name=\"tracer_buffering_scheme\"");
goto error;
}
}
} else {
/* Unknown buffering scheme. */
- BT_COMP_LOGI("Unknown buffering scheme: tracer_buffering_scheme=\"%s\"",
- tracer_buffering_scheme);
+ BT_CPPLOGI_SPEC(trace->logger,
+ "Unknown buffering scheme: tracer_buffering_scheme=\"{}\"",
+ tracer_buffering_scheme);
goto error;
}
} else if (!g_str_equal(domain, "kernel")) {
/* Unknown domain. */
- BT_COMP_LOGI("Unknown domain: domain=\"%s\"", domain);
+ BT_CPPLOGI_SPEC(trace->logger, "Unknown domain: domain=\"{}\"", domain);
goto error;
}
BT_ASSERT(trace->metadata_path);
fh = fopen(trace->metadata_path->str, "wb");
if (!fh) {
- BT_COMP_LOGF_ERRNO("In trace destruction listener: "
- "cannot open metadata file for writing",
- ": path=\"%s\"", trace->metadata_path->str);
+ BT_CPPLOGF_ERRNO_SPEC(trace->logger,
+ "In trace destruction listener: "
+ "cannot open metadata file for writing",
+ ": path=\"{}\"", trace->metadata_path->str);
bt_common_abort();
}
len = fwrite(tsdl->str, sizeof(*tsdl->str), tsdl->len, fh);
if (len != tsdl->len) {
- BT_COMP_LOGF_ERRNO("In trace destruction listener: "
- "cannot write metadata file",
- ": path=\"%s\"", trace->metadata_path->str);
+ BT_CPPLOGF_ERRNO_SPEC(trace->logger,
+ "In trace destruction listener: "
+ "cannot write metadata file",
+ ": path=\"{}\"", trace->metadata_path->str);
bt_common_abort();
}
int ret = fclose(fh);
if (ret != 0) {
- BT_COMP_LOGW_ERRNO("In trace destruction listener: "
- "cannot close metadata file",
- ": path=\"%s\"", trace->metadata_path->str);
+ BT_CPPLOGW_ERRNO_SPEC(trace->logger,
+ "In trace destruction listener: "
+ "cannot close metadata file",
+ ": path=\"{}\"", trace->metadata_path->str);
}
}
struct fs_sink_trace *fs_sink_trace_create(struct fs_sink_comp *fs_sink, const bt_trace *ir_trace)
{
int ret;
- fs_sink_trace *trace = new fs_sink_trace;
+ fs_sink_trace *trace = new fs_sink_trace {fs_sink->logger};
bt_trace_add_listener_status trace_status;
- trace->log_level = fs_sink->log_level;
trace->fs_sink = fs_sink;
trace->ir_trace = ir_trace;
trace->ir_trace_destruction_listener_id = UINT64_C(-1);
BT_ASSERT(trace->path);
ret = g_mkdir_with_parents(trace->path->str, 0755);
if (ret) {
- BT_COMP_LOGE_ERRNO("Cannot create directories for trace directory", ": path=\"%s\"",
- trace->path->str);
+ BT_CPPLOGE_ERRNO_SPEC(trace->logger, "Cannot create directories for trace directory",
+ ": path=\"{}\"", trace->path->str);
goto error;
}
#include <babeltrace2/babeltrace.h>
-#define BT_COMP_LOG_SELF_COMP (fs_sink->self_comp)
-#define BT_LOG_OUTPUT_LEVEL (fs_sink->log_level)
-#define BT_LOG_TAG "PLUGIN/SINK.CTF.FS"
-#include "logging/comp-logging.h"
-
#include "common/assert.h"
+#include "cpp-common/vendor/fmt/format.h"
#include "ctfser/ctfser.h"
#include "plugins/common/param-validation/param-validation.h"
ret = g_mkdir_with_parents(fs_sink->output_dir_path->str, 0755);
if (ret) {
- BT_COMP_LOGE_APPEND_CAUSE_ERRNO(fs_sink->self_comp,
- "Cannot create directories for output directory",
- ": output-dir-path=\"%s\"", fs_sink->output_dir_path->str);
+ BT_CPPLOGE_ERRNO_APPEND_CAUSE_SPEC(
+ fs_sink->logger, "Cannot create directories for output directory",
+ ": output-dir-path=\"{}\"", fs_sink->output_dir_path->str);
status = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_ERROR;
goto end;
}
bt_param_validation_validate(params, fs_sink_params_descr, &validation_error);
if (validation_status == BT_PARAM_VALIDATION_STATUS_VALIDATION_ERROR) {
status = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_ERROR;
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "%s", validation_error);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "{}", validation_error);
goto end;
} else if (validation_status == BT_PARAM_VALIDATION_STATUS_MEMORY_ERROR) {
status = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_MEMORY_ERROR;
bt_self_component_add_port_status add_port_status;
struct fs_sink_comp *fs_sink = NULL;
bt_self_component *self_comp = bt_self_component_sink_as_self_component(self_comp_sink);
- bt_logging_level log_level =
- bt_component_get_logging_level(bt_self_component_as_component(self_comp));
- fs_sink = new fs_sink_comp;
- fs_sink->log_level = log_level;
- fs_sink->self_comp = self_comp;
+ fs_sink = new fs_sink_comp {bt2::SelfSinkComponent {self_comp_sink}};
fs_sink->output_dir_path = g_string_new(NULL);
status = configure_component(fs_sink, params);
if (status != BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_OK) {
if (fs_sink->assume_single_trace &&
g_file_test(fs_sink->output_dir_path->str, G_FILE_TEST_EXISTS)) {
- BT_COMP_LOGE_APPEND_CAUSE(self_comp,
- "Single trace mode, but output path exists: output-path=\"%s\"",
- fs_sink->output_dir_path->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger, "Single trace mode, but output path exists: output-path=\"{}\"",
+ fs_sink->output_dir_path->str);
status = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_ERROR;
goto end;
}
fs_sink->traces = g_hash_table_new_full(g_direct_hash, g_direct_equal, NULL,
(GDestroyNotify) fs_sink_trace_destroy);
if (!fs_sink->traces) {
- BT_COMP_LOGE_APPEND_CAUSE(self_comp, "Failed to allocate one GHashTable.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to allocate one GHashTable.");
status = BT_COMPONENT_CLASS_INITIALIZE_METHOD_STATUS_MEMORY_ERROR;
goto end;
}
bt_self_component_sink_add_input_port(self_comp_sink, in_port_name, NULL, NULL);
if (add_port_status != BT_SELF_COMPONENT_ADD_PORT_STATUS_OK) {
status = (bt_component_class_initialize_method_status) add_port_status;
- BT_COMP_LOGE_APPEND_CAUSE(self_comp, "Failed to add input port.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to add input port.");
goto end;
}
trace = (fs_sink_trace *) g_hash_table_lookup(fs_sink->traces, ir_trace);
if (G_UNLIKELY(!trace)) {
if (fs_sink->assume_single_trace && g_hash_table_size(fs_sink->traces) > 0) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Single trace mode, but getting more than one trace: "
- "stream-name=\"%s\"",
- bt_stream_get_name(ir_stream));
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger,
+ "Single trace mode, but getting more than one trace: "
+ "stream-name=\"{}\"",
+ bt2c::maybeNull(bt_stream_get_name(ir_stream)));
goto end;
}
stream = borrow_stream(fs_sink, ir_stream);
if (G_UNLIKELY(!stream)) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to borrow stream.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to borrow stream.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
ret = try_translate_event_class_trace_ir_to_ctf_ir(fs_sink, stream->sc,
bt_event_borrow_class_const(ir_event), &ec);
if (ret) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to translate event class to CTF IR.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to translate event class to CTF IR.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
*/
ret = fs_sink_stream_close_packet(stream, NULL);
if (ret) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to close packet.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to close packet.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
/* Stream's packet is not currently opened: open it */
ret = fs_sink_stream_open_packet(stream, NULL, NULL);
if (ret) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to open packet.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to open packet.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
BT_ASSERT_DBG(stream->packet_state.is_open);
ret = fs_sink_stream_write_event(stream, cs, ir_event, ec);
if (G_UNLIKELY(ret)) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to write event.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to write event.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
stream = borrow_stream(fs_sink, ir_stream);
if (G_UNLIKELY(!stream)) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to borrow stream.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to borrow stream.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
}
if (stream->discarded_events_state.beginning_cs != expected_cs) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Incompatible discarded events message: "
- "unexpected beginning time: "
- "beginning-cs-val=%" PRIu64 ", "
- "expected-beginning-cs-val=%" PRIu64 ", "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- stream->discarded_events_state.beginning_cs, expected_cs,
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger,
+ "Incompatible discarded events message: "
+ "unexpected beginning time: "
+ "beginning-cs-val={}, "
+ "expected-beginning-cs-val={}, "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ stream->discarded_events_state.beginning_cs, expected_cs,
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
* this case.
*/
if (stream->prev_packet_state.end_cs == UINT64_C(-1)) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Incompatible discarded packets message "
- "occurring before the stream's first packet: "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger,
+ "Incompatible discarded packets message "
+ "occurring before the stream's first packet: "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
if (stream->discarded_packets_state.beginning_cs != stream->prev_packet_state.end_cs) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Incompatible discarded packets message: "
- "unexpected beginning time: "
- "beginning-cs-val=%" PRIu64 ", "
- "expected-beginning-cs-val=%" PRIu64 ", "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- stream->discarded_packets_state.beginning_cs,
- stream->prev_packet_state.end_cs, bt_stream_get_id(ir_stream),
- bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger,
+ "Incompatible discarded packets message: "
+ "unexpected beginning time: "
+ "beginning-cs-val={}, "
+ "expected-beginning-cs-val={}, "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ stream->discarded_packets_state.beginning_cs, stream->prev_packet_state.end_cs,
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
expected_end_cs = bt_clock_snapshot_get_value(cs);
if (stream->discarded_packets_state.end_cs != expected_end_cs) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Incompatible discarded packets message: "
- "unexpected end time: "
- "end-cs-val=%" PRIu64 ", "
- "expected-end-cs-val=%" PRIu64 ", "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- stream->discarded_packets_state.end_cs, expected_end_cs,
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger,
+ "Incompatible discarded packets message: "
+ "unexpected end time: "
+ "end-cs-val={}, "
+ "expected-end-cs-val={}, "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ stream->discarded_packets_state.end_cs, expected_end_cs,
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
ret = fs_sink_stream_open_packet(stream, cs, ir_packet);
if (ret) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to open packet.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to open packet.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
stream = borrow_stream(fs_sink, ir_stream);
if (G_UNLIKELY(!stream)) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to borrow stream.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to borrow stream.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
expected_cs = bt_clock_snapshot_get_value(cs);
if (stream->discarded_events_state.end_cs != expected_cs) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Incompatible discarded events message: "
- "unexpected end time: "
- "end-cs-val=%" PRIu64 ", "
- "expected-end-cs-val=%" PRIu64 ", "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- stream->discarded_events_state.end_cs, expected_cs,
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger,
+ "Incompatible discarded events message: "
+ "unexpected end time: "
+ "end-cs-val={}, "
+ "expected-end-cs-val={}, "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ stream->discarded_events_state.end_cs, expected_cs, bt_stream_get_id(ir_stream),
+ bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
ret = fs_sink_stream_close_packet(stream, cs);
if (ret) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to close packet.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to close packet.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
BT_ASSERT(!bt_stream_class_supports_discarded_packets(ir_sc));
if (!fs_sink->ignore_discarded_events && bt_stream_class_supports_discarded_events(ir_sc)) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Unsupported stream: "
- "stream does not support packets, "
- "but supports discarded events: "
- "stream-addr=%p, "
- "stream-id=%" PRIu64 ", "
- "stream-name=\"%s\"",
- ir_stream, bt_stream_get_id(ir_stream),
- bt_stream_get_name(ir_stream));
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger,
+ "Unsupported stream: "
+ "stream does not support packets, "
+ "but supports discarded events: "
+ "stream-addr={}, "
+ "stream-id={}, "
+ "stream-name=\"{}\"",
+ fmt::ptr(ir_stream), bt_stream_get_id(ir_stream),
+ bt2c::maybeNull(bt_stream_get_name(ir_stream)));
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
if (!fs_sink->ignore_discarded_events &&
bt_stream_class_discarded_events_have_default_clock_snapshots(ir_sc) &&
!packets_have_beginning_end_cs) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Unsupported stream: discarded events have "
- "default clock snapshots, but packets have no "
- "beginning and/or end default clock snapshots: "
- "stream-addr=%p, "
- "stream-id=%" PRIu64 ", "
- "stream-name=\"%s\"",
- ir_stream, bt_stream_get_id(ir_stream),
- bt_stream_get_name(ir_stream));
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger,
+ "Unsupported stream: discarded events have "
+ "default clock snapshots, but packets have no "
+ "beginning and/or end default clock snapshots: "
+ "stream-addr={}, "
+ "stream-id={}, "
+ "stream-name=\"{}\"",
+ fmt::ptr(ir_stream), bt_stream_get_id(ir_stream),
+ bt2c::maybeNull(bt_stream_get_name(ir_stream)));
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
if (!fs_sink->ignore_discarded_packets &&
bt_stream_class_discarded_packets_have_default_clock_snapshots(ir_sc) &&
!packets_have_beginning_end_cs) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Unsupported stream: discarded packets have "
- "default clock snapshots, but packets have no "
- "beginning and/or end default clock snapshots: "
- "stream-addr=%p, "
- "stream-id=%" PRIu64 ", "
- "stream-name=\"%s\"",
- ir_stream, bt_stream_get_id(ir_stream),
- bt_stream_get_name(ir_stream));
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger,
+ "Unsupported stream: discarded packets have "
+ "default clock snapshots, but packets have no "
+ "beginning and/or end default clock snapshots: "
+ "stream-addr={}, "
+ "stream-id={}, "
+ "stream-name=\"{}\"",
+ fmt::ptr(ir_stream), bt_stream_get_id(ir_stream),
+ bt2c::maybeNull(bt_stream_get_name(ir_stream)));
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
stream = borrow_stream(fs_sink, ir_stream);
if (!stream) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to borrow stream.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to borrow stream.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
- BT_COMP_LOGI("Created new, empty stream file: "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGI_SPEC(fs_sink->logger,
+ "Created new, empty stream file: "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
end:
return status;
stream = borrow_stream(fs_sink, ir_stream);
if (!stream) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to borrow stream.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to borrow stream.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
int ret = fs_sink_stream_close_packet(stream, NULL);
if (ret) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to close packet.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to close packet.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
}
- BT_COMP_LOGI("Closing stream file: "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGI_SPEC(fs_sink->logger,
+ "Closing stream file: "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
/*
* This destroys the stream object and frees all its resources,
stream = borrow_stream(fs_sink, ir_stream);
if (!stream) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to borrow stream.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to borrow stream.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
if (fs_sink->ignore_discarded_events) {
- BT_COMP_LOGI("Ignoring discarded events message: "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGI_SPEC(fs_sink->logger,
+ "Ignoring discarded events message: "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
goto end;
}
if (stream->discarded_events_state.in_range) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Unsupported contiguous discarded events message: "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger,
+ "Unsupported contiguous discarded events message: "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
* time.
*/
if (stream->packet_state.is_open && stream->sc->discarded_events_has_ts) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Unsupported discarded events message with "
- "default clock snapshots occurring within a packet: "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger,
+ "Unsupported discarded events message with "
+ "default clock snapshots occurring within a packet: "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
stream = borrow_stream(fs_sink, ir_stream);
if (!stream) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to borrow stream.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to borrow stream.");
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
if (fs_sink->ignore_discarded_packets) {
- BT_COMP_LOGI("Ignoring discarded packets message: "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGI_SPEC(fs_sink->logger,
+ "Ignoring discarded packets message: "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
goto end;
}
if (stream->discarded_packets_state.in_range) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Unsupported contiguous discarded packets message: "
- "stream-id=%" PRIu64 ", stream-name=\"%s\", "
- "trace-name=\"%s\", path=\"%s/%s\"",
- bt_stream_get_id(ir_stream), bt_stream_get_name(ir_stream),
- bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream)),
- stream->trace->path->str, stream->file_name->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(
+ fs_sink->logger,
+ "Unsupported contiguous discarded packets message: "
+ "stream-id={}, stream-name=\"{}\", "
+ "trace-name=\"{}\", path=\"{}/{}\"",
+ bt_stream_get_id(ir_stream), bt2c::maybeNull(bt_stream_get_name(ir_stream)),
+ bt2c::maybeNull(bt_trace_get_name(bt_stream_borrow_trace_const(ir_stream))),
+ stream->trace->path->str, stream->file_name->str);
status = BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_ERROR;
goto end;
}
next_status = bt_message_iterator_next(fs_sink->upstream_iter, &msgs, &msg_count);
if (next_status < 0) {
status = (bt_component_class_sink_consume_method_status) next_status;
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Failed to get next message from upstream iterator.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger,
+ "Failed to get next message from upstream iterator.");
goto end;
}
break;
case BT_MESSAGE_TYPE_MESSAGE_ITERATOR_INACTIVITY:
/* Ignore */
- BT_COMP_LOGD_STR("Ignoring message iterator inactivity message.");
+ BT_CPPLOGD_STR_SPEC(fs_sink->logger,
+ "Ignoring message iterator inactivity message.");
break;
case BT_MESSAGE_TYPE_STREAM_BEGINNING:
status = handle_stream_beginning_msg(fs_sink, msg);
BT_MESSAGE_PUT_REF_AND_RESET(msgs[i]);
if (status != BT_COMPONENT_CLASS_SINK_CONSUME_METHOD_STATUS_OK) {
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp,
- "Failed to handle message: "
- "generated CTF traces could be incomplete: "
- "output-dir-path=\"%s\"",
- fs_sink->output_dir_path->str);
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger,
+ "Failed to handle message: "
+ "generated CTF traces could be incomplete: "
+ "output-dir-path=\"{}\"",
+ fs_sink->output_dir_path->str);
goto error;
}
}
&fs_sink->upstream_iter);
if (msg_iter_status != BT_MESSAGE_ITERATOR_CREATE_FROM_SINK_COMPONENT_STATUS_OK) {
status = (bt_component_class_sink_graph_is_configured_method_status) msg_iter_status;
- BT_COMP_LOGE_APPEND_CAUSE(fs_sink->self_comp, "Failed to create upstream iterator.");
+ BT_CPPLOGE_APPEND_CAUSE_SPEC(fs_sink->logger, "Failed to create upstream iterator.");
goto end;
}
#include <babeltrace2/babeltrace.h>
-#define BT_COMP_LOG_SELF_COMP (ctx->self_comp)
-#define BT_LOG_OUTPUT_LEVEL (ctx->log_level)
-#define BT_LOG_TAG "PLUGIN/SINK.CTF.FS/TRANSLATE-TRACE-IR-TO-CTF-IR"
-#include "logging/comp-logging.h"
-
#include "common/assert.h"
#include "common/common.h"
+#include "cpp-common/bt2/field-path.hpp"
+#include "cpp-common/bt2c/fmt.hpp"
#include "fs-sink-ctf-meta.hpp"
#include "fs-sink.hpp"
struct TraceIrToCtfIrCtx
{
- bt_logging_level log_level = BT_LOGGING_LEVEL_NONE;
- bt_self_component *self_comp = nullptr;
+ explicit TraceIrToCtfIrCtx(const bt2c::Logger& parentLogger) :
+ logger {parentLogger, "PLUGIN/SINK.CTF.FS/TRANSLATE-TRACE-IR-TO-CTF-IR"}
+ {
+ }
+
+ bt2c::Logger logger;
/* Weak */
struct fs_sink_ctf_stream_class *cur_sc = nullptr;
is_reserved_member_name(name, "timestamp_end") ||
is_reserved_member_name(name, "events_discarded") ||
is_reserved_member_name(name, "packet_seq_num")) {
- BT_COMP_LOGE("Unsupported reserved TSDL structure field class member "
- "or variant field class option name: name=\"%s\"",
- name);
+ BT_CPPLOGE_SPEC(ctx->logger,
+ "Unsupported reserved TSDL structure field class member "
+ "or variant field class option name: name=\"{}\"",
+ name);
ret = -1;
goto end;
}
if (!ist_valid_identifier(field_path_elem->name->str)) {
ret = -1;
- BT_COMP_LOGE("Unsupported non-TSDL structure field class member "
- "or variant field class option name: name=\"%s\"",
- field_path_elem->name->str);
+ BT_CPPLOGE_SPEC(ctx->logger,
+ "Unsupported non-TSDL structure field class member "
+ "or variant field class option name: name=\"{}\"",
+ field_path_elem->name->str);
goto end;
}
}
memb_ir_fc = bt_field_class_structure_member_borrow_field_class_const(member);
ret = cur_path_stack_push(ctx, name, true, memb_ir_fc, &struct_fc->base);
if (ret) {
- BT_COMP_LOGE("Cannot translate structure field class member: "
- "name=\"%s\"",
- name);
+ BT_CPPLOGE_SPEC(ctx->logger,
+ "Cannot translate structure field class member: "
+ "name=\"{}\"",
+ name);
goto end;
}
ret = translate_field_class(ctx);
if (ret) {
- BT_COMP_LOGE("Cannot translate structure field class member: "
- "name=\"%s\"",
- name);
+ BT_CPPLOGE_SPEC(ctx->logger,
+ "Cannot translate structure field class member: "
+ "name=\"{}\"",
+ name);
goto end;
}
append_to_parent_field_class(ctx, &fc->base);
ret = cur_path_stack_push(ctx, NULL, false, content_ir_fc, &fc->base);
if (ret) {
- BT_COMP_LOGE_STR("Cannot translate option field class content.");
+ BT_CPPLOGE_STR_SPEC(ctx->logger, "Cannot translate option field class content.");
goto end;
}
ret = translate_field_class(ctx);
if (ret) {
- BT_COMP_LOGE_STR("Cannot translate option field class content.");
+ BT_CPPLOGE_STR_SPEC(ctx->logger, "Cannot translate option field class content.");
goto end;
}
*/
ret = cur_path_stack_push(ctx, prot_opt_name, false, opt_ir_fc, &fc->base);
if (ret) {
- BT_COMP_LOGE("Cannot translate variant field class option: "
- "name=\"%s\"",
- prot_opt_name);
+ BT_CPPLOGE_SPEC(ctx->logger,
+ "Cannot translate variant field class option: "
+ "name=\"{}\"",
+ prot_opt_name);
goto end;
}
ret = translate_field_class(ctx);
if (ret) {
- BT_COMP_LOGE("Cannot translate variant field class option: "
- "name=\"%s\"",
- prot_opt_name);
+ BT_CPPLOGE_SPEC(ctx->logger,
+ "Cannot translate variant field class option: "
+ "name=\"{}\"",
+ prot_opt_name);
goto end;
}
append_to_parent_field_class(ctx, &fc->base.base);
ret = cur_path_stack_push(ctx, NULL, false, elem_ir_fc, &fc->base.base);
if (ret) {
- BT_COMP_LOGE_STR("Cannot translate static array field class element.");
+ BT_CPPLOGE_STR_SPEC(ctx->logger, "Cannot translate static array field class element.");
goto end;
}
ret = translate_field_class(ctx);
if (ret) {
- BT_COMP_LOGE_STR("Cannot translate static array field class element.");
+ BT_CPPLOGE_STR_SPEC(ctx->logger, "Cannot translate static array field class element.");
goto end;
}
append_to_parent_field_class(ctx, &fc->base.base);
ret = cur_path_stack_push(ctx, NULL, false, elem_ir_fc, &fc->base.base);
if (ret) {
- BT_COMP_LOGE_STR("Cannot translate dynamic array field class element.");
+ BT_CPPLOGE_STR_SPEC(ctx->logger, "Cannot translate dynamic array field class element.");
goto end;
}
ret = translate_field_class(ctx);
if (ret) {
- BT_COMP_LOGE_STR("Cannot translate dynamic array field class element.");
+ BT_CPPLOGE_STR_SPEC(ctx->logger, "Cannot translate dynamic array field class element.");
goto end;
}
BT_ASSERT(ctx->cur_path->len == 0);
ret = cur_path_stack_push(ctx, NULL, false, ir_fc, NULL);
if (ret) {
- BT_COMP_LOGE("Cannot translate scope structure field class: "
- "scope=%d",
- scope);
+ BT_CPPLOGE_SPEC(ctx->logger, "Cannot translate scope structure field class: scope={}",
+ static_cast<bt2::FieldPathScope>(scope));
goto end;
}
ret =
translate_structure_field_class_members(ctx, fs_sink_ctf_field_class_as_struct(*fc), ir_fc);
if (ret) {
- BT_COMP_LOGE("Cannot translate scope structure field class: "
- "scope=%d",
- scope);
+ BT_CPPLOGE_SPEC(ctx->logger, "Cannot translate scope structure field class: scope={}",
+ static_cast<bt2::FieldPathScope>(scope));
goto end;
}
return ret;
}
-static inline void ctx_init(ctf::sink::TraceIrToCtfIrCtx *ctx, struct fs_sink_comp *fs_sink)
+static inline void ctx_init(ctf::sink::TraceIrToCtfIrCtx *ctx)
{
ctx->cur_path = g_array_new(FALSE, TRUE, sizeof(struct field_path_elem));
BT_ASSERT(ctx->cur_path);
- ctx->log_level = fs_sink->log_level;
- ctx->self_comp = fs_sink->self_comp;
}
static inline void ctx_fini(ctf::sink::TraceIrToCtfIrCtx *ctx)
struct fs_sink_ctf_event_class **out_ec)
{
int ret = 0;
- ctf::sink::TraceIrToCtfIrCtx ctx;
+ ctf::sink::TraceIrToCtfIrCtx ctx {fs_sink->logger};
struct fs_sink_ctf_event_class *ec;
BT_ASSERT(sc);
BT_ASSERT(ir_ec);
- ctx_init(&ctx, fs_sink);
+ ctx_init(&ctx);
ec = fs_sink_ctf_event_class_create(sc, ir_ec);
BT_ASSERT(ec);
ctx.cur_sc = sc;
struct fs_sink_ctf_stream_class **out_sc)
{
int ret = 0;
- ctf::sink::TraceIrToCtfIrCtx ctx;
+ ctf::sink::TraceIrToCtfIrCtx ctx {fs_sink->logger};
BT_ASSERT(trace);
BT_ASSERT(ir_sc);
- ctx_init(&ctx, fs_sink);
+ ctx_init(&ctx);
*out_sc = fs_sink_ctf_stream_class_create(trace, ir_sc);
BT_ASSERT(*out_sc);
bt_trace_borrow_environment_entry_by_index_const(ir_trace, i, &name, &val);
if (!ist_valid_identifier(name)) {
- BT_COMP_LOG_CUR_LVL(BT_LOG_ERROR, fs_sink->log_level, fs_sink->self_comp,
- "Unsupported trace class's environment entry name: "
- "name=\"%s\"",
- name);
+ BT_CPPLOGE_SPEC(fs_sink->logger,
+ "Unsupported trace class's environment entry name: "
+ "name=\"{}\"",
+ name);
goto end;
}
case BT_VALUE_TYPE_STRING:
break;
default:
- BT_COMP_LOG_CUR_LVL(BT_LOG_ERROR, fs_sink->log_level, fs_sink->self_comp,
- "Unsupported trace class's environment entry value type: "
- "type=%s",
- bt_common_value_type_string(bt_value_get_type(val)));
+ BT_CPPLOGE_SPEC(fs_sink->logger,
+ "Unsupported trace class's environment entry value type: "
+ "type={}",
+ static_cast<bt2::ValueType>(bt_value_get_type(val)));
goto end;
}
}