Exemple #1
0
 def _open_trace(self):
     self._babeltrace_version = trace_utils.read_babeltrace_version()
     if self._babeltrace_version >= self._BT_INTERSECT_VERSION:
         traces = TraceCollection(intersect_mode=self._args.intersect_mode)
     else:
         if self._args.intersect_mode:
             self._print('Warning: intersect mode not available - '
                         'disabling')
             self._print('         Use babeltrace {} or later to '
                         'enable'.format(trace_utils.BT_INTERSECT_VERSION))
             self._args.intersect_mode = False
         traces = TraceCollection()
     handles = traces.add_traces_recursive(self._args.path, 'ctf')
     if handles == {}:
         self._gen_error('Failed to open ' + self._args.path, -1)
     self._handles = handles
     self._traces = traces
     self._ts_begin = traces.timestamp_begin
     self._ts_end = traces.timestamp_end
     self._process_date_args()
     self._read_tracer_version()
     if not self._args.skip_validation:
         self._check_lost_events()
     if not self._check_period_args():
         self._gen_error('Invalid period parameters')
Exemple #2
0
 def _open_trace(self):
     traces = TraceCollection()
     handle = traces.add_traces_recursive(self._arg_path, "ctf")
     if handle == {}:
         self._gen_error("Failed to open " + self._arg_path, -1)
     self._handle = handle
     self._traces = traces
     common.process_date_args(self)
Exemple #3
0
 def __init__(self, path):
     self.traces = dict()
     self.tc = TraceCollection()
     if self.tc:
         # add traces to the collection
         if self.tc.add_traces_recursive(path, "ctf") is None:
             raise RuntimeError('Cannot add trace')
     else:
         print("no TraceCollection available...")
Exemple #4
0
    def _open_trace(self, path):
        traces = TraceCollection()
        handles = traces.add_traces_recursive(path, 'ctf')
        if not handles:
            print('Failed to open ' + path, file=sys.stderr)
            sys.exit(-1)

        self._handles = handles
        self._traces = traces
Exemple #5
0
def load_traces(base):
    traces = TraceCollection()
    for root, dirs, files in os.walk(base):
        for f in files:
            if f == "metadata":
                ret = traces.add_trace(root, "ctf")
                if ret is None:
                    raise IOError("Error adding trace %s" % root)

    return traces
Exemple #6
0
 def _open_trace(self):
     traces = TraceCollection()
     handle = traces.add_traces_recursive(self._arg_path, "ctf")
     if handle == {}:
         self._gen_error("Failed to open " + self._arg_path, -1)
     self._handle = handle
     self._traces = traces
     common.process_date_args(self)
     if not self._arg_skip_validation:
         self._check_lost_events()
 def _open_trace(self):
     traces = TraceCollection()
     handles = traces.add_traces_recursive(self._arg_path, 'ctf')
     if handles == {}:
         self._gen_error('Failed to open ' + self._arg_path, -1)
     self._handles = handles
     self._traces = traces
     self._process_date_args()
     if not self._arg_skip_validation:
         self._check_lost_events()
if __name__ == "__main__":
    parser = argparse.ArgumentParser(description='Trace parser')
    parser.add_argument('path', metavar="<path/to/trace>", help='Trace path')
    parser.add_argument('-t', '--test', type=int, help='Test to validate')
    parser.add_argument('-p', '--pid', type=int, help='PID of the app')
    args = parser.parse_args()

    if not args.test:
        print("Need to pass a test to validate (-t)")
        sys.exit(1)

    if not args.pid:
        print("Need to pass the PID to check (-p)")
        sys.exit(1)

    traces = TraceCollection()
    handle = traces.add_traces_recursive(args.path, "ctf")
    if handle is None:
        sys.exit(1)

    t = None

    if args.test == 1:
        t = Test1(traces, args.pid)
    elif args.test == 2:
        t = Test2(traces, args.pid)
    elif args.test == 3:
        t = Test3(traces, args.pid)
    elif args.test == 4:
        t = Test4(traces, args.pid)
    elif args.test == 5: