mirror of https://github.com/python/cpython
Added a configuration dictionary example to the logging cookbook.
This commit is contained in:
parent
287f24691d
commit
631a7e23c5
|
@ -1038,3 +1038,67 @@ of queues, for example a ZeroMQ 'subscribe' socket. Here's an example::
|
||||||
:ref:`A basic logging tutorial <logging-basic-tutorial>`
|
:ref:`A basic logging tutorial <logging-basic-tutorial>`
|
||||||
|
|
||||||
:ref:`A more advanced logging tutorial <logging-advanced-tutorial>`
|
:ref:`A more advanced logging tutorial <logging-advanced-tutorial>`
|
||||||
|
|
||||||
|
|
||||||
|
An example dictionary-based configuration
|
||||||
|
-----------------------------------------
|
||||||
|
|
||||||
|
Below is an example of a logging configuration dictionary - it's taken from
|
||||||
|
the `documentation on the Django project <https://docs.djangoproject.com/en/1.3/topics/logging/#configuring-logging>`_.
|
||||||
|
This dictionary is passed to :func:`~logging.config.dictConfig` to put the configuration into effect::
|
||||||
|
|
||||||
|
LOGGING = {
|
||||||
|
'version': 1,
|
||||||
|
'disable_existing_loggers': True,
|
||||||
|
'formatters': {
|
||||||
|
'verbose': {
|
||||||
|
'format': '%(levelname)s %(asctime)s %(module)s %(process)d %(thread)d %(message)s'
|
||||||
|
},
|
||||||
|
'simple': {
|
||||||
|
'format': '%(levelname)s %(message)s'
|
||||||
|
},
|
||||||
|
},
|
||||||
|
'filters': {
|
||||||
|
'special': {
|
||||||
|
'()': 'project.logging.SpecialFilter',
|
||||||
|
'foo': 'bar',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'handlers': {
|
||||||
|
'null': {
|
||||||
|
'level':'DEBUG',
|
||||||
|
'class':'django.utils.log.NullHandler',
|
||||||
|
},
|
||||||
|
'console':{
|
||||||
|
'level':'DEBUG',
|
||||||
|
'class':'logging.StreamHandler',
|
||||||
|
'formatter': 'simple'
|
||||||
|
},
|
||||||
|
'mail_admins': {
|
||||||
|
'level': 'ERROR',
|
||||||
|
'class': 'django.utils.log.AdminEmailHandler',
|
||||||
|
'filters': ['special']
|
||||||
|
}
|
||||||
|
},
|
||||||
|
'loggers': {
|
||||||
|
'django': {
|
||||||
|
'handlers':['null'],
|
||||||
|
'propagate': True,
|
||||||
|
'level':'INFO',
|
||||||
|
},
|
||||||
|
'django.request': {
|
||||||
|
'handlers': ['mail_admins'],
|
||||||
|
'level': 'ERROR',
|
||||||
|
'propagate': False,
|
||||||
|
},
|
||||||
|
'myproject.custom': {
|
||||||
|
'handlers': ['console', 'mail_admins'],
|
||||||
|
'level': 'INFO',
|
||||||
|
'filters': ['special']
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
For more information about this configuration, you can see the `relevant
|
||||||
|
section <https://docs.djangoproject.com/en/1.3/topics/logging/#configuring-logging>`_
|
||||||
|
of the Django documentation.
|
||||||
|
|
Loading…
Reference in New Issue