X-Git-Url: http://git.efficios.com/?p=lttng-tools.git;a=blobdiff_plain;f=src%2Fbin%2Flttng%2Flttng.c;h=aa13bc45dd57f621e539b62d4e1aa6f401947767;hp=bf07c83b76058219e88ceb1c41b41122242252d2;hb=f67353ba14d7c2c860b4ed59247a38da77a481ce;hpb=bbd44cae042d871887fb7207c5144f68d47cb3a8 diff --git a/src/bin/lttng/lttng.c b/src/bin/lttng/lttng.c index bf07c83b7..aa13bc45d 100644 --- a/src/bin/lttng/lttng.c +++ b/src/bin/lttng/lttng.c @@ -15,7 +15,6 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. */ -#define _GNU_SOURCE #define _LGPL_SOURCE #include #include @@ -25,12 +24,12 @@ #include #include #include -#include #include #include #include #include +#include #include "command.h" @@ -67,6 +66,7 @@ static struct option long_options[] = { /* First level command */ static struct cmd_struct commands[] = { { "list", cmd_list}, + { "status", cmd_status}, { "create", cmd_create}, { "destroy", cmd_destroy}, { "start", cmd_start}, @@ -85,56 +85,10 @@ static struct cmd_struct commands[] = { { "load", cmd_load}, { "track", cmd_track}, { "untrack", cmd_untrack}, + { "metadata", cmd_metadata}, { NULL, NULL} /* Array closure */ }; -static void usage(FILE *ofp) -{ - fprintf(ofp, "LTTng Trace Control " VERSION " - " VERSION_NAME "%s\n\n", - GIT_VERSION[0] == '\0' ? "" : " - " GIT_VERSION); - fprintf(ofp, "usage: lttng [OPTIONS] []\n"); - fprintf(ofp, "\n"); - fprintf(ofp, "Options:\n"); - fprintf(ofp, " -V, --version Show version\n"); - fprintf(ofp, " -h, --help Show this help\n"); - fprintf(ofp, " --list-options Simple listing of lttng options\n"); - fprintf(ofp, " --list-commands Simple listing of lttng commands\n"); - fprintf(ofp, " -v, --verbose Increase verbosity\n"); - fprintf(ofp, " -q, --quiet Quiet mode\n"); - fprintf(ofp, " -m, --mi TYPE Machine Interface mode.\n"); - fprintf(ofp, " Type: xml\n"); - fprintf(ofp, " -g, --group NAME Unix tracing group name. (default: tracing)\n"); - fprintf(ofp, " -n, --no-sessiond Don't spawn a session daemon\n"); - fprintf(ofp, " --sessiond-path PATH Session daemon full path\n"); - fprintf(ofp, " --relayd-path PATH Relayd daemon full path\n"); - fprintf(ofp, "\n"); - fprintf(ofp, "Commands:\n"); - fprintf(ofp, " add-context Add context to event and/or channel\n"); - fprintf(ofp, " calibrate Quantify LTTng overhead\n"); - fprintf(ofp, " create Create tracing session\n"); - fprintf(ofp, " destroy Tear down tracing session\n"); - fprintf(ofp, " enable-channel Enable tracing channel\n"); - fprintf(ofp, " enable-event Enable tracing event\n"); - fprintf(ofp, " disable-channel Disable tracing channel\n"); - fprintf(ofp, " disable-event Disable tracing event\n"); - fprintf(ofp, " list List possible tracing options\n"); - fprintf(ofp, " set-session Set current session name\n"); - fprintf(ofp, " snapshot Snapshot buffers of current session name\n"); - fprintf(ofp, " start Start tracing\n"); - fprintf(ofp, " stop Stop tracing\n"); - fprintf(ofp, " version Show version information\n"); - fprintf(ofp, " view Start trace viewer\n"); - fprintf(ofp, " save Save session configuration\n"); - fprintf(ofp, " load Load session configuration\n"); - fprintf(ofp, " track Track specific system resources\n"); - fprintf(ofp, " untrack Untrack specific system resources\n"); - fprintf(ofp, "\n"); - fprintf(ofp, "Each command also has its own -h, --help option.\n"); - fprintf(ofp, "\n"); - fprintf(ofp, "Please see the lttng(1) man page for full documentation.\n"); - fprintf(ofp, "See http://lttng.org for updates, bug reports and news.\n"); -} - static void version(FILE *ofp) { fprintf(ofp, "%s (LTTng Trace Control) " VERSION" - " VERSION_NAME "%s\n", @@ -296,7 +250,6 @@ static int parse_args(int argc, char **argv) } if (argc < 2) { - usage(stderr); clean_exit(EXIT_FAILURE); } @@ -307,8 +260,12 @@ static int parse_args(int argc, char **argv) ret = 0; goto end; case 'h': - usage(stdout); - ret = 0; + ret = utils_show_man_page(1, "lttng"); + + if (ret) { + ERR("Cannot view man page lttng(1)"); + perror("exec"); + } goto end; case 'v': /* There is only 3 possible level of verbosity. (-vvv) */ @@ -355,7 +312,6 @@ static int parse_args(int argc, char **argv) ret = 0; goto end; default: - usage(stderr); ret = 1; goto error; } @@ -366,9 +322,8 @@ static int parse_args(int argc, char **argv) lttng_opt_verbose = 0; } - /* No leftovers, print usage and quit */ + /* No leftovers, quit */ if ((argc - optind) == 0) { - usage(stderr); ret = 1; goto error; } @@ -394,7 +349,7 @@ static int parse_args(int argc, char **argv) ERR("Command error"); break; case CMD_UNDEFINED: - ERR("Undefined command"); + ERR("Undefined command or invalid arguments"); break; case CMD_FATAL: ERR("Fatal error"); @@ -403,7 +358,6 @@ static int parse_args(int argc, char **argv) ERR("Unsupported command"); break; case -1: - usage(stderr); ret = 1; break; case 0: