Como adiciono um campo personalizado à string de formato de log do Python?

| | | | | | | | | |

Minha string de formato atual é:

formatter = logging.Formatter("%(asctime)s : %(message)s") 

e quero adicionar um novo campo chamado app_name que terá um valor diferente em cada script que contém este formatador.

import logging formatter = logging.Formatter(" %(asctime)s %(app_name)s : %(message)s") syslog.setFormatter(formatter) logger.addHandler(syslog) 

Mas não tenho certeza de como passar esse valor de app_name para o logger para interpolar na string de formato. Obviamente, posso fazer com que ele apareça na mensagem de log passando-o todas as vezes, mas isso é confuso.

I" tentei:

logging.info("Log message", app_name="myapp") logging.info("Log message", {"app_name", "myapp"}) logging.info ("Log message", "myapp") 

mas nenhum funciona.