X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;ds=sidebyside;f=ltt-control%2Flttd%2Flttd.c;h=e931df5b6e613dfed5553c35435d2c862b05a4e8;hb=d24c12e7dfc734d8365752281e29a7ffb3e6990f;hp=fea1188e600acb24454ad5e460f800ee28f9991b;hpb=6f63924207e4cb43541989997e33a5da4e14061a;p=lttv.git diff --git a/ltt-control/lttd/lttd.c b/ltt-control/lttd/lttd.c index fea1188e..e931df5b 100644 --- a/ltt-control/lttd/lttd.c +++ b/ltt-control/lttd/lttd.c @@ -67,12 +67,14 @@ struct channel_trace_fd { int num_pairs; }; -static char *trace_name = NULL; -static char *channel_name = NULL; -static int daemon_mode = 0; -static int append_mode = 0; -static unsigned long num_threads = 1; +static char *trace_name = NULL; +static char *channel_name = NULL; +static int daemon_mode = 0; +static int append_mode = 0; +static unsigned long num_threads = 1; volatile static int quit_program = 0; /* For signal handler */ +static int dump_flight_only = 0; +static int dump_normal_only = 0; /* Args : * @@ -92,6 +94,8 @@ void show_arguments(void) printf("-d Run in background (daemon).\n"); printf("-a Append to an possibly existing trace.\n"); printf("-N Number of threads to start.\n"); + printf("-f Dump only flight recorder channels.\n"); + printf("-n Dump only normal channels.\n"); printf("\n"); } @@ -143,6 +147,12 @@ int parse_arguments(int argc, char **argv) argn++; } break; + case 'f': + dump_flight_only = 1; + break; + case 'n': + dump_normal_only = 1; + break; default: printf("Invalid argument '%s'.\n", argv[argn]); printf("\n"); @@ -256,6 +266,17 @@ int open_channel_trace_pairs(char *subchannel_name, char *subtrace_name, ret = open_channel_trace_pairs(path_channel, path_trace, fd_pairs); if(ret < 0) continue; } else if(S_ISREG(stat_buf.st_mode)) { + if(strncmp(entry->d_name, "flight-", sizeof("flight-")-1) != 0) { + if(dump_flight_only) { + printf("Skipping normal channel %s\n", path_channel); + continue; + } + } else { + if(dump_normal_only) { + printf("Skipping flight channel %s\n", path_channel); + continue; + } + } printf("Opening file.\n"); fd_pairs->pair = realloc(fd_pairs->pair,