From: David Goulet Date: Thu, 5 Apr 2012 19:46:52 +0000 (-0400) Subject: Add wildcard test to UST X-Git-Tag: v2.1.0-rc1~163 X-Git-Url: https://git.lttng.org/?p=lttng-tools.git;a=commitdiff_plain;h=a62e3ec777dc36c8a23c376f90c8e68dceeeb625;hp=3badf2bf32930336a4902002d840402adb6859e1;ds=sidebyside Add wildcard test to UST Rename test file and add two event wildcard type to the test. Signed-off-by: David Goulet --- diff --git a/.gitignore b/.gitignore index b63da96a3..8a0d08796 100644 --- a/.gitignore +++ b/.gitignore @@ -41,7 +41,7 @@ test_kernel_data_trace test_ust_data_trace kernel_all_events_basic kernel_event_basic -ust_global_all_events_basic +ust_global_event_wildcard ust_global_event_basic gen-nevents gen-events-time diff --git a/tests/ust/Makefile.am b/tests/ust/Makefile.am index 9eda72c5d..7c7bcba41 100644 --- a/tests/ust/Makefile.am +++ b/tests/ust/Makefile.am @@ -6,13 +6,13 @@ AM_LDFLAGS = -lurcu -lurcu-cds EXTRA_DIST = runall.sh utils.sh run-ust-global-tests.sh -noinst_PROGRAMS = ust_global_event_basic ust_global_all_events_basic +noinst_PROGRAMS = ust_global_event_basic ust_global_event_wildcard UTILS=utils.h LIBLTTNG=$(top_srcdir)/src/lib/lttng-ctl/lttng-ctl.c \ $(top_srcdir)/src/common/sessiond-comm/sessiond-comm.c -ust_global_all_events_basic_SOURCES = ust_global_all_events_basic.c $(UTILS) $(LIBLTTNG) +ust_global_event_wildcard_SOURCES = ust_global_event_wildcard.c $(UTILS) $(LIBLTTNG) ust_global_event_basic_SOURCES = ust_global_event_basic.c $(UTILS) $(LIBLTTNG) endif diff --git a/tests/ust/run-ust-global-tests.sh b/tests/ust/run-ust-global-tests.sh index 96c1f9e54..969e21733 100755 --- a/tests/ust/run-ust-global-tests.sh +++ b/tests/ust/run-ust-global-tests.sh @@ -7,7 +7,7 @@ TESTDIR=$CURDIR/.. source $TESTDIR/utils.sh tmpdir=`mktemp -d` -tests=( $CURDIR/ust_global_event_basic $CURDIR/ust_global_all_events_basic ) +tests=( $CURDIR/ust_global_event_basic $CURDIR/ust_global_event_wildcard ) exit_code=0 function start_tests () diff --git a/tests/ust/ust_global_all_events_basic.c b/tests/ust/ust_global_all_events_basic.c deleted file mode 100644 index 3ae786e8c..000000000 --- a/tests/ust/ust_global_all_events_basic.c +++ /dev/null @@ -1,114 +0,0 @@ -/* - * Copyright (c) 2011 David Goulet - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * as published by the Free Software Foundation; only version 2 - * of the License. - * - * 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 _GNU_SOURCE -#include -#include -#include -#include -#include -#include -#include - -#include - -#include "utils.h" - -int lttng_opt_quiet; - -int main(int argc, char **argv) -{ - struct lttng_handle *handle = NULL; - struct lttng_domain dom; - struct lttng_event event; - char *channel_name = "channel0"; - char *session_name = "ust_global_all_events_basic"; - int ret = 0; - - memset(&dom, 0, sizeof(dom)); - memset(&event, 0, sizeof(event)); - dom.type = LTTNG_DOMAIN_UST; - event.type = LTTNG_EVENT_TRACEPOINT; - event.loglevel_type = LTTNG_EVENT_LOGLEVEL_ALL; - - printf("\nTesting tracing all UST events:\n"); - printf("-----------\n"); - - if (argc < 2) { - printf("Missing session trace path\n"); - return 1; - } - - printf("Creating tracing session (%s): ", argv[1]); - if ((ret = lttng_create_session(session_name, argv[1])) < 0) { - printf("error creating the session : %s\n", lttng_strerror(ret)); - goto create_fail; - } - PRINT_OK(); - - printf("Creating session handle: "); - if ((handle = lttng_create_handle(session_name, &dom)) == NULL) { - printf("error creating handle: %s\n", lttng_strerror(ret)); - goto handle_fail; - } - PRINT_OK(); - - printf("Enabling all UST events: "); - if ((ret = lttng_enable_event(handle, &event, channel_name)) < 0) { - printf("error enabling event: %s\n", lttng_strerror(ret)); - goto enable_fail; - } - PRINT_OK(); - - printf("Start tracing: "); - if ((ret = lttng_start_tracing(session_name)) < 0) { - printf("error starting tracing: %s\n", lttng_strerror(ret)); - goto start_fail; - } - PRINT_OK(); - - sleep(2); - - printf("Stop tracing: "); - if ((ret = lttng_stop_tracing(session_name)) < 0) { - printf("error stopping tracing: %s\n", lttng_strerror(ret)); - goto stop_fail; - } - PRINT_OK(); - - printf("Destroy tracing session: "); - if ((ret = lttng_destroy_session(session_name)) < 0) { - printf("error destroying session: %s\n", lttng_strerror(ret)); - } - PRINT_OK(); - - return 0; - -create_fail: - assert(ret != 0); -handle_fail: - assert(handle != NULL); - -stop_fail: -start_fail: -enable_fail: - lttng_destroy_session(session_name); - lttng_destroy_handle(handle); - - return 1; -} diff --git a/tests/ust/ust_global_event_wildcard.c b/tests/ust/ust_global_event_wildcard.c new file mode 100644 index 000000000..1e4420fa5 --- /dev/null +++ b/tests/ust/ust_global_event_wildcard.c @@ -0,0 +1,131 @@ +/* + * Copyright (c) 2011 David Goulet + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * as published by the Free Software Foundation; only version 2 + * of the License. + * + * 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 _GNU_SOURCE +#include +#include +#include +#include +#include +#include +#include + +#include + +#include "utils.h" + +int lttng_opt_quiet; + +int main(int argc, char **argv) +{ + struct lttng_handle *handle = NULL; + struct lttng_domain dom; + struct lttng_event event, ev2; + char *channel_name = "channel0"; + char *channel_name2 = "channel2"; + char *session_name = "ust_global_all_events_basic"; + int ret = 0; + + memset(&dom, 0, sizeof(dom)); + memset(&event, 0, sizeof(event)); + memset(&ev2, 0, sizeof(ev2)); + + dom.type = LTTNG_DOMAIN_UST; + + event.type = LTTNG_EVENT_TRACEPOINT; + event.loglevel_type = LTTNG_EVENT_LOGLEVEL_ALL; + strcpy(event.name, "*"); + + ev2.type = LTTNG_EVENT_TRACEPOINT; + ev2.loglevel_type = LTTNG_EVENT_LOGLEVEL_RANGE; + ev2.loglevel = LTTNG_LOGLEVEL_NOTICE; + strcpy(ev2.name, "abc*"); + + printf("\nTesting tracing all UST events:\n"); + printf("-----------\n"); + + if (argc < 2) { + printf("Missing session trace path\n"); + return 1; + } + + printf("Creating tracing session (%s): ", argv[1]); + if ((ret = lttng_create_session(session_name, argv[1])) < 0) { + printf("error creating the session : %s\n", lttng_strerror(ret)); + goto create_fail; + } + PRINT_OK(); + + printf("Creating session handle: "); + if ((handle = lttng_create_handle(session_name, &dom)) == NULL) { + printf("error creating handle: %s\n", lttng_strerror(ret)); + goto handle_fail; + } + PRINT_OK(); + + printf("Enabling '*' UST events: "); + if ((ret = lttng_enable_event(handle, &event, channel_name)) < 0) { + printf("error enabling event: %s\n", lttng_strerror(ret)); + goto enable_fail; + } + PRINT_OK(); + + printf("Enabling 'abc*' UST events: "); + if ((ret = lttng_enable_event(handle, &ev2, channel_name2)) < 0) { + printf("error enabling event: %s\n", lttng_strerror(ret)); + goto enable_fail; + } + PRINT_OK(); + + printf("Start tracing: "); + if ((ret = lttng_start_tracing(session_name)) < 0) { + printf("error starting tracing: %s\n", lttng_strerror(ret)); + goto start_fail; + } + PRINT_OK(); + + sleep(2); + + printf("Stop tracing: "); + if ((ret = lttng_stop_tracing(session_name)) < 0) { + printf("error stopping tracing: %s\n", lttng_strerror(ret)); + goto stop_fail; + } + PRINT_OK(); + + printf("Destroy tracing session: "); + if ((ret = lttng_destroy_session(session_name)) < 0) { + printf("error destroying session: %s\n", lttng_strerror(ret)); + } + PRINT_OK(); + + return 0; + +create_fail: + assert(ret != 0); +handle_fail: + assert(handle != NULL); + +stop_fail: +start_fail: +enable_fail: + lttng_destroy_session(session_name); + lttng_destroy_handle(handle); + + return 1; +}