123456789101112131415161718192021222324252627282930313233 |
- import json
- import os
- import library.python.import_tracing.lib.converters.base as base_converter
- class ChromiumTraceConverter(base_converter.BaseTraceConverter):
- @staticmethod
- def _yield_in_chrome_trace_format(events, pid):
- for event in events:
- yield {
- "cat": event.modname,
- "name": event.filename,
- "ph": "B",
- "ts": event.start_time,
- "pid": pid,
- "tid": event.tid,
- "args": {},
- }
- yield {
- "cat": event.modname,
- "name": event.filename,
- "ph": "E",
- "ts": event.end_time,
- "pid": pid,
- "tid": event.tid,
- }
- def dump(self, events, filepath):
- pid = os.getpid()
- with open(filepath, "w") as file:
- file.write(json.dumps(tuple(self._yield_in_chrome_trace_format(events, pid))))
|