SORU
27 Aralık 2012, PERŞEMBE


Yapma Python kaydediciler bütün mesajları ayrıca günlük stdout çıktı

Bir şekilde Python günlüğü logging modül otomatik olarak çıktı stdout kullanarak bir şeyler yapmak için vardırbuna ek olarakgitmesi gereken yere günlüğüne dosya? Örneğin, ek olarak amaçlanan yerlere gitmek için tüm aramaları gibilogger.warning, , * logger.critical*5 ama her zaman stdout kopyalanan olurdum. Bu mesajlar yinelenmemesi için:

mylogger.critical("something failed")
print "something failed"

CEVAP
27 Aralık 2012, PERŞEMBE


Giriş çıkış işleyicileri tarafından işlenir; Ekle logging.StreamHandler() kök için bir logger.

İşte örnek bir akış işleyicisi (10* *varsayılan yerine stdout kullanarak) yapılandırma ve kök logger ekleme:

import logging
import sys

root = logging.getLogger()
root.setLevel(logging.DEBUG)

ch = logging.StreamHandler(sys.stdout)
ch.setLevel(logging.DEBUG)
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
ch.setFormatter(formatter)
root.addHandler(ch)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Android Developers

    Android Deve

    9 Kasım 2007
  • My name is Festis and I'm free

    My name is F

    2 EKİM 2011
  • Mindy

    Mindy

    20 NİSAN 2006