X-Git-Url: https://git.lttng.org/?a=blobdiff_plain;f=src%2Fbin%2Flttng%2Fcommands%2Fload.c;h=630dccd3b5787e223bdca393a3f3e0e7d28e4579;hb=e1f481f68598431b2b9eca264a2ec0c7f5aea686;hp=a0f5e1d65befd4f5990def4bd91acd948c6dd3f5;hpb=623bc34cc3236f5cddef955fb2ae0e538230bba0;p=lttng-tools.git diff --git a/src/bin/lttng/commands/load.c b/src/bin/lttng/commands/load.c index a0f5e1d65..630dccd3b 100644 --- a/src/bin/lttng/commands/load.c +++ b/src/bin/lttng/commands/load.c @@ -30,6 +30,8 @@ #include "../command.h" static char *opt_input_path; +static char *opt_override_url; +static char *opt_override_session_name; static int opt_force; static int opt_load_all; @@ -46,11 +48,13 @@ static struct mi_writer *writer; static struct poptOption load_opts[] = { /* longName, shortName, argInfo, argPtr, value, descrip, argDesc */ - {"help", 'h', POPT_ARG_NONE, 0, OPT_HELP, 0, 0}, - {"all", 'a', POPT_ARG_NONE, 0, OPT_ALL, 0, 0}, - {"input-path", 'i', POPT_ARG_STRING, &opt_input_path, 0, 0, 0}, - {"force", 'f', POPT_ARG_NONE, 0, OPT_FORCE, 0, 0}, - {"list-options", 0, POPT_ARG_NONE, NULL, OPT_LIST_OPTIONS, NULL, NULL}, + {"help", 'h', POPT_ARG_NONE, 0, OPT_HELP, 0, 0}, + {"all", 'a', POPT_ARG_NONE, 0, OPT_ALL, 0, 0}, + {"input-path", 'i', POPT_ARG_STRING, &opt_input_path, 0, 0, 0}, + {"force", 'f', POPT_ARG_NONE, 0, OPT_FORCE, 0, 0}, + {"override-url", 0, POPT_ARG_STRING, &opt_override_url, 0, 0, 0}, + {"override-name", 0, POPT_ARG_STRING, &opt_override_session_name, 0, 0, 0}, + {"list-options", 0, POPT_ARG_NONE, NULL, OPT_LIST_OPTIONS, NULL, NULL}, {0, 0, 0, 0, 0, 0, 0} }; @@ -246,6 +250,31 @@ int cmd_load(int argc, const char **argv) goto end; } + /* Set the overrides attributes if any */ + if (opt_override_url) { + ret = lttng_load_session_attr_set_override_url(session_attr, + opt_override_url); + if (ret) { + ERR("Url override is invalid"); + goto end; + } + } + + if (opt_override_session_name) { + if (opt_load_all) { + ERR("Options --all and --override-name cannot be used simultaneously"); + ret = CMD_ERROR; + goto end; + } + ret = lttng_load_session_attr_set_override_session_name(session_attr, + opt_override_session_name); + if (ret) { + ERR("Failed to set session name override"); + ret = CMD_ERROR; + goto end; + } + } + ret = lttng_load_session(session_attr); if (ret) { ERR("%s", lttng_strerror(ret)); @@ -263,6 +292,10 @@ int cmd_load(int argc, const char **argv) } else { MSG("Session has been loaded successfully"); } + + if (opt_override_url) { + MSG("Session output url overridden with %s", opt_override_url); + } success = 1; ret = CMD_SUCCESS; }