Clean-up: lttng: only include lttng.h
[lttng-tools.git] / src / bin / lttng / commands / rotate.c
index 7439f4fbe96e9eaef585810f62984b9061ab857c..ec816315789b83ec5cedb9602db88dc2394fa522 100644 (file)
@@ -1,18 +1,8 @@
 /*
- * Copyright (C) 2017 Julien Desfossez <jdesfossez@efficios.com>
+ * Copyright (C) 2017 Julien Desfossez <jdesfossez@efficios.com>
  *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License, version 2 only,
- * as published by the Free Software Foundation.
+ * SPDX-License-Identifier: GPL-2.0-only
  *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License along
- * with this program; if not, write to the Free Software Foundation, Inc.,
- * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  */
 
 #define _LGPL_SOURCE
@@ -31,8 +21,7 @@
 #include <common/mi-lttng.h>
 
 #include "../command.h"
-#include <lttng/rotation.h>
-#include <lttng/location.h>
+#include <lttng/lttng.h>
 
 static char *opt_session_name;
 static int opt_no_wait;
@@ -57,101 +46,6 @@ static struct poptOption long_options[] = {
        {0, 0, 0, 0, 0, 0, 0}
 };
 
-static int output_trace_archive_location(
-               const struct lttng_trace_archive_location *location,
-               const char *session_name)
-{
-       int ret = 0;
-       enum lttng_trace_archive_location_type location_type;
-       enum lttng_trace_archive_location_status status;
-       bool printed_location = false;
-
-       location_type = lttng_trace_archive_location_get_type(location);
-
-       _MSG("Trace chunk archive for session %s is now readable",
-                       session_name);
-       switch (location_type) {
-       case LTTNG_TRACE_ARCHIVE_LOCATION_TYPE_LOCAL:
-       {
-               const char *absolute_path;
-
-               status = lttng_trace_archive_location_local_get_absolute_path(
-                               location, &absolute_path);
-               if (status != LTTNG_TRACE_ARCHIVE_LOCATION_STATUS_OK) {
-                       ret = -1;
-                       goto end;
-               }
-               MSG(" at %s", absolute_path);
-               printed_location = true;
-               break;
-       }
-       case LTTNG_TRACE_ARCHIVE_LOCATION_TYPE_RELAY:
-       {
-               uint16_t control_port, data_port;
-               const char *host, *relative_path, *protocol_str;
-               enum lttng_trace_archive_location_relay_protocol_type protocol;
-
-               /* Fetch all relay location parameters. */
-               status = lttng_trace_archive_location_relay_get_protocol_type(
-                               location, &protocol);
-               if (status != LTTNG_TRACE_ARCHIVE_LOCATION_STATUS_OK) {
-                       ret = -1;
-                       goto end;
-               }
-
-               status = lttng_trace_archive_location_relay_get_host(
-                               location, &host);
-               if (status != LTTNG_TRACE_ARCHIVE_LOCATION_STATUS_OK) {
-                       ret = -1;
-                       goto end;
-               }
-
-               status = lttng_trace_archive_location_relay_get_control_port(
-                               location, &control_port);
-               if (status != LTTNG_TRACE_ARCHIVE_LOCATION_STATUS_OK) {
-                       ret = -1;
-                       goto end;
-               }
-
-               status = lttng_trace_archive_location_relay_get_data_port(
-                               location, &data_port);
-               if (status != LTTNG_TRACE_ARCHIVE_LOCATION_STATUS_OK) {
-                       ret = -1;
-                       goto end;
-               }
-
-               status = lttng_trace_archive_location_relay_get_relative_path(
-                               location, &relative_path);
-               if (status != LTTNG_TRACE_ARCHIVE_LOCATION_STATUS_OK) {
-                       ret = -1;
-                       goto end;
-               }
-
-               switch (protocol) {
-               case LTTNG_TRACE_ARCHIVE_LOCATION_RELAY_PROTOCOL_TYPE_TCP:
-                       protocol_str = "tcp";
-                       break;
-               default:
-                       protocol_str = "unknown";
-                       break;
-               }
-
-               MSG(" on relay %s://%s/%s [control port %" PRIu16 ", data port %"
-                               PRIu16 "]", protocol_str, host,
-                               relative_path, control_port, data_port);
-               printed_location = true;
-               break;
-       }
-       default:
-               break;
-       }
-end:
-       if (!printed_location) {
-               MSG(" at an unknown location");
-       }
-       return ret;
-}
-
 static int rotate_tracing(char *session_name)
 {
        int ret;
@@ -193,21 +87,22 @@ static int rotate_tracing(char *session_name)
                rotation_status = lttng_rotation_handle_get_state(handle,
                                &rotation_state);
                if (rotation_status != LTTNG_ROTATION_STATUS_OK) {
+                       MSG("");
                        ERR("Failed to query the state of the rotation.");
                        goto error;
                }
 
                if (rotation_state == LTTNG_ROTATION_STATE_ONGOING) {
-                       ret = usleep(DEFAULT_DATA_AVAILABILITY_WAIT_TIME);
+                       ret = usleep(DEFAULT_DATA_AVAILABILITY_WAIT_TIME_US);
                        if (ret) {
-                               PERROR("usleep");
+                               PERROR("\nusleep");
                                goto error;
                        }
                        _MSG(".");
 
                        ret = fflush(stdout);
                        if (ret) {
-                               PERROR("fflush");
+                               PERROR("\nfflush");
                                goto error;
                        }
                }
@@ -228,7 +123,6 @@ skip_wait:
                break;
        case LTTNG_ROTATION_STATE_ERROR:
                ERR("Failed to retrieve rotation state.");
-               print_location = false;
                goto error;
        case LTTNG_ROTATION_STATE_ONGOING:
                MSG("Rotation ongoing for session %s", session_name);
@@ -236,12 +130,11 @@ skip_wait:
                break;
        default:
                ERR("Unexpected rotation state encountered.");
-               print_location = false;
                goto error;
        }
 
        if (!lttng_opt_mi && print_location) {
-               ret = output_trace_archive_location(location,
+               ret = print_trace_archive_location(location,
                                session_name);
        } else if (lttng_opt_mi) {
                ret = mi_lttng_rotate(writer, session_name, rotation_state,
This page took 0.024853 seconds and 4 git commands to generate.