* SOFTWARE.
*/
+#define BT_COMP_LOG_SELF_COMP self_comp
#define BT_LOG_OUTPUT_LEVEL log_level
#define BT_LOG_TAG "PLUGIN/SRC.CTF.LTTNG-LIVE"
-#include "logging/log.h"
+#include "plugins/comp-logging.h"
#include <glib.h>
#include <inttypes.h>
#define SESS_NOT_FOUND_ACTION_FAIL_STR "fail"
#define SESS_NOT_FOUND_ACTION_END_STR "end"
-#define print_dbg(fmt, ...) BT_LOGD(fmt, ## __VA_ARGS__)
+#define print_dbg(fmt, ...) BT_COMP_LOGD(fmt, ## __VA_ARGS__)
static
const char *print_live_iterator_status(enum lttng_live_iterator_status status)
#define print_stream_state(live_stream_iter) \
do { \
- BT_LOGD("stream state %s last_inact_ts %" PRId64 \
+ BT_COMP_LOGD("stream state %s last_inact_ts %" PRId64 \
", curr_inact_ts %" PRId64, \
print_state(live_stream_iter), \
live_stream_iter->last_inactivity_ts, \
goto end;
}
- component = bt_component_source_as_component_const(
- bt_self_component_source_as_component_source(
- lttng_live->self_comp));
-
+ component = bt_self_component_as_component(lttng_live->self_comp);
ret = bt_component_graph_is_canceled(component);
end:
void lttng_live_destroy_trace(struct lttng_live_trace *trace)
{
bt_logging_level log_level = trace->log_level;
+ bt_self_component *self_comp = trace->self_comp;
- BT_LOGD("Destroy lttng_live_trace");
+ BT_COMP_LOGD("Destroy lttng_live_trace");
BT_ASSERT(trace->stream_iterators);
g_ptr_array_free(trace->stream_iterators, TRUE);
{
struct lttng_live_trace *trace = NULL;
bt_logging_level log_level = session->log_level;
+ bt_self_component *self_comp = session->self_comp;
trace = g_new0(struct lttng_live_trace, 1);
if (!trace) {
goto error;
}
trace->log_level = session->log_level;
+ trace->self_comp = session->self_comp;
trace->session = session;
trace->id = trace_id;
trace->trace_class = NULL;
trace->new_metadata_needed = true;
g_ptr_array_add(session->traces, trace);
- BT_LOGI("Create trace");
+ BT_COMP_LOGI("Create trace");
goto end;
error:
g_free(trace);
int ret = 0;
struct lttng_live_session *session;
bt_logging_level log_level = lttng_live_msg_iter->log_level;
+ bt_self_component *self_comp = lttng_live_msg_iter->self_comp;
session = g_new0(struct lttng_live_session, 1);
if (!session) {
}
session->log_level = lttng_live_msg_iter->log_level;
+ session->self_comp = lttng_live_msg_iter->self_comp;
session->id = session_id;
session->traces = g_ptr_array_new_with_free_func(
(GDestroyNotify) lttng_live_destroy_trace);
session->session_name = g_string_new(session_name);
BT_ASSERT(session->session_name);
- BT_LOGI("Reading from session: %" PRIu64 " hostname: %s session_name: %s",
+ BT_COMP_LOGI("Reading from session: %" PRIu64 " hostname: %s session_name: %s",
session->id, hostname, session_name);
g_ptr_array_add(lttng_live_msg_iter->sessions, session);
goto end;
error:
- BT_LOGE("Error adding session");
+ BT_COMP_LOGE("Error adding session");
g_free(session);
ret = -1;
end:
{
struct lttng_live_component *live_comp;
bt_logging_level log_level;
+ bt_self_component *self_comp;
if (!session) {
goto end;
}
log_level = session->log_level;
- BT_LOGD("Destroy lttng live session");
+ self_comp = session->self_comp;
+ BT_COMP_LOGD("Destroy lttng live session");
if (session->id != -1ULL) {
if (lttng_live_detach_session(session)) {
live_comp = session->lttng_live_msg_iter->lttng_live_comp;
if (session->lttng_live_msg_iter &&
!lttng_live_graph_is_canceled(live_comp)) {
/* Old relayd cannot detach sessions. */
- BT_LOGD("Unable to detach lttng live session %" PRIu64,
+ BT_COMP_LOGD("Unable to detach lttng live session %" PRIu64,
session->id);
}
}
struct lttng_live_stream_iterator *lttng_live_stream)
{
bt_logging_level log_level = lttng_live_stream->log_level;
+ bt_self_component *self_comp = lttng_live_stream->self_comp;
switch (lttng_live_stream->state) {
case LTTNG_LIVE_STREAM_QUIESCENT:
break;
case LTTNG_LIVE_STREAM_ACTIVE_NO_DATA:
/* Invalid state. */
- BT_LOGF("Unexpected stream state \"ACTIVE_NO_DATA\"");
+ BT_COMP_LOGF("Unexpected stream state \"ACTIVE_NO_DATA\"");
abort();
case LTTNG_LIVE_STREAM_QUIESCENT_NO_DATA:
/* Invalid state. */
- BT_LOGF("Unexpected stream state \"QUIESCENT_NO_DATA\"");
+ BT_COMP_LOGF("Unexpected stream state \"QUIESCENT_NO_DATA\"");
abort();
case LTTNG_LIVE_STREAM_EOF:
break;
struct lttng_live_stream_iterator *lttng_live_stream)
{
bt_logging_level log_level = lttng_live_msg_iter->log_level;
+ bt_self_component *self_comp = lttng_live_msg_iter->self_comp;
enum lttng_live_iterator_status ret =
LTTNG_LIVE_ITERATOR_STATUS_OK;
struct packet_index index;
int ret = 0;
bt_message_stream_activity_clock_snapshot_state sa_cs_state;
bt_logging_level log_level = lttng_live_msg_iter->log_level;
+ bt_self_component *self_comp = lttng_live_msg_iter->self_comp;
BT_ASSERT(msg);
BT_ASSERT(ts_ns);
- BT_LOGD("Getting message's timestamp: iter-data-addr=%p, msg-addr=%p, "
+ BT_COMP_LOGD("Getting message's timestamp: iter-data-addr=%p, msg-addr=%p, "
"last-msg-ts=%" PRId64, lttng_live_msg_iter, msg,
last_msg_ts_ns);
break;
default:
/* All the other messages have a higher priority */
- BT_LOGD_STR("Message has no timestamp: using the last message timestamp.");
+ BT_COMP_LOGD_STR("Message has no timestamp: using the last message timestamp.");
*ts_ns = last_msg_ts_ns;
goto end;
}
ret = bt_clock_snapshot_get_ns_from_origin(clock_snapshot, ts_ns);
if (ret) {
- BT_LOGE("Cannot get nanoseconds from Epoch of clock snapshot: "
+ BT_COMP_LOGE("Cannot get nanoseconds from Epoch of clock snapshot: "
"clock-snapshot-addr=%p", clock_snapshot);
goto error;
}
goto end;
no_clock_snapshot:
- BT_LOGD_STR("Message's default clock snapshot is missing: "
+ BT_COMP_LOGD_STR("Message's default clock snapshot is missing: "
"using the last message timestamp.");
*ts_ns = last_msg_ts_ns;
goto end;
end:
if (ret == 0) {
- BT_LOGD("Found message's timestamp: "
+ BT_COMP_LOGD("Found message's timestamp: "
"iter-data-addr=%p, msg-addr=%p, "
"last-msg-ts=%" PRId64 ", ts=%" PRId64,
lttng_live_msg_iter, msg, last_msg_ts_ns, *ts_ns);
enum bt_msg_iter_status status;
uint64_t session_idx, trace_idx;
bt_logging_level log_level = lttng_live_msg_iter->log_level;
+ bt_self_component *self_comp = lttng_live_msg_iter->self_comp;
for (session_idx = 0; session_idx < lttng_live_msg_iter->sessions->len;
session_idx++) {
case BT_MSG_ITER_STATUS_ERROR:
default:
ret = LTTNG_LIVE_ITERATOR_STATUS_ERROR;
- BT_LOGW("CTF msg iterator return an error or failed msg_iter=%p",
+ BT_COMP_LOGW("CTF msg iterator return an error or failed msg_iter=%p",
lttng_live_stream->msg_iter);
break;
}
bt_message **curr_msg)
{
bt_logging_level log_level = lttng_live_msg_iter->log_level;
+ bt_self_component *self_comp = lttng_live_msg_iter->self_comp;
enum lttng_live_iterator_status live_status;
retry:
int64_t curr_candidate_msg_ts = INT64_MAX;
uint64_t stream_iter_idx;
bt_logging_level log_level = lttng_live_msg_iter->log_level;
+ bt_self_component *self_comp = lttng_live_msg_iter->self_comp;
BT_ASSERT(live_trace);
BT_ASSERT(live_trace->stream_iterators);
stream_iter_status = lttng_live_iterator_next_on_stream(
lttng_live_msg_iter, stream_iter, &msg);
- BT_LOGD("live stream iterator returned status :%s",
+ BT_COMP_LOGD("live stream iterator returned status :%s",
print_live_iterator_status(stream_iter_status));
if (stream_iter_status == LTTNG_LIVE_ITERATOR_STATUS_END) {
stream_iter_is_ended = true;
* We received a message in the past. To ensure
* monotonicity, we can't send it forward.
*/
- BT_LOGE("Message's timestamp is less than "
+ BT_COMP_LOGE("Message's timestamp is less than "
"lttng-live's message iterator's last "
"returned timestamp: "
"lttng-live-msg-iter-addr=%p, ts=%" PRId64 ", "
lttng_live = bt_self_component_get_data(self_comp);
log_level = lttng_live->log_level;
+ self_comp = lttng_live->self_comp;
/* There can be only one downstream iterator at the same time. */
BT_ASSERT(!lttng_live->has_msg_iter);
}
lttng_live_msg_iter->log_level = lttng_live->log_level;
+ lttng_live_msg_iter->self_comp = lttng_live->self_comp;
lttng_live_msg_iter->lttng_live_comp = lttng_live;
lttng_live_msg_iter->self_msg_iter = self_msg_it;
if (lttng_live_msg_iter->sessions->len == 0) {
switch (lttng_live->params.sess_not_found_act) {
case SESSION_NOT_FOUND_ACTION_CONTINUE:
- BT_LOGI("Unable to connect to the requested live viewer "
+ BT_COMP_LOGI("Unable to connect to the requested live viewer "
"session. Keep trying to connect because of "
"%s=\"%s\" component parameter: url=\"%s\"",
SESS_NOT_FOUND_ACTION_PARAM,
lttng_live->params.url->str);
break;
case SESSION_NOT_FOUND_ACTION_FAIL:
- BT_LOGE("Unable to connect to the requested live viewer "
+ BT_COMP_LOGE("Unable to connect to the requested live viewer "
"session. Fail the message iterator"
"initialization because of %s=\"%s\" "
"component parameter: url =\"%s\"",
lttng_live->params.url->str);
goto error;
case SESSION_NOT_FOUND_ACTION_END:
- BT_LOGI("Unable to connect to the requested live viewer "
+ BT_COMP_LOGI("Unable to connect to the requested live viewer "
"session. End gracefully at the first _next() "
"call because of %s=\"%s\" component parameter: "
"url=\"%s\"", SESS_NOT_FOUND_ACTION_PARAM,
const bt_value *url_value = NULL;
const char *url;
struct live_viewer_connection *viewer_connection = NULL;
+ bt_self_component *self_comp = NULL;
url_value = bt_value_map_borrow_entry_value_const(params, URL_PARAM);
if (!url_value) {
- BT_LOGW("Mandatory `%s` parameter missing", URL_PARAM);
+ BT_COMP_LOGW("Mandatory `%s` parameter missing", URL_PARAM);
status = BT_QUERY_STATUS_INVALID_PARAMS;
goto error;
}
if (!bt_value_is_string(url_value)) {
- BT_LOGW("`%s` parameter is required to be a string value",
+ BT_COMP_LOGW("`%s` parameter is required to be a string value",
URL_PARAM);
status = BT_QUERY_STATUS_INVALID_PARAMS;
goto error;
bt_logging_level log_level, const bt_value **result)
{
bt_query_status status = BT_QUERY_STATUS_OK;
+ bt_self_component *self_comp = NULL;
if (strcmp(object, "sessions") == 0) {
status = lttng_live_query_list_sessions(params, result,
log_level);
} else {
- BT_LOGW("Unknown query object `%s`", object);
+ BT_COMP_LOGW("Unknown query object `%s`", object);
status = BT_QUERY_STATUS_INVALID_OBJECT;
goto end;
}
}
struct lttng_live_component *lttng_live_component_create(const bt_value *params,
- bt_logging_level log_level)
+ bt_logging_level log_level, bt_self_component *self_comp)
{
struct lttng_live_component *lttng_live;
const bt_value *value = NULL;
goto end;
}
lttng_live->log_level = log_level;
+ lttng_live->self_comp = self_comp;
lttng_live->max_query_size = MAX_QUERY_SIZE;
lttng_live->has_msg_iter = false;
value = bt_value_map_borrow_entry_value_const(params, URL_PARAM);
if (!value || !bt_value_is_string(value)) {
- BT_LOGW("Mandatory `%s` parameter missing or not a string",
+ BT_COMP_LOGW("Mandatory `%s` parameter missing or not a string",
URL_PARAM);
goto error;
}
lttng_live->params.sess_not_found_act =
parse_session_not_found_action_param(value);
if (lttng_live->params.sess_not_found_act == -1) {
- BT_LOGE("Unexpected value for `%s` parameter: "
+ BT_COMP_LOGE("Unexpected value for `%s` parameter: "
"value=\"%s\"", SESS_NOT_FOUND_ACTION_PARAM,
bt_value_string_get(value));
goto error;
}
} else {
- BT_LOGW("Optional `%s` parameter is missing or "
+ BT_COMP_LOGW("Optional `%s` parameter is missing or "
"not a string value. Defaulting to %s=\"%s\".",
SESS_NOT_FOUND_ACTION_PARAM,
SESS_NOT_FOUND_ACTION_PARAM,
bt_logging_level log_level = bt_component_get_logging_level(
bt_self_component_as_component(self_comp));
- lttng_live = lttng_live_component_create(params, log_level);
+ lttng_live = lttng_live_component_create(params, log_level, self_comp);
if (!lttng_live) {
ret = BT_SELF_COMPONENT_STATUS_NOMEM;
goto error;
}
- lttng_live->self_comp = self_comp_src;
if (lttng_live_graph_is_canceled(lttng_live)) {
ret = BT_SELF_COMPONENT_STATUS_END;
goto error;
}
- ret = bt_self_component_source_add_output_port(
- lttng_live->self_comp, "out",
- NULL, NULL);
+ ret = bt_self_component_source_add_output_port(self_comp_src, "out",
+ NULL, NULL);
if (ret != BT_SELF_COMPONENT_STATUS_OK) {
goto error;
}
* SOFTWARE.
*/
+#define BT_COMP_LOG_SELF_COMP (viewer_connection->self_comp)
#define BT_LOG_OUTPUT_LEVEL (viewer_connection->log_level)
#define BT_LOG_TAG "PLUGIN/SRC.CTF.LTTNG-LIVE/VIEWER"
-#include "logging/log.h"
+#include "plugins/comp-logging.h"
#include <stdio.h>
#include <stdint.h>
lttng_live_url_parts = bt_common_parse_lttng_live_url(path,
error_buf, sizeof(error_buf));
if (!lttng_live_url_parts.proto) {
- BT_LOGW("Invalid LTTng live URL format: %s", error_buf);
+ BT_COMP_LOGW("Invalid LTTng live URL format: %s", error_buf);
goto end;
}
lttng_live_url_parts.session_name = NULL;
}
- BT_LOGI("Connecting to hostname : %s, port : %d, "
+ BT_COMP_LOGI("Connecting to hostname : %s, port : %d, "
"target hostname : %s, session name : %s, "
"proto : %s",
viewer_connection->relay_hostname->str,
memcpy(cmd_buf + sizeof(cmd), &connect, sizeof(connect));
ret_len = lttng_live_send(viewer_connection, &cmd_buf, cmd_buf_len);
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending version: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error sending version: %s", bt_socket_errormsg());
goto error;
}
ret_len = lttng_live_recv(viewer_connection, &connect, sizeof(connect));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving version: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving version: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(connect));
- BT_LOGI("Received viewer session ID : %" PRIu64,
+ BT_COMP_LOGI("Received viewer session ID : %" PRIu64,
(uint64_t) be64toh(connect.viewer_session_id));
- BT_LOGI("Relayd version : %u.%u", be32toh(connect.major),
+ BT_COMP_LOGI("Relayd version : %u.%u", be32toh(connect.major),
be32toh(connect.minor));
if (LTTNG_LIVE_MAJOR != be32toh(connect.major)) {
- BT_LOGE("Incompatible lttng-relayd protocol");
+ BT_COMP_LOGE("Incompatible lttng-relayd protocol");
goto error;
}
/* Use the smallest protocol version implemented. */
return ret;
error:
- BT_LOGE("Unable to establish connection");
+ BT_COMP_LOGE("Unable to establish connection");
return -1;
}
host = gethostbyname(viewer_connection->relay_hostname->str);
if (!host) {
- BT_LOGE("Cannot lookup hostname %s",
+ BT_COMP_LOGE("Cannot lookup hostname %s",
viewer_connection->relay_hostname->str);
goto error;
}
if ((viewer_connection->control_sock = socket(AF_INET, SOCK_STREAM, 0)) == BT_INVALID_SOCKET) {
- BT_LOGE("Socket creation failed: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Socket creation failed: %s", bt_socket_errormsg());
goto error;
}
if (connect(viewer_connection->control_sock, (struct sockaddr *) &server_addr,
sizeof(struct sockaddr)) == BT_SOCKET_ERROR) {
- BT_LOGE("Connection failed: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Connection failed: %s", bt_socket_errormsg());
goto error;
}
if (lttng_live_handshake(viewer_connection)) {
error:
if (viewer_connection->control_sock != BT_INVALID_SOCKET) {
if (bt_socket_close(viewer_connection->control_sock) == BT_SOCKET_ERROR) {
- BT_LOGE("Close: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Close: %s", bt_socket_errormsg());
}
}
viewer_connection->control_sock = BT_INVALID_SOCKET;
return;
}
if (bt_socket_close(viewer_connection->control_sock) == BT_SOCKET_ERROR) {
- BT_LOGE("Close: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Close: %s", bt_socket_errormsg());
viewer_connection->control_sock = BT_INVALID_SOCKET;
}
}
len = bt_value_array_get_size(results);
if (len < 0) {
- BT_LOGE_STR("Error getting size of array.");
+ BT_COMP_LOGE_STR("Error getting size of array.");
ret = -1;
goto end;
}
map = bt_value_array_borrow_element_by_index(results, (size_t) i);
if (!map) {
- BT_LOGE_STR("Error borrowing map.");
+ BT_COMP_LOGE_STR("Error borrowing map.");
ret = -1;
goto end;
}
hostname = bt_value_map_borrow_entry_value(map, "target-hostname");
if (!hostname) {
- BT_LOGE_STR("Error borrowing \"target-hostname\" entry.");
+ BT_COMP_LOGE_STR("Error borrowing \"target-hostname\" entry.");
ret = -1;
goto end;
}
session_name = bt_value_map_borrow_entry_value(map, "session-name");
if (!session_name) {
- BT_LOGE_STR("Error borrowing \"session-name\" entry.");
+ BT_COMP_LOGE_STR("Error borrowing \"session-name\" entry.");
ret = -1;
goto end;
}
btval = bt_value_map_borrow_entry_value(map, "stream-count");
if (!btval) {
- BT_LOGE_STR("Error borrowing \"stream-count\" entry.");
+ BT_COMP_LOGE_STR("Error borrowing \"stream-count\" entry.");
ret = -1;
goto end;
}
btval = bt_value_map_borrow_entry_value(map, "client-count");
if (!btval) {
- BT_LOGE_STR("Error borrowing \"client-count\" entry.");
+ BT_COMP_LOGE_STR("Error borrowing \"client-count\" entry.");
ret = -1;
goto end;
}
map = bt_value_map_create();
if (!map) {
- BT_LOGE_STR("Error creating map value.");
+ BT_COMP_LOGE_STR("Error creating map value.");
ret = -1;
goto end;
}
if (base_url->len < 1) {
- BT_LOGE_STR("Error: base_url length smaller than 1.");
+ BT_COMP_LOGE_STR("Error: base_url length smaller than 1.");
ret = -1;
goto end;
}
ret_status = bt_value_map_insert_string_entry(map, "url", url->str);
if (ret_status != BT_VALUE_STATUS_OK) {
- BT_LOGE_STR("Error inserting \"url\" entry.");
+ BT_COMP_LOGE_STR("Error inserting \"url\" entry.");
ret = -1;
goto end;
}
ret_status = bt_value_map_insert_string_entry(map, "target-hostname",
session->hostname);
if (ret_status != BT_VALUE_STATUS_OK) {
- BT_LOGE_STR("Error inserting \"target-hostname\" entry.");
+ BT_COMP_LOGE_STR("Error inserting \"target-hostname\" entry.");
ret = -1;
goto end;
}
ret_status = bt_value_map_insert_string_entry(map, "session-name",
session->session_name);
if (ret_status != BT_VALUE_STATUS_OK) {
- BT_LOGE_STR("Error inserting \"session-name\" entry.");
+ BT_COMP_LOGE_STR("Error inserting \"session-name\" entry.");
ret = -1;
goto end;
}
ret_status = bt_value_map_insert_signed_integer_entry(
map, "timer-us", live_timer);
if (ret_status != BT_VALUE_STATUS_OK) {
- BT_LOGE_STR("Error inserting \"timer-us\" entry.");
+ BT_COMP_LOGE_STR("Error inserting \"timer-us\" entry.");
ret = -1;
goto end;
}
ret_status = bt_value_map_insert_signed_integer_entry(map,
"stream-count", streams);
if (ret_status != BT_VALUE_STATUS_OK) {
- BT_LOGE_STR("Error inserting \"stream-count\" entry.");
+ BT_COMP_LOGE_STR("Error inserting \"stream-count\" entry.");
ret = -1;
goto end;
}
ret_status = bt_value_map_insert_signed_integer_entry(map,
"client-count", clients);
if (ret_status != BT_VALUE_STATUS_OK) {
- BT_LOGE_STR("Error inserting \"client-count\" entry.");
+ BT_COMP_LOGE_STR("Error inserting \"client-count\" entry.");
ret = -1;
goto end;
}
ret_status = bt_value_array_append_element(results, map);
if (ret_status != BT_VALUE_STATUS_OK) {
- BT_LOGE_STR("Error appending map to results.");
+ BT_COMP_LOGE_STR("Error appending map to results.");
ret = -1;
}
result = bt_value_array_create();
if (!result) {
- BT_LOGE("Error creating array");
+ BT_COMP_LOGE("Error creating array");
status = BT_QUERY_STATUS_NOMEM;
goto error;
}
ret_len = lttng_live_send(viewer_connection, &cmd, sizeof(cmd));
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending cmd: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error sending cmd: %s", bt_socket_errormsg());
status = BT_QUERY_STATUS_ERROR;
goto error;
}
ret_len = lttng_live_recv(viewer_connection, &list, sizeof(list));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
status = BT_QUERY_STATUS_ERROR;
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving session list: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving session list: %s", bt_socket_errormsg());
status = BT_QUERY_STATUS_ERROR;
goto error;
}
ret_len = lttng_live_recv(viewer_connection, &lsession,
sizeof(lsession));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
status = BT_QUERY_STATUS_ERROR;
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving session: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving session: %s", bt_socket_errormsg());
status = BT_QUERY_STATUS_ERROR;
goto error;
}
ret_len = lttng_live_send(viewer_connection, &cmd, sizeof(cmd));
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending cmd: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error sending cmd: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(cmd));
ret_len = lttng_live_recv(viewer_connection, &list, sizeof(list));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving session list: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving session list: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(list));
ret_len = lttng_live_recv(viewer_connection,
&lsession, sizeof(lsession));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving session: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving session: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(lsession));
lsession.session_name[LTTNG_VIEWER_NAME_MAX - 1] = '\0';
session_id = be64toh(lsession.id);
- BT_LOGI("Adding session %" PRIu64 " hostname: %s session_name: %s",
+ BT_COMP_LOGI("Adding session %" PRIu64 " hostname: %s session_name: %s",
session_id, lsession.hostname, lsession.session_name);
if ((strncmp(lsession.session_name,
return 0;
error:
- BT_LOGE("Unable to query session ids");
+ BT_COMP_LOGE("Unable to query session ids");
return -1;
}
ret_len = lttng_live_send(viewer_connection, &cmd, sizeof(cmd));
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending cmd: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error sending cmd: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(cmd));
ret_len = lttng_live_recv(viewer_connection, &resp, sizeof(resp));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving create session reply: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving create session reply: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(resp));
if (be32toh(resp.status) != LTTNG_VIEWER_CREATE_SESSION_OK) {
- BT_LOGE("Error creating viewer session");
+ BT_COMP_LOGE("Error creating viewer session");
goto error;
}
if (lttng_live_query_session_ids(lttng_live_msg_iter)) {
struct live_viewer_connection *viewer_connection =
lttng_live_msg_iter->viewer_connection;
- BT_LOGI("Getting %" PRIu32 " new streams:", stream_count);
+ BT_COMP_LOGI("Getting %" PRIu32 " new streams:", stream_count);
for (i = 0; i < stream_count; i++) {
struct lttng_viewer_stream stream;
struct lttng_live_stream_iterator *live_stream;
ret_len = lttng_live_recv(viewer_connection, &stream, sizeof(stream));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving stream");
+ BT_COMP_LOGE("Error receiving stream");
goto error;
}
BT_ASSERT(ret_len == sizeof(stream));
ctf_trace_id = be64toh(stream.ctf_trace_id);
if (stream.metadata_flag) {
- BT_LOGI(" metadata stream %" PRIu64 " : %s/%s",
+ BT_COMP_LOGI(" metadata stream %" PRIu64 " : %s/%s",
stream_id, stream.path_name,
stream.channel_name);
if (lttng_live_metadata_create_stream(session,
ctf_trace_id, stream_id,
stream.path_name)) {
- BT_LOGE("Error creating metadata stream");
+ BT_COMP_LOGE("Error creating metadata stream");
goto error;
}
session->lazy_stream_msg_init = true;
} else {
- BT_LOGI(" stream %" PRIu64 " : %s/%s",
+ BT_COMP_LOGI(" stream %" PRIu64 " : %s/%s",
stream_id, stream.path_name,
stream.channel_name);
live_stream = lttng_live_stream_iterator_create(session,
ctf_trace_id, stream_id);
if (!live_stream) {
- BT_LOGE("Error creating streamn");
+ BT_COMP_LOGE("Error creating streamn");
goto error;
}
}
memcpy(cmd_buf + sizeof(cmd), &rq, sizeof(rq));
ret_len = lttng_live_send(viewer_connection, &cmd_buf, cmd_buf_len);
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending attach request: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error sending attach request: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == cmd_buf_len);
ret_len = lttng_live_recv(viewer_connection, &rp, sizeof(rp));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving attach response: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving attach response: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(rp));
case LTTNG_VIEWER_ATTACH_OK:
break;
case LTTNG_VIEWER_ATTACH_UNK:
- BT_LOGW("Session id %" PRIu64 " is unknown", session_id);
+ BT_COMP_LOGW("Session id %" PRIu64 " is unknown", session_id);
goto error;
case LTTNG_VIEWER_ATTACH_ALREADY:
- BT_LOGW("There is already a viewer attached to this session");
+ BT_COMP_LOGW("There is already a viewer attached to this session");
goto error;
case LTTNG_VIEWER_ATTACH_NOT_LIVE:
- BT_LOGW("Not a live session");
+ BT_COMP_LOGW("Not a live session");
goto error;
case LTTNG_VIEWER_ATTACH_SEEK_ERR:
- BT_LOGE("Wrong seek parameter");
+ BT_COMP_LOGE("Wrong seek parameter");
goto error;
default:
- BT_LOGE("Unknown attach return code %u", be32toh(rp.status));
+ BT_COMP_LOGE("Unknown attach return code %u", be32toh(rp.status));
goto error;
}
memcpy(cmd_buf + sizeof(cmd), &rq, sizeof(rq));
ret_len = lttng_live_send(viewer_connection, &cmd_buf, cmd_buf_len);
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending detach request: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error sending detach request: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == cmd_buf_len);
ret_len = lttng_live_recv(viewer_connection, &rp, sizeof(rp));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving detach response: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving detach response: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(rp));
case LTTNG_VIEWER_DETACH_SESSION_OK:
break;
case LTTNG_VIEWER_DETACH_SESSION_UNK:
- BT_LOGW("Session id %" PRIu64 " is unknown", session_id);
+ BT_COMP_LOGW("Session id %" PRIu64 " is unknown", session_id);
goto error;
case LTTNG_VIEWER_DETACH_SESSION_ERR:
- BT_LOGW("Error detaching session id %" PRIu64 "", session_id);
+ BT_COMP_LOGW("Error detaching session id %" PRIu64 "", session_id);
goto error;
default:
- BT_LOGE("Unknown detach return code %u", be32toh(rp.status));
+ BT_COMP_LOGE("Unknown detach return code %u", be32toh(rp.status));
goto error;
}
memcpy(cmd_buf + sizeof(cmd), &rq, sizeof(rq));
ret_len = lttng_live_send(viewer_connection, &cmd_buf, cmd_buf_len);
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending get_metadata request: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error sending get_metadata request: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == cmd_buf_len);
ret_len = lttng_live_recv(viewer_connection, &rp, sizeof(rp));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving get_metadata response: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving get_metadata response: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == sizeof(rp));
switch (be32toh(rp.status)) {
case LTTNG_VIEWER_METADATA_OK:
- BT_LOGD("get_metadata : OK");
+ BT_COMP_LOGD("get_metadata : OK");
break;
case LTTNG_VIEWER_NO_NEW_METADATA:
- BT_LOGD("get_metadata : NO NEW");
+ BT_COMP_LOGD("get_metadata : NO NEW");
ret = 0;
goto end;
case LTTNG_VIEWER_METADATA_ERR:
- BT_LOGD("get_metadata : ERR");
+ BT_COMP_LOGD("get_metadata : ERR");
goto error;
default:
- BT_LOGD("get_metadata : UNKNOWN");
+ BT_COMP_LOGD("get_metadata : UNKNOWN");
goto error;
}
len = be64toh(rp.len);
- BT_LOGD("Writing %" PRIu64" bytes to metadata", len);
+ BT_COMP_LOGD("Writing %" PRIu64" bytes to metadata", len);
if (len <= 0) {
goto error;
}
data = calloc(1, len);
if (!data) {
- BT_LOGE("relay data calloc: %s", strerror(errno));
+ BT_COMP_LOGE("relay data calloc: %s", strerror(errno));
goto error;
}
ret_len = lttng_live_recv(viewer_connection, data, len);
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error_free_data;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving trace packet: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving trace packet: %s", bt_socket_errormsg());
goto error_free_data;
}
BT_ASSERT(ret_len == len);
ret_len = fwrite(data, 1, len, fp);
} while (ret_len < 0 && errno == EINTR);
if (ret_len < 0) {
- BT_LOGE("Writing in the metadata fp");
+ BT_COMP_LOGE("Writing in the metadata fp");
goto error_free_data;
}
BT_ASSERT(ret_len == len);
memcpy(cmd_buf + sizeof(cmd), &rq, sizeof(rq));
ret_len = lttng_live_send(viewer_connection, &cmd_buf, cmd_buf_len);
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending get_next_index request: %s",
+ BT_COMP_LOGE("Error sending get_next_index request: %s",
bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == cmd_buf_len);
ret_len = lttng_live_recv(viewer_connection, &rp, sizeof(rp));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving get_next_index response: %s",
+ BT_COMP_LOGE("Error receiving get_next_index response: %s",
bt_socket_errormsg());
goto error;
}
{
uint64_t ctf_stream_class_id;
- BT_LOGD("get_next_index: inactive");
+ BT_COMP_LOGD("get_next_index: inactive");
memset(index, 0, sizeof(struct packet_index));
index->ts_cycles.timestamp_end = be64toh(rp.timestamp_end);
stream->current_inactivity_ts = index->ts_cycles.timestamp_end;
{
uint64_t ctf_stream_class_id;
- BT_LOGD("get_next_index: OK");
+ BT_COMP_LOGD("get_next_index: OK");
lttng_index_to_packet_index(&rp, index);
ctf_stream_class_id = be64toh(rp.stream_id);
if (stream->ctf_stream_class_id != -1ULL) {
stream->state = LTTNG_LIVE_STREAM_ACTIVE_DATA;
if (flags & LTTNG_VIEWER_FLAG_NEW_METADATA) {
- BT_LOGD("get_next_index: new metadata needed");
+ BT_COMP_LOGD("get_next_index: new metadata needed");
trace->new_metadata_needed = true;
}
if (flags & LTTNG_VIEWER_FLAG_NEW_STREAM) {
- BT_LOGD("get_next_index: new streams needed");
+ BT_COMP_LOGD("get_next_index: new streams needed");
lttng_live_need_new_streams(lttng_live_msg_iter);
}
break;
}
case LTTNG_VIEWER_INDEX_RETRY:
- BT_LOGD("get_next_index: retry");
+ BT_COMP_LOGD("get_next_index: retry");
memset(index, 0, sizeof(struct packet_index));
retstatus = LTTNG_LIVE_ITERATOR_STATUS_AGAIN;
stream->state = LTTNG_LIVE_STREAM_ACTIVE_NO_DATA;
goto end;
case LTTNG_VIEWER_INDEX_HUP:
- BT_LOGD("get_next_index: stream hung up");
+ BT_COMP_LOGD("get_next_index: stream hung up");
memset(index, 0, sizeof(struct packet_index));
index->offset = EOF;
retstatus = LTTNG_LIVE_ITERATOR_STATUS_END;
stream->state = LTTNG_LIVE_STREAM_EOF;
break;
case LTTNG_VIEWER_INDEX_ERR:
- BT_LOGE("get_next_index: error");
+ BT_COMP_LOGE("get_next_index: error");
memset(index, 0, sizeof(struct packet_index));
stream->state = LTTNG_LIVE_STREAM_ACTIVE_NO_DATA;
goto error;
default:
- BT_LOGE("get_next_index: unknown value");
+ BT_COMP_LOGE("get_next_index: unknown value");
memset(index, 0, sizeof(struct packet_index));
stream->state = LTTNG_LIVE_STREAM_ACTIVE_NO_DATA;
goto error;
struct lttng_live_component *lttng_live =
lttng_live_msg_iter->lttng_live_comp;
- BT_LOGD("lttng_live_get_stream_bytes: offset=%" PRIu64 ", req_len=%" PRIu64,
+ BT_COMP_LOGD("lttng_live_get_stream_bytes: offset=%" PRIu64 ", req_len=%" PRIu64,
offset, req_len);
cmd.cmd = htobe32(LTTNG_VIEWER_GET_PACKET);
cmd.data_size = htobe64((uint64_t) sizeof(rq));
memcpy(cmd_buf + sizeof(cmd), &rq, sizeof(rq));
ret_len = lttng_live_send(viewer_connection, &cmd_buf, cmd_buf_len);
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending get_data request: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error sending get_data request: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == cmd_buf_len);
ret_len = lttng_live_recv(viewer_connection, &rp, sizeof(rp));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving get_data response: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving get_data response: %s", bt_socket_errormsg());
goto error;
}
if (ret_len != sizeof(rp)) {
- BT_LOGE("get_data_packet: expected %zu"
+ BT_COMP_LOGE("get_data_packet: expected %zu"
", received %zd", sizeof(rp),
ret_len);
goto error;
switch (status) {
case LTTNG_VIEWER_GET_PACKET_OK:
req_len = be32toh(rp.len);
- BT_LOGD("get_data_packet: Ok, packet size : %" PRIu64 "", req_len);
+ BT_COMP_LOGD("get_data_packet: Ok, packet size : %" PRIu64 "", req_len);
break;
case LTTNG_VIEWER_GET_PACKET_RETRY:
/* Unimplemented by relay daemon */
- BT_LOGD("get_data_packet: retry");
+ BT_COMP_LOGD("get_data_packet: retry");
retstatus = BT_MSG_ITER_MEDIUM_STATUS_AGAIN;
goto end;
case LTTNG_VIEWER_GET_PACKET_ERR:
if (flags & LTTNG_VIEWER_FLAG_NEW_METADATA) {
- BT_LOGD("get_data_packet: new metadata needed, try again later");
+ BT_COMP_LOGD("get_data_packet: new metadata needed, try again later");
trace->new_metadata_needed = true;
}
if (flags & LTTNG_VIEWER_FLAG_NEW_STREAM) {
- BT_LOGD("get_data_packet: new streams needed, try again later");
+ BT_COMP_LOGD("get_data_packet: new streams needed, try again later");
lttng_live_need_new_streams(lttng_live_msg_iter);
}
if (flags & (LTTNG_VIEWER_FLAG_NEW_METADATA
retstatus = BT_MSG_ITER_MEDIUM_STATUS_AGAIN;
goto end;
}
- BT_LOGE("get_data_packet: error");
+ BT_COMP_LOGE("get_data_packet: error");
goto error;
case LTTNG_VIEWER_GET_PACKET_EOF:
retstatus = BT_MSG_ITER_MEDIUM_STATUS_EOF;
goto end;
default:
- BT_LOGE("get_data_packet: unknown");
+ BT_COMP_LOGE("get_data_packet: unknown");
goto error;
}
ret_len = lttng_live_recv(viewer_connection, buf, req_len);
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving trace packet: %s", bt_socket_errormsg());
+ BT_COMP_LOGE("Error receiving trace packet: %s", bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == req_len);
memcpy(cmd_buf + sizeof(cmd), &rq, sizeof(rq));
ret_len = lttng_live_send(viewer_connection, &cmd_buf, cmd_buf_len);
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error sending get_new_streams request: %s",
+ BT_COMP_LOGE("Error sending get_new_streams request: %s",
bt_socket_errormsg());
goto error;
}
BT_ASSERT(ret_len == cmd_buf_len);
ret_len = lttng_live_recv(viewer_connection, &rp, sizeof(rp));
if (ret_len == 0) {
- BT_LOGI("Remote side has closed connection");
+ BT_COMP_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len == BT_SOCKET_ERROR) {
- BT_LOGE("Error receiving get_new_streams response");
+ BT_COMP_LOGE("Error receiving get_new_streams response");
goto error;
}
BT_ASSERT(ret_len == sizeof(rp));
status = LTTNG_LIVE_ITERATOR_STATUS_END;
goto end;
case LTTNG_VIEWER_NEW_STREAMS_ERR:
- BT_LOGE("get_new_streams error");
+ BT_COMP_LOGE("get_new_streams error");
goto error;
default:
- BT_LOGE("Unknown return code %u", be32toh(rp.status));
+ BT_COMP_LOGE("Unknown return code %u", be32toh(rp.status));
goto error;
}
}
viewer_connection->log_level = lttng_live_msg_iter->log_level;
+ viewer_connection->self_comp = lttng_live_msg_iter->self_comp;
bt_object_init_shared(&viewer_connection->obj, connection_release);
viewer_connection->control_sock = BT_INVALID_SOCKET;
viewer_connection->port = -1;
goto error;
}
- BT_LOGI("Establishing connection to url \"%s\"...", url);
+ BT_COMP_LOGI("Establishing connection to url \"%s\"...", url);
if (lttng_live_connect_viewer(viewer_connection)) {
goto error_report;
}
- BT_LOGI("Connection to url \"%s\" is established", url);
+ BT_COMP_LOGI("Connection to url \"%s\" is established", url);
return viewer_connection;
error_report:
- BT_LOGW("Failure to establish connection to url \"%s\"", url);
+ BT_COMP_LOGW("Failure to establish connection to url \"%s\"", url);
error:
g_free(viewer_connection);
return NULL;
void live_viewer_connection_destroy(
struct live_viewer_connection *viewer_connection)
{
- BT_LOGI("Closing connection to url \"%s\"", viewer_connection->url->str);
+ BT_COMP_LOGI("Closing connection to url \"%s\"", viewer_connection->url->str);
lttng_live_disconnect_viewer(viewer_connection);
g_string_free(viewer_connection->url, true);
if (viewer_connection->relay_hostname) {