django-fluentd
django-fluentd copied to clipboard
django-fluentd allows you to use django's logging framework to log directly to a fluentd server of your choice.
============ django-fluentd
django-fluentd allows you to use django's logging framework to log directly to a fluentd server of your choice.
Please consider the package as unstable and don't use it for production, yet.
Installation
with pip::
pip install django-fluentd
or
with setup.py::
git clone https://github.com/jayfk/django-fluentd.git cd django-fluentd python setup.py install
Configuration
Add the following to your settings.py::
DJANGO_FLUENTD_SERVER = "10.10.10.10" DJANGO_FLUENTD_PORT = 24224 #no string DJANGO_FLUENTD_TAG = "your_fluentd_tag"
Add the fluentd handler to your LOGGING dict in your settings.py and add this handler to one of your loggers::
LOGGING = {
...
'handlers':{
'fluentd': {
'level': 'DEBUG',
'class': 'django_fluentd.handler.FluentdHandler',
},
}
...
'loggers': {
'django': {
'handlers': ['fluentd',],
'level': 'DEBUG',
'propagate': False,
},
},
}
If you want to capture all logging messages using fluentd, you can add a root handler::
LOGGING = { ...
'root': {
'level': 'DEBUG',
'handlers': ['fluentd'],
},
...
}
Further information on how to use django's logging framework can be found here: https://docs.djangoproject.com/en/dev/topics/logging/
Fluentd Server Setup
Your Fluentd Server should listen on the ip and the port you specified in DJANGO_FLUENTD_SERVER and DJANGO_FLUENTD_PORT::
Please not that you currently can't use fluentd's secure_forward. If you want to send encrypted or authenticated messages to another fluentd server on the net, you'll have to add a local fluentd server that accepts unencrypted messages and forwards them using secure_forward::
<match **> type secure_forward shared_key foobar self_hostname example.org send_timeout 60s recover_wait 10s heartbeat_interval 1s phi_threshold 8 hard_timeout 60s
<server>
name remote_server_name
host 10.10.10.11
port 24224
username your_username
password your_password
</server>
Further information on how to use fluentd can be found here: http://fluentd.org/