123456789101112131415161718192021222324252627282930 |
- import json
- import logging
- from typing import Generator
- from oteldatareplay.resource_span_record import ResourceSpanRecord
- logger = logging.getLogger(__name__)
- class RecordReader(object):
- def __init__(self, file_path):
- self.file_path = file_path
- self.fp = open(file_path, 'r')
- self.running = True
- def reset(self):
- self.fp.seek(0)
- def records_generator(self) -> Generator[ResourceSpanRecord, None, None]:
- line = self.fp.readline()
- while line and self.running:
- ob = json.loads(line)
- yield ResourceSpanRecord(ob)
- line = self.fp.readline()
- return
- def close(self):
- self.running = False
- self.fp.close()
- logger.info("Player closed")
|