refactor: make log entry extractor standalone