X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=bindings%2Fpython%2Fexamples%2Fbabeltrace_and_lttng.py;h=42ebc85eb3019c5e2579206b8ff36088dfc1a265;hp=cb4479653feba42ce11256f0244c935183db7090;hb=7d7466d89f0d46afc31a1520903b9f9e2aa183b1;hpb=24a3136a3837ee43162b1393827faa938f0789eb diff --git a/bindings/python/examples/babeltrace_and_lttng.py b/bindings/python/examples/babeltrace_and_lttng.py index cb447965..42ebc85e 100644 --- a/bindings/python/examples/babeltrace_and_lttng.py +++ b/bindings/python/examples/babeltrace_and_lttng.py @@ -1,3 +1,4 @@ +#!/usr/bin/env python3 # babeltrace_and_lttng.py # # Babeltrace and LTTng example script @@ -59,18 +60,23 @@ ret = lttng.create(ses_name,trace_path) if ret < 0: raise LTTngError(lttng.strerror(ret)) +domain = lttng.Domain() +domain.type = lttng.DOMAIN_KERNEL + han = None -han = lttng.Handle(ses_name, lttng.Domain()) +han = lttng.Handle(ses_name, domain) if han is None: raise LTTngError("Handle not created") # Enabling all events -ret = lttng.enable_event(han, lttng.Event(), None) +event = lttng.Event() +event.type = lttng.EVENT_ALL +event.loglevel_type = lttng.EVENT_LOGLEVEL_ALL +ret = lttng.enable_event(han, event, None) if ret < 0: raise LTTngError(lttng.strerror(ret)) - # Start, wait, stop ret = lttng.start(ses_name) if ret < 0: @@ -91,36 +97,22 @@ if ret < 0: # BABELTRACE -# Create context and add trace: -ctx = babeltrace.Context() -ret = ctx.add_trace(trace_path + "/kernel", "ctf") +# Create TraceCollecion and add trace: +traces = babeltrace.TraceCollection() +ret = traces.add_trace(trace_path + "/kernel", "ctf") if ret is None: raise BabeltraceError("Error adding trace") -# Iterator setup -bp = babeltrace.IterPos(babeltrace.SEEK_BEGIN) -ctf_it = babeltrace.ctf.Iterator(ctx,bp) - # Reading events from trace # and outputting timestamps and event names # in out_file print("Writing trace file...") output = open(out_file, "wt") -event = ctf_it.read_event() -while(event is not None): - output.write("TS: {}, {} : {}\n".format(event.get_timestamp(), - event.get_cycles(), event.get_name())) - - # Next event - ret = ctf_it.next() - if ret < 0: - break - event = ctf_it.read_event() +for event in traces.events: + output.write("TS: {}, {} : {}\n".format(event.timestamp, event.cycles, event.name)) # Closing file output.close() -# Destroying dynamic elements -del ctf_it, han print("Done.")