La journalisation des données de la variable avec la nouvelle chaîne de format

Je utiliser la fonction de journalisation pour python 2.7.3. La Documentation pour cette version de Python dire:

l'enregistrement package pré-dates plus récentes options de formatage telles que les str.format() et string.De modèle. Ces nouvelles options de mise en forme sont pris en charge...

J'aime "nouveau" format avec des accolades. Donc, je suis en train de faire quelque chose comme:

 log = logging.getLogger("some.logger")
 log.debug("format this message {0}", 1)

Et obtenez l'erreur:

TypeError: pas tous les arguments converti lors de la mise en forme de chaîne

Ce qui me manque ici?

P. S. je ne veux pas utiliser

log.debug("format this message {0}".format(1))

parce que dans ce cas, le message est toujours en cours de formatage, indépendamment de l'enregistreur de niveau.

  • Vous pouvez faire ceci: log.debug("format this message%d" % 1)
  • vous devez configurer le Formatter l'utilisation de '{' comme style
  • Merci pour les conseils mais non. Veuillez vous reporter à "p.s." l'article pourquoi. BTW journal.debug("format de ce message de%d", 1) - fonctionne très bien.
  • Comment le configurer? Est-il direct à la documentation de faire cela?
  • Je l'ai trouvé. S'il vous plaît faire une réponse afin que je puisse le définir comme "droit de réponse. Je vous remercie une fois de plus.
  • soit définir par programmation sur l'enregistreur, ou utiliser un fichier de configuration. Regardez les exemples dans le lien.
  • Combien de temps jusqu'à ce qu'il y a une solution dans la stdlib veuillez Q_Q

InformationsquelleAutor MajesticRa | 2012-10-30