version: 1 disable_existing_loggers: false formatters: standard: format: '%(asctime)s | %(levelname)-8s | %(name)s:%(lineno)d | %(funcName)s() | %(message)s' datefmt: '%Y-%m-%d %H:%M:%S' detailed: format: '%(asctime)s | %(levelname)-8s | %(name)s:%(lineno)d | %(funcName)s() | [%(process)d:%(thread)d] | %(message)s' datefmt: '%Y-%m-%d %H:%M:%S' handlers: console: class: logging.StreamHandler level: INFO formatter: standard stream: ext://sys.stdout file: class: logging.handlers.TimedRotatingFileHandler level: DEBUG formatter: detailed filename: logs/proxy_server.log when: midnight interval: 1 backupCount: 30 encoding: utf8 error_file: class: logging.handlers.TimedRotatingFileHandler level: ERROR formatter: detailed filename: logs/error.log when: midnight interval: 1 backupCount: 30 encoding: utf8 loggers: httpx: level: WARNING handlers: [console, file] propagate: false uvicorn: level: INFO handlers: [console, file] propagate: false root: level: INFO handlers: [console, file, error_file]