class TextLog_usingFile(TextLog): def __init__(self, file): assert file from pyLibrary.env.files import File self.file = File(file) if self.file.exists: self.file.backup() self.file.delete() self.file_lock = Lock("file lock for logging") def write(self, template, params): with self.file_lock: self.file.append(expand_template(template, params))