[loggers]
keys=root,tracer,mesg,conn,data,mqtt,asyncio,hypercorn_access,hypercorn_error

[handlers]
keys=console_handler,file_handler_name1,file_handler_name2,file_handler_name3,dashboard

[formatters]
keys=console_formatter,file_formatter

[logger_root]
level=DEBUG
handlers=console_handler,file_handler_name1,dashboard

[logger_conn]
level=DEBUG
handlers=console_handler,file_handler_name1
propagate=0
qualname=conn

[logger_mqtt]
level=INFO
handlers=console_handler,file_handler_name1,dashboard
propagate=0
qualname=mqtt

[logger_asyncio]
level=INFO
handlers=console_handler,file_handler_name1,dashboard
propagate=0
qualname=asyncio

[logger_data]
level=DEBUG
handlers=file_handler_name1
propagate=0
qualname=data


[logger_mesg]
level=DEBUG
handlers=file_handler_name2
propagate=0
qualname=msg

[logger_tracer]
level=INFO
handlers=file_handler_name2
propagate=0
qualname=tracer

[logger_hypercorn_access]
level=INFO
handlers=file_handler_name3
propagate=0
qualname=hypercorn.access

[logger_hypercorn_error]
level=INFO
handlers=file_handler_name1,dashboard
propagate=0
qualname=hypercorn.error

[handler_console_handler]
class=StreamHandler
level=DEBUG
formatter=console_formatter

[handler_file_handler_name1]
class=handlers.TimedRotatingFileHandler
level=INFO
formatter=file_formatter
args=(handlers.log_path + 'proxy.log', when:='midnight', backupCount:=handlers.log_backups)

[handler_file_handler_name2]
class=handlers.TimedRotatingFileHandler
level=NOTSET
formatter=file_formatter
args=(handlers.log_path + 'trace.log', when:='midnight', backupCount:=handlers.log_backups)

[handler_file_handler_name3]
class=handlers.TimedRotatingFileHandler
level=NOTSET
formatter=file_formatter
args=(handlers.log_path + 'access.log', when:='midnight', backupCount:=handlers.log_backups)

[handler_dashboard]
level=WARNING
class=web.log_handler.LogHandler

[formatter_console_formatter]
format=%(asctime)s %(levelname)5s | %(name)4s | %(message)s
datefmt=%Y-%m-%d %H:%M:%S

[formatter_file_formatter]
format=%(asctime)s %(levelname)5s | %(name)4s | %(message)s
datefmt=%Y-%m-%d %H:%M:%S

