一个简单的django应用程序,以各种格式(如json)记录请求/响应。
django-logging-json的Python项目详细描述
…角色::python(代码)
:语言:python支持将日志消息发送到ElasticSearch。
…图片::https://badge.fury.io/py/django logging json.svg
:目标:https://badge.fury.io/py/django logging json
代码块::python
pip install git+https://github.com/cipriantarta/django logging
代码块::python
快速启动
==
1。将"django_logging"添加到已安装的应用程序设置中,如下所示:
…代码块:python
已安装的应用程序=(
…
‘django_日志记录’,
)
2。在您的中间件类中包括djangologgingmiddleware中间件,如下所示:
…代码块::python
middleware_classes=(
'django_logging.middleware.djangologgingmiddleware',
…
handlers
==
appfilehandler
----
此句柄将请求/响应信息记录到"log_path/app.log"中。对于未处理的异常,它还将在同一文件中记录请求/异常。
日志格式:
代码块::javascript
{
"info":
{
"timestamp":
{
"request":{
…请求信息…
},
"响应":{
…响应信息…
}
}
}
}
}
>请求和异常
……代码块::javascript
{
"错误":
{
"时间戳":
{
"请求":{
…请求信息…
},
"异常":{
"消息":"异常消息",
"回溯":[
…
]
}
}
}
}
}
sqlfilehandler
----
此处理程序会将所有查询记录到"logu path/sql.log`"。
在生产环境中,您应该设置"logu level=error"或"sqlu log=false",以避免性能问题。
如果"console logu"是et到``true`
----
>此处理程序将调试消息记录到``log路径/debug.log``。此处理程序仅在"settings.debug"设置为"true"时使用。
日志格式:
…代码块::python
[%(levelname)s-%(created)s],文件:%(module)s.py,func:%(funcname)s,ln:%(lineno)s:%(message)s
custom use
==
代码块::python
代码块::python
rride django日志设置,在项目的设置文件中添加字典
…代码块::python
django_logging={
"控制台日志":false
}
W·奎里仅限S。
:python:`log_level='debug'-如果设置.debug设置为true,否则log_level设置为'info'
:python:`disable_existing_loggers=true'-如果要与多个记录器组合,请将此设置为false。
:python:`log_path='{}/log s'。格式(settings.baser)`-如果logs文件夹不存在,则将创建它。
:python:`ignored戥path=['/admin','/static','/favicon.ico']`-要忽略的URL终结点列表。
:python:`response戥fields=('status','reason','charset','headers','content')`-要记录的响应字段列表。
:python:`content_json_only=true`-仅当其为json文档时才显示日志响应内容。
:python:`rotate_mb=100`-日志文件在旋转之前可以具有的最大大小(以MB为单位)。
:python:`rotate_count=10`-最大旋转日志文件数。
:python:`indent_控制台日志=2`-按"n"空格缩进控制台日志。
:python:`elasticsearch\u enabled=false`-设置为yes以启用elasticsearch支持。
:python:`elasticsearch\u hosts=["localhost"]`-elasticsearch hosts
:python:`elasticsearch\u index="django logging json"`-elasticse架构索引名称
:python:`elasticsearch_ssl=false`-通过ssl(:443)的elasticsearch连接
:python:`elasticsearch_auth=('user',password)`-elasticsearch授权凭据(user,password)。默认为"none"
更改日志
==
1.15[2017-11-23]
----
-将certifi添加到所需包
-删除python 3.4支持并添加python 3.6
1.12[2017-11-09]
----
-错误修复
<1.11[2017-11-09]
---——
-错误修复
1.10[2017-11-02]
———————————————————————————————————————————————————————————————————————————使用快速查询对日志进行垃圾邮件处理是不必要的
如果消息被发送到ElasticSearch两次
-记录来自脚本(管理命令等)的SQL查询,而不只是来自Web请求
1.5.9[2017-10-19]
----
-将"raw"添加到异常消息
-使用PPrint而不是JSON转储进行控制台输出ut
1.5.8[2017-10-03]
———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————ango中间件'django>;=1.10`
响应进程中的异常。给其他中间件一个处理异常的机会。
-控制台日志缩进
-弹性搜索支持。下面是使用带有ElasticSearch和Django日志记录的Kibana的示例图表。图片::kibana_sample.png
1.4[2016-02-19]
----
-错误修复
-使用多个数据库时添加查询日志记录支持
-如果使用多个数据库,则添加SQL日志的数据库别名
-添加普通dict日志记录支持
1.3[2015-12-13]
—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————/>-如果是JSON,则记录响应内容(错误)
[2015-11-17]1.1或异常日志项
:语言:python支持将日志消息发送到ElasticSearch。
…图片::https://badge.fury.io/py/django logging json.svg
:目标:https://badge.fury.io/py/django logging json
代码块::python
pip install git+https://github.com/cipriantarta/django logging
代码块::python
快速启动
==
1。将"django_logging"添加到已安装的应用程序设置中,如下所示:
…代码块:python
已安装的应用程序=(
…
‘django_日志记录’,
)
2。在您的中间件类中包括djangologgingmiddleware中间件,如下所示:
…代码块::python
middleware_classes=(
'django_logging.middleware.djangologgingmiddleware',
…
handlers
==
appfilehandler
----
此句柄将请求/响应信息记录到"log_path/app.log"中。对于未处理的异常,它还将在同一文件中记录请求/异常。
日志格式:
代码块::javascript
{
"info":
{
"timestamp":
{
"request":{
…请求信息…
},
"响应":{
…响应信息…
}
}
}
}
}
>请求和异常
……代码块::javascript
{
"错误":
{
"时间戳":
{
"请求":{
…请求信息…
},
"异常":{
"消息":"异常消息",
"回溯":[
…
]
}
}
}
}
}
sqlfilehandler
----
此处理程序会将所有查询记录到"logu path/sql.log`"。
在生产环境中,您应该设置"logu level=error"或"sqlu log=false",以避免性能问题。
如果"console logu"是et到``true`
>此处理程序将调试消息记录到``log路径/debug.log``。此处理程序仅在"settings.debug"设置为"true"时使用。
日志格式:
…代码块::python
[%(levelname)s-%(created)s],文件:%(module)s.py,func:%(funcname)s,ln:%(lineno)s:%(message)s
custom use
==
代码块::python
代码块::python
rride django日志设置,在项目的设置文件中添加字典
…代码块::python
django_logging={
"控制台日志":false
}
W·奎里仅限S。
:python:`log_level='debug'-如果设置.debug设置为true,否则log_level设置为'info'
:python:`disable_existing_loggers=true'-如果要与多个记录器组合,请将此设置为false。
:python:`log_path='{}/log s'。格式(settings.baser)`-如果logs文件夹不存在,则将创建它。
:python:`ignored戥path=['/admin','/static','/favicon.ico']`-要忽略的URL终结点列表。
:python:`response戥fields=('status','reason','charset','headers','content')`-要记录的响应字段列表。
:python:`content_json_only=true`-仅当其为json文档时才显示日志响应内容。
:python:`rotate_mb=100`-日志文件在旋转之前可以具有的最大大小(以MB为单位)。
:python:`rotate_count=10`-最大旋转日志文件数。
:python:`indent_控制台日志=2`-按"n"空格缩进控制台日志。
:python:`elasticsearch\u enabled=false`-设置为yes以启用elasticsearch支持。
:python:`elasticsearch\u hosts=["localhost"]`-elasticsearch hosts
:python:`elasticsearch\u index="django logging json"`-elasticse架构索引名称
:python:`elasticsearch_ssl=false`-通过ssl(:443)的elasticsearch连接
:python:`elasticsearch_auth=('user',password)`-elasticsearch授权凭据(user,password)。默认为"none"
更改日志
==
1.15[2017-11-23]
----
-将certifi添加到所需包
-删除python 3.4支持并添加python 3.6
1.12[2017-11-09]
----
-错误修复
<1.11[2017-11-09]
---——
-错误修复
1.10[2017-11-02]
———————————————————————————————————————————————————————————————————————————使用快速查询对日志进行垃圾邮件处理是不必要的
如果消息被发送到ElasticSearch两次
-记录来自脚本(管理命令等)的SQL查询,而不只是来自Web请求
1.5.9[2017-10-19]
----
-将"raw"添加到异常消息
-使用PPrint而不是JSON转储进行控制台输出ut
1.5.8[2017-10-03]
———————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————ango中间件'django>;=1.10`
响应进程中的异常。给其他中间件一个处理异常的机会。
-控制台日志缩进
-弹性搜索支持。下面是使用带有ElasticSearch和Django日志记录的Kibana的示例图表。图片::kibana_sample.png
1.4[2016-02-19]
----
-错误修复
-使用多个数据库时添加查询日志记录支持
-如果使用多个数据库,则添加SQL日志的数据库别名
-添加普通dict日志记录支持
1.3[2015-12-13]
—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————/>-如果是JSON,则记录响应内容(错误)
[2015-11-17]1.1或异常日志项