Fix: don't print the default channel name when enabling agent events
[lttng-tools.git] / src / bin / lttng / commands / enable_events.c
index 356fef4a0732c394b188f363c24ea0a8f990bd2f..d9b8591b3afbdf99a39052356359df0bffd2c18b 100644 (file)
@@ -101,7 +101,7 @@ static struct poptOption long_options[] = {
  */
 static void usage(FILE *ofp)
 {
-       fprintf(ofp, "usage: lttng enable-event NAME[,NAME2,...] [-k|-u] [OPTIONS] \n");
+       fprintf(ofp, "usage: lttng enable-event NAME[,NAME2,...] (-k | -u | -j | -l | -p) [OPTIONS] \n");
        fprintf(ofp, "\n");
        fprintf(ofp, "Options:\n");
        fprintf(ofp, "  -h, --help               Show this help\n");
@@ -134,7 +134,7 @@ static void usage(FILE *ofp)
        fprintf(ofp, "\n");
        fprintf(ofp, "    --loglevel name\n");
        fprintf(ofp, "                           Tracepoint loglevel range from 0 to loglevel.\n");
-       fprintf(ofp, "                           For JUL/LOG4j domain, see the table below for the range values.\n");
+       fprintf(ofp, "                           For JUL/LOG4j/Python domains, see the table below for the range values.\n");
        fprintf(ofp, "    --loglevel-only name\n");
        fprintf(ofp, "                           Tracepoint loglevel (only this loglevel)\n");
        fprintf(ofp, "\n");
@@ -726,10 +726,22 @@ static int enable_events(char *session_name)
                goto error;
        }
 
-       if (opt_kernel && opt_exclude) {
-               ERR("Event name exclusions are not yet implemented for kernel events");
-               ret = CMD_ERROR;
-               goto error;
+       if (opt_exclude) {
+               switch (dom.type) {
+               case LTTNG_DOMAIN_KERNEL:
+               case LTTNG_DOMAIN_JUL:
+               case LTTNG_DOMAIN_LOG4J:
+               case LTTNG_DOMAIN_PYTHON:
+                       ERR("Event name exclusions are not yet implemented for %s events",
+                                       get_domain_str(dom.type));
+                       ret = CMD_ERROR;
+                       goto error;
+               case LTTNG_DOMAIN_UST:
+                       /* Exclusions supported */
+                       break;
+               default:
+                       assert(0);
+               }
        }
 
        channel_name = opt_channel_name;
@@ -781,8 +793,10 @@ static int enable_events(char *session_name)
                                assert(opt_userspace || opt_jul || opt_log4j || opt_python);
                                if (opt_userspace) {
                                        ev.loglevel = -1;
-                               } else if (opt_jul || opt_log4j) {
+                               } else if (opt_jul) {
                                        ev.loglevel = LTTNG_LOGLEVEL_JUL_ALL;
+                               } else if (opt_log4j) {
+                                       ev.loglevel = LTTNG_LOGLEVEL_LOG4J_ALL;
                                } else if (opt_python) {
                                        ev.loglevel = LTTNG_LOGLEVEL_PYTHON_DEBUG;
                                }
@@ -1187,17 +1201,29 @@ static int enable_events(char *session_name)
                                }
                                error_holder = command_ret;
                        } else {
-                               /* So we don't print the default channel name for agent domain. */
-                               if (dom.type == LTTNG_DOMAIN_JUL ||
-                                               dom.type == LTTNG_DOMAIN_LOG4J) {
-                                       MSG("%s event %s%s enabled.",
-                                                       get_domain_str(dom.type), event_name,
-                                                       exclusion_string);
-                               } else {
+                               switch (dom.type) {
+                               case LTTNG_DOMAIN_KERNEL:
+                               case LTTNG_DOMAIN_UST:
                                        MSG("%s event %s%s created in channel %s",
-                                                       get_domain_str(dom.type), event_name,
-                                                       exclusion_string,
-                                                       print_channel_name(channel_name));
+                                               get_domain_str(dom.type),
+                                               event_name,
+                                               exclusion_string,
+                                               print_channel_name(channel_name));
+                                       break;
+                               case LTTNG_DOMAIN_JUL:
+                               case LTTNG_DOMAIN_LOG4J:
+                               case LTTNG_DOMAIN_PYTHON:
+                                       /*
+                                        * Don't print the default channel
+                                        * name for agent domains.
+                                        */
+                                       MSG("%s event %s%s enabled.",
+                                               get_domain_str(dom.type),
+                                               event_name,
+                                               exclusion_string);
+                                       break;
+                               default:
+                                       assert(0);
                                }
                        }
                        free(exclusion_string);
This page took 0.024618 seconds and 4 git commands to generate.