MI: add <filter_expression> (event filter expression)
[lttng-tools.git] / src / common / mi-lttng.c
index 10e82115ea6478ede3bed74be1d5436f2395c8dd..ef98687d868108ef6e37e604b9c5e6c577f1cf00 100644 (file)
@@ -17,7 +17,7 @@
  */
 
 #define _LGPL_SOURCE
-#include <common/config/config.h>
+#include <common/config/session-config.h>
 #include <lttng/snapshot-internal.h>
 #include "mi-lttng.h"
 
@@ -397,6 +397,7 @@ const char *mi_lttng_domaintype_string(enum lttng_domain_type value)
        default:
                /* Should not have an unknown domain */
                assert(0);
+               return NULL;
        }
 }
 
@@ -413,6 +414,7 @@ const char *mi_lttng_buffertype_string(enum lttng_buffer_type value)
        default:
                /* Should not have an unknow buffer type */
                assert(0);
+               return NULL;
        }
 }
 
@@ -920,6 +922,7 @@ int mi_lttng_event_common_attributes(struct mi_writer *writer,
                struct lttng_event *event)
 {
        int ret;
+       const char *filter_expression;
 
        /* Open event element */
        ret = mi_lttng_writer_open_element(writer, config_element_event);
@@ -952,6 +955,23 @@ int mi_lttng_event_common_attributes(struct mi_writer *writer,
        ret = mi_lttng_writer_write_element_bool(writer,
                        config_element_filter, event->filter);
 
+       /* Event filter expression */
+       ret = lttng_event_get_filter_string(event, &filter_expression);
+
+       if (ret) {
+               goto end;
+       }
+
+       if (filter_expression) {
+               ret = mi_lttng_writer_write_element_string(writer,
+                       config_element_filter_expression,
+                       filter_expression);
+
+               if (ret) {
+                       goto end;
+               }
+       }
+
 end:
        return ret;
 }
This page took 0.023587 seconds and 4 git commands to generate.