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

  • Dumb Stupid Videos

    Dumb Stupid

    26 Kasım 2013
  • MrExcite96

    MrExcite96

    17 ŞUBAT 2011
  • RickardRick

    RickardRick

    9 Mart 2007