#include <babeltrace/compat/send-internal.h>
#include <babeltrace/compiler-internal.h>
+#define BT_LOG_TAG "PLUGIN-CTF-LTTNG-LIVE-VIEWER"
+
#include "lttng-live-internal.h"
#include "viewer-connection.h"
#include "lttng-viewer-abi.h"
#include "data-stream.h"
#include "metadata.h"
-#define PRINT_ERR_STREAM viewer_connection->error_fp
-#define PRINT_PREFIX "lttng-live-viewer-connection"
-#define PRINT_DBG_CHECK lttng_live_debug
-#include "../print.h"
-
static ssize_t lttng_live_recv(int fd, void *buf, size_t len)
{
ssize_t ret;
goto end;
}
if (proto == 6) {
- PERR("[error] IPv6 is currently unsupported by lttng-live\n");
+ BT_LOGW("IPv6 is currently unsupported by lttng-live");
goto end;
}
/* TODO : parse for IPv6 as well */
goto end;
}
} else if (ret == 0) {
- PERR("[error] Missing port number after delimitor ':'\n");
+ BT_LOGW("Missing port number after delimitor ':'");
ret = -1;
goto end;
}
}
break;
default:
- PERR("[error] wrong delimitor : %c\n", remain[0][0]);
+ BT_LOGW("wrong delimitor : %c", remain[0][0]);
ret = -1;
goto end;
}
}
if (strlen(remain[2]) == 0) {
- PDBG("Connecting to hostname : %s, port : %d, "
- "proto : IPv%d\n",
+ BT_LOGD("Connecting to hostname : %s, port : %d, "
+ "proto : IPv%d",
viewer_connection->relay_hostname,
viewer_connection->port,
proto);
viewer_connection->target_hostname,
viewer_connection->session_name);
if (ret != 2) {
- PERR("[error] Format : "
- "net://<hostname>/host/<target_hostname>/<session_name>\n");
+ BT_LOGW("Format : "
+ "net://<hostname>/host/<target_hostname>/<session_name>");
goto end;
}
- PDBG("Connecting to hostname : %s, port : %d, "
+ BT_LOGD("Connecting to hostname : %s, port : %d, "
"target hostname : %s, session name : %s, "
- "proto : IPv%d\n",
+ "proto : IPv%d",
viewer_connection->relay_hostname,
viewer_connection->port,
viewer_connection->target_hostname,
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_send(viewer_connection->control_sock, &connect, sizeof(connect));
if (ret_len < 0) {
- PERR("Error sending version: %s\n", strerror(errno));
+ BT_LOGE("Error sending version: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(connect));
ret_len = lttng_live_recv(viewer_connection->control_sock, &connect, sizeof(connect));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("[error] Error receiving version: %s", strerror(errno));
+ BT_LOGE("Error receiving version: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(connect));
- PDBG("Received viewer session ID : %" PRIu64 "\n",
+ BT_LOGD("Received viewer session ID : %" PRIu64,
be64toh(connect.viewer_session_id));
- PDBG("Relayd version : %u.%u\n", be32toh(connect.major),
+ BT_LOGD("Relayd version : %u.%u", be32toh(connect.major),
be32toh(connect.minor));
if (LTTNG_LIVE_MAJOR != be32toh(connect.major)) {
- PERR("Incompatible lttng-relayd protocol\n");
+ BT_LOGE("Incompatible lttng-relayd protocol");
goto error;
}
/* Use the smallest protocol version implemented. */
return ret;
error:
- PERR("Unable to establish connection\n");
+ BT_LOGE("Unable to establish connection");
return -1;
}
host = gethostbyname(viewer_connection->relay_hostname);
if (!host) {
- PERR("[error] Cannot lookup hostname %s\n",
+ BT_LOGE("Cannot lookup hostname %s",
viewer_connection->relay_hostname);
goto error;
}
if ((viewer_connection->control_sock = socket(AF_INET, SOCK_STREAM, 0)) == -1) {
- PERR("[error] Socket creation failed: %s\n", strerror(errno));
+ BT_LOGE("Socket creation failed: %s", strerror(errno));
goto error;
}
if (connect(viewer_connection->control_sock, (struct sockaddr *) &server_addr,
sizeof(struct sockaddr)) == -1) {
- PERR("[error] Connection failed: %s\n", strerror(errno));
+ BT_LOGE("Connection failed: %s", strerror(errno));
goto error;
}
if (lttng_live_handshake(viewer_connection)) {
error:
if (viewer_connection->control_sock >= 0) {
if (close(viewer_connection->control_sock)) {
- PERR("Close: %s", strerror(errno));
+ BT_LOGE("Close: %s", strerror(errno));
}
}
viewer_connection->control_sock = -1;
return;
}
if (close(viewer_connection->control_sock)) {
- PERR("Close: %s", strerror(errno));
+ BT_LOGE("Close: %s", strerror(errno));
viewer_connection->control_sock = -1;
}
}
results = bt_value_array_create();
if (!results) {
- fprintf(stderr, "Error creating array\n");
+ BT_LOGE("Error creating array");
goto error;
}
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- fprintf(stderr, "Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_recv(viewer_connection->control_sock, &list, sizeof(list));
if (ret_len == 0) {
- fprintf(stderr, "Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- fprintf(stderr, "Error receiving session list: %s\n", strerror(errno));
+ BT_LOGE("Error receiving session list: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(list));
ret_len = lttng_live_recv(viewer_connection->control_sock,
&lsession, sizeof(lsession));
if (ret_len == 0) {
- fprintf(stderr, "Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- fprintf(stderr, "Error receiving session: %s\n", strerror(errno));
+ BT_LOGE("Error receiving session: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(lsession));
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_recv(viewer_connection->control_sock, &list, sizeof(list));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving session list: %s\n", strerror(errno));
+ BT_LOGE("Error receiving session list: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(list));
ret_len = lttng_live_recv(viewer_connection->control_sock,
&lsession, sizeof(lsession));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving session: %s\n", strerror(errno));
+ BT_LOGE("Error receiving session: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(lsession));
return 0;
error:
- PERR("Unable to query session ids\n");
+ BT_LOGE("Unable to query session ids");
return -1;
}
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_recv(viewer_connection->control_sock, &resp, sizeof(resp));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving create session reply: %s\n", strerror(errno));
+ BT_LOGE("Error receiving create session reply: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(resp));
if (be32toh(resp.status) != LTTNG_VIEWER_CREATE_SESSION_OK) {
- PERR("Error creating viewer session\n");
+ BT_LOGE("Error creating viewer session");
goto error;
}
if (lttng_live_query_session_ids(lttng_live)) {
struct bt_live_viewer_connection *viewer_connection =
lttng_live->viewer_connection;
- PDBG("Getting %" PRIu32 " new streams:\n", stream_count);
+ BT_LOGD("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->control_sock, &stream, sizeof(stream));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving stream\n");
+ BT_LOGE("Error receiving stream");
goto error;
}
assert(ret_len == sizeof(stream));
ctf_trace_id = be64toh(stream.ctf_trace_id);
if (stream.metadata_flag) {
- PDBG(" metadata stream %" PRIu64 " : %s/%s\n",
+ BT_LOGD(" 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)) {
- PERR("Error creating metadata stream\n");
+ BT_LOGE("Error creating metadata stream");
goto error;
}
session->lazy_stream_notif_init = true;
} else {
- PDBG(" stream %" PRIu64 " : %s/%s\n",
+ BT_LOGD(" 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) {
- PERR("Error creating stream\n");
+ BT_LOGE("Error creating streamn");
goto error;
}
}
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_send(viewer_connection->control_sock, &rq, sizeof(rq));
if (ret_len < 0) {
- PERR("Error sending attach request: %s\n", strerror(errno));
+ BT_LOGE("Error sending attach request: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rq));
ret_len = lttng_live_recv(viewer_connection->control_sock, &rp, sizeof(rp));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving attach response: %s\n", strerror(errno));
+ BT_LOGE("Error receiving attach response: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rp));
case LTTNG_VIEWER_ATTACH_OK:
break;
case LTTNG_VIEWER_ATTACH_UNK:
- PERR("Session id %" PRIu64 " is unknown\n", session_id);
+ BT_LOGW("Session id %" PRIu64 " is unknown", session_id);
goto error;
case LTTNG_VIEWER_ATTACH_ALREADY:
- PERR("There is already a viewer attached to this session\n");
+ BT_LOGW("There is already a viewer attached to this session");
goto error;
case LTTNG_VIEWER_ATTACH_NOT_LIVE:
- PERR("Not a live session\n");
+ BT_LOGW("Not a live session");
goto error;
case LTTNG_VIEWER_ATTACH_SEEK_ERR:
- PERR("Wrong seek parameter\n");
+ BT_LOGE("Wrong seek parameter");
goto error;
default:
- PERR("Unknown attach return code %u\n", be32toh(rp.status));
+ BT_LOGE("Unknown attach return code %u", be32toh(rp.status));
goto error;
}
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_send(viewer_connection->control_sock, &rq, sizeof(rq));
if (ret_len < 0) {
- PERR("Error sending detach request: %s\n", strerror(errno));
+ BT_LOGE("Error sending detach request: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rq));
ret_len = lttng_live_recv(viewer_connection->control_sock, &rp, sizeof(rp));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving detach response: %s\n", strerror(errno));
+ BT_LOGE("Error receiving detach response: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rp));
case LTTNG_VIEWER_DETACH_SESSION_OK:
break;
case LTTNG_VIEWER_DETACH_SESSION_UNK:
- PERR("Session id %" PRIu64 " is unknown\n", session_id);
+ BT_LOGW("Session id %" PRIu64 " is unknown", session_id);
goto error;
case LTTNG_VIEWER_DETACH_SESSION_ERR:
- PERR("Error detaching session id %" PRIu64 "\n", session_id);
+ BT_LOGW("Error detaching session id %" PRIu64 "", session_id);
goto error;
default:
- PERR("Unknown detach return code %u\n", be32toh(rp.status));
+ BT_LOGE("Unknown detach return code %u", be32toh(rp.status));
goto error;
}
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_send(viewer_connection->control_sock, &rq, sizeof(rq));
if (ret_len < 0) {
- PERR("Error sending get_metadata request: %s\n", strerror(errno));
+ BT_LOGE("Error sending get_metadata request: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rq));
ret_len = lttng_live_recv(viewer_connection->control_sock, &rp, sizeof(rp));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving get_metadata response: %s\n", strerror(errno));
+ BT_LOGE("Error receiving get_metadata response: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rp));
switch (be32toh(rp.status)) {
case LTTNG_VIEWER_METADATA_OK:
- PDBG("get_metadata : OK\n");
+ BT_LOGD("get_metadata : OK");
break;
case LTTNG_VIEWER_NO_NEW_METADATA:
- PDBG("get_metadata : NO NEW\n");
+ BT_LOGD("get_metadata : NO NEW");
ret = 0;
goto end;
case LTTNG_VIEWER_METADATA_ERR:
- PDBG("get_metadata : ERR\n");
+ BT_LOGD("get_metadata : ERR");
goto error;
default:
- PDBG("get_metadata : UNKNOWN\n");
+ BT_LOGD("get_metadata : UNKNOWN");
goto error;
}
len = be64toh(rp.len);
- PDBG("Writing %" PRIu64" bytes to metadata\n", len);
+ BT_LOGD("Writing %" PRIu64" bytes to metadata", len);
if (len <= 0) {
goto error;
}
data = zmalloc(len);
if (!data) {
- PERR("relay data zmalloc: %s", strerror(errno));
+ BT_LOGE("relay data zmalloc: %s", strerror(errno));
goto error;
}
ret_len = lttng_live_recv(viewer_connection->control_sock, data, len);
if (ret_len == 0) {
- PERR("[error] Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error_free_data;
}
if (ret_len < 0) {
- PERR("[error] Error receiving trace packet: %s", strerror(errno));
+ BT_LOGE("Error receiving trace packet: %s", strerror(errno));
goto error_free_data;
}
assert(ret_len == len);
ret_len = fwrite(data, 1, len, fp);
} while (ret_len < 0 && errno == EINTR);
if (ret_len < 0) {
- PERR("[error] Writing in the metadata fp\n");
+ BT_LOGE("Writing in the metadata fp");
goto error_free_data;
}
assert(ret_len == len);
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_send(viewer_connection->control_sock, &rq, sizeof(rq));
if (ret_len < 0) {
- PERR("Error sending get_next_index request: %s\n", strerror(errno));
+ BT_LOGE("Error sending get_next_index request: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rq));
ret_len = lttng_live_recv(viewer_connection->control_sock, &rp, sizeof(rp));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving get_next_index response: %s\n", strerror(errno));
+ BT_LOGE("Error receiving get_next_index response: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rp));
{
uint64_t ctf_stream_class_id;
- PDBG("get_next_index: inactive\n");
+ BT_LOGD("get_next_index: inactive");
memset(index, 0, sizeof(struct packet_index));
index->ts_cycles.timestamp_end = be64toh(rp.timestamp_end);
stream->current_inactivity_timestamp = index->ts_cycles.timestamp_end;
{
uint64_t ctf_stream_class_id;
- PDBG("get_next_index: OK\n");
+ BT_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) {
index->ts_cycles.timestamp_end;
if (flags & LTTNG_VIEWER_FLAG_NEW_METADATA) {
- PDBG("get_next_index: new metadata needed\n");
+ BT_LOGD("get_next_index: new metadata needed");
trace->new_metadata_needed = true;
}
if (flags & LTTNG_VIEWER_FLAG_NEW_STREAM) {
- PDBG("get_next_index: new streams needed\n");
+ BT_LOGD("get_next_index: new streams needed");
lttng_live_need_new_streams(lttng_live);
}
break;
}
case LTTNG_VIEWER_INDEX_RETRY:
- PDBG("get_next_index: retry\n");
+ BT_LOGD("get_next_index: retry");
memset(index, 0, sizeof(struct packet_index));
retstatus = BT_CTF_LTTNG_LIVE_ITERATOR_STATUS_AGAIN;
stream->state = LTTNG_LIVE_STREAM_ACTIVE_NO_DATA;
goto end;
case LTTNG_VIEWER_INDEX_HUP:
- PDBG("get_next_index: stream hung up\n");
+ BT_LOGD("get_next_index: stream hung up");
memset(index, 0, sizeof(struct packet_index));
index->offset = EOF;
retstatus = BT_CTF_LTTNG_LIVE_ITERATOR_STATUS_END;
stream->state = LTTNG_LIVE_STREAM_EOF;
break;
case LTTNG_VIEWER_INDEX_ERR:
- PERR("get_next_index: error\n");
+ BT_LOGE("get_next_index: error");
memset(index, 0, sizeof(struct packet_index));
stream->state = LTTNG_LIVE_STREAM_ACTIVE_NO_DATA;
goto error;
default:
- PERR("get_next_index: unkwown value\n");
+ BT_LOGE("get_next_index: unknown value");
memset(index, 0, sizeof(struct packet_index));
stream->state = LTTNG_LIVE_STREAM_ACTIVE_NO_DATA;
goto error;
lttng_live->viewer_connection;
struct lttng_live_trace *trace = stream->trace;
- PDBG("lttng_live_get_stream_bytes: offset=%" PRIu64 ", req_len=%" PRIu64 "\n",
+ BT_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));
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_send(viewer_connection->control_sock, &rq, sizeof(rq));
if (ret_len < 0) {
- PERR("Error sending get_data request: %s\n", strerror(errno));
+ BT_LOGE("Error sending get_data request: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rq));
ret_len = lttng_live_recv(viewer_connection->control_sock, &rp, sizeof(rp));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving get_data response: %s\n", strerror(errno));
+ BT_LOGE("Error receiving get_data response: %s", strerror(errno));
goto error;
}
if (ret_len != sizeof(rp)) {
- PERR("[error] get_data_packet: expected %zu"
- ", received %zd\n", sizeof(rp),
+ BT_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);
- PDBG("get_data_packet: Ok, packet size : %" PRIu64 "\n", req_len);
+ BT_LOGD("get_data_packet: Ok, packet size : %" PRIu64 "", req_len);
break;
case LTTNG_VIEWER_GET_PACKET_RETRY:
/* Unimplemented by relay daemon */
- PDBG("get_data_packet: retry\n");
+ BT_LOGD("get_data_packet: retry");
retstatus = BT_CTF_NOTIF_ITER_MEDIUM_STATUS_AGAIN;
goto end;
case LTTNG_VIEWER_GET_PACKET_ERR:
if (flags & LTTNG_VIEWER_FLAG_NEW_METADATA) {
- PDBG("get_data_packet: new metadata needed, try again later\n");
+ BT_LOGD("get_data_packet: new metadata needed, try again later");
trace->new_metadata_needed = true;
}
if (flags & LTTNG_VIEWER_FLAG_NEW_STREAM) {
- PDBG("get_data_packet: new streams needed, try again later\n");
+ BT_LOGD("get_data_packet: new streams needed, try again later");
lttng_live_need_new_streams(lttng_live);
}
if (flags & (LTTNG_VIEWER_FLAG_NEW_METADATA
retstatus = BT_CTF_NOTIF_ITER_MEDIUM_STATUS_AGAIN;
goto end;
}
- PERR("get_data_packet: error\n");
+ BT_LOGE("get_data_packet: error");
goto error;
case LTTNG_VIEWER_GET_PACKET_EOF:
retstatus = BT_CTF_NOTIF_ITER_MEDIUM_STATUS_EOF;
goto end;
default:
- PDBG("get_data_packet: unknown\n");
+ BT_LOGE("get_data_packet: unknown");
goto error;
}
ret_len = lttng_live_recv(viewer_connection->control_sock, buf, req_len);
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving trace packet: %s\n", strerror(errno));
+ BT_LOGE("Error receiving trace packet: %s", strerror(errno));
goto error;
}
assert(ret_len == req_len);
ret_len = lttng_live_send(viewer_connection->control_sock, &cmd, sizeof(cmd));
if (ret_len < 0) {
- PERR("Error sending cmd: %s\n", strerror(errno));
+ BT_LOGE("Error sending cmd: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(cmd));
ret_len = lttng_live_send(viewer_connection->control_sock, &rq, sizeof(rq));
if (ret_len < 0) {
- PERR("Error sending get_new_streams request: %s\n", strerror(errno));
+ BT_LOGE("Error sending get_new_streams request: %s", strerror(errno));
goto error;
}
assert(ret_len == sizeof(rq));
ret_len = lttng_live_recv(viewer_connection->control_sock, &rp, sizeof(rp));
if (ret_len == 0) {
- PERR("Remote side has closed connection\n");
+ BT_LOGI("Remote side has closed connection");
goto error;
}
if (ret_len < 0) {
- PERR("Error receiving get_new_streams response\n");
+ BT_LOGE("Error receiving get_new_streams response");
goto error;
}
assert(ret_len == sizeof(rp));
status = BT_CTF_LTTNG_LIVE_ITERATOR_STATUS_END;
goto end;
case LTTNG_VIEWER_NEW_STREAMS_ERR:
- PERR("get_new_streams error\n");
+ BT_LOGE("get_new_streams error");
goto error;
default:
- PERR("Unknown return code %u\n", be32toh(rp.status));
+ BT_LOGE("Unknown return code %u", be32toh(rp.status));
goto error;
}
goto error;
}
- PDBG("Establishing connection to url \"%s\"...\n", url);
+ BT_LOGD("Establishing connection to url \"%s\"...", url);
if (lttng_live_connect_viewer(viewer_connection)) {
goto error_report;
}
- PDBG("Connection to url \"%s\" is established\n", url);
+ BT_LOGD("Connection to url \"%s\" is established", url);
return viewer_connection;
error_report:
- printf_verbose("Failure to establish connection to url \"%s\"\n", url);
+ BT_LOGW("Failure to establish connection to url \"%s\"", url);
error:
g_free(viewer_connection);
return NULL;
BT_HIDDEN
void bt_live_viewer_connection_destroy(struct bt_live_viewer_connection *viewer_connection)
{
- PDBG("Closing connection to url \"%s\"\n", viewer_connection->url->str);
+ BT_LOGD("Closing connection to url \"%s\"", viewer_connection->url->str);
lttng_live_disconnect_viewer(viewer_connection);
g_string_free(viewer_connection->url, TRUE);
g_free(viewer_connection);