¿Cómo agrego un campo personalizado a la cadena de formato de registro de Python?

| | | | | | | | | |

Mi cadena de formato actual es:

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

y quiero agregar un nuevo campo llamado app_name que tendrá un valor diferente en cada script que contenga este formateador.

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

Pero no estoy seguro de cómo pasar ese valor de app_name al registrador para interpolarlo en la cadena de formato. Obviamente, puedo hacer que aparezca en el mensaje de registro pasándolo cada vez, pero esto es complicado.

I" Lo intenté:

logging.info("Mensaje de registro", app_name="myapp") logging.info("Mensaje de registro", {"app_name", "myapp"}) logging.info ("Mensaje de registro", "myapp") 

pero ninguno funciona.