SORU
21 NİSAN 2011, PERŞEMBE


Basit django 1.3 için örnek Dosya için Oturum açın

Sürüm notlarına ki:

Django 1.3 çerçeve-seviye ekler Python için destek modülü günlüğü.

Bu çok güzel. Bu avantajı kullanmak istiyorum. Ne yazık ki the documentation ne kadar basit ve değerli olduğunu gösterir, tamamen çalışan örnek kod şeklinde gümüş bir tepside bana el vermiyor.

Nasıl bu korkak yeni özellik kodumu biber ben böyle kurarım

logging.debug('awesome stuff dude: %s' % somevar)

ve dosyayı "/tmp/uygulama."doldurmak . günlük

18:31:59 Apr 21 2011 awesome stuff dude: foobar
18:32:00 Apr 21 2011 awesome stuff dude: foobar
18:32:01 Apr 21 2011 awesome stuff dude: foobar

Varsayılan Python günlüğü ve bu arasındaki fark nedir 'çerçeve düzeyinde destek'?

CEVAP
12 AĞUSTOS 2011, Cuma


Ben gerçekten bu kadar burada çalışma örneğidir seviyorum! Cidden müthiş bir şey bu!

Senin bu koyarak settings.py başlangıç

LOGGING = {
    'version': 1,
    'disable_existing_loggers': True,
    'formatters': {
        'standard': {
            'format' : "[%(asctime)s] %(levelname)s [%(name)s:%(lineno)s] %(message)s",
            'datefmt' : "%d/%b/%Y %H:%M:%S"
        },
    },
    'handlers': {
        'null': {
            'level':'DEBUG',
            'class':'django.utils.log.NullHandler',
        },
        'logfile': {
            'level':'DEBUG',
            'class':'logging.handlers.RotatingFileHandler',
            'filename': SITE_ROOT   "/logfile",
            'maxBytes': 50000,
            'backupCount': 2,
            'formatter': 'standard',
        },
        'console':{
            'level':'INFO',
            'class':'logging.StreamHandler',
            'formatter': 'standard'
        },
    },
    'loggers': {
        'django': {
            'handlers':['console'],
            'propagate': True,
            'level':'WARN',
        },
        'django.db.backends': {
            'handlers': ['console'],
            'level': 'DEBUG',
            'propagate': False,
        },
        'MYAPP': {
            'handlers': ['console', 'logfile'],
            'level': 'DEBUG',
        },
    }
}

Şimdi bu da ne demek oluyor?

  1. Aynı tarz gibi gelebilir Formaters ben ./manage.py runserver
  2. İşleyicileri - iki günlükleri - hata ayıklama bir metin dosyası, ve bir bilgi konsol istiyorum. Bu bana gerçekten gerekli ise) kazmak ve bir metin dosyasına kaputun altında ne olduğunu görmek için bakmak için izin verir.
  3. Kaydediciler - biz Burada günlük istediğimiz çivilemek. Genel django alır UYARMAK ve üzeri - özel durum (dolayısıyla yay) arka ucu nereye sevdiğim için bkz: SQL çağrıları beri onlar-ebilmek almak o bir deli.. Son uygulamam vardı bende iki işleyicileri ve itme her şey için.

Şimdi nasıl kullanacağını UYGULAMAM etkinleştirebilirim...

Başına documentation dosyalarınızı üst () views.py bu.. koy

import logging
log = logging.getLogger(__name__)

Sonra bir şeyler çıkarmak için.

log.debug("Hey there it works!!")
log.info("Hey there it works!!")
log.warn("Hey there it works!!")
log.error("Hey there it works!!")

Günlük düzeyleri here here saf python için açıklanmıştır.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Random Act of Kindness Video Contest

    Random Act o

    18 EYLÜL 2012
  • Matt Davis

    Matt Davis

    4 ŞUBAT 2006
  • Nickcidious

    Nickcidious

    6 HAZİRAN 2011