向https端点发送消息的python日志处理程序。

oxomo的Python项目详细描述


python日志记录处理程序
----------

一个简单的python日志记录处理程序,可用于发送到https端点。从graypy日志库中借用了额外字段的概念。

###配置

创建配置文件python.conf并将rocketchat handler添加到配置文件中。


[handlers]
keys=rocketchathandler

[handler\rocketchathandler]
class=oxomo.handlers.rocketchathandler
formatter=jsonformat
args=(“rocketchat\u webhook\u url”,“post”)

[formatter s]
keys=jsonformat


[loggers]
keys=root

[logger\u root]
handlers=rocketchathandler
level=error

[formatter\u jsonformat]
format={“logger name”:“%(name)s”,“ascitime”:“%(asctime)s”,“filename”:“%(filename)s”,“logrecordcreationtime”:“%(created)f”,“functionname”:“%(funcname)s”,“levelno”:“%(levelno)s”,“lineno”:“%(lineno)d”,“time”:“%(msec)d”,“levelname”:“%(levelname)s”,“message”:“%(message)s”}
datefmt=


\python文件中的使用配置

import logging.config
import oxomo.handlers

logger=logging.getlogger('mylogger')

logger.error('test error log')

未捕获异常作为错误的异常



def sys exception\u异常处理程序(类型,值,tb):
logger.error(“未捕获异常:{0}”。format(str(值)))
sys.
sys.\u exceptipthook(类型,值,tb)
sys.exceptipthook=sys excepthook=sysexception\异常处理程序

={
“版本”:1,< BR/> 'Br./Br> >格式化程序>:{
“格式”:'%(LealNeX)S%(ActhTimes)%%(进程)d%(线程)d%(消息)s 'BR/> },
“简单”:{'BR/>格式>:'%(LealNeX)S%(消息)s 'BR/> },
'json':{
'format':'{“loggername”:“%(name)s”,“ascitime”:“%(asctime)s”,“filename”:“%(filename)s”,“logrecordcreationtime”:“%(created)f”,“functionname”:“%(funcname)s”,“levelno”:“%(levelno)s”,“lineno”:“%(lineno)d”,“time”:“%(msec)d”,“levelname”:“%(levelname)s”,“message”:“%(message)s”},
},
},
'处理程序':{
'控制台':{
'类':'日志记录.流处理程序',
'级别':'调试',
'格式化程序':'详细',
},
'oxomo':{
'类':'oxomo.处理程序.rocketchathandler',
'级别':'信息',
'formatter':'json',
'url':'rocketchat'u webhook'url',
},
},
'loggers':{
'django':{
'handlers':['console',],
'level':os.getenv('django'u log'level','info'),
},
'your'u app'name':{
'处理程序':['console','oxomo'],
'level':'info',
},
},
}

消息')
logger.error('this is error message.')
logger.critical('this is critical message.')

return response({},status=status.http 200-u确定)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java无法使用JSF访问托管bean方法   java是制作具有多值类型的HashMap的正确方法   javafx中TicTacToe的java更新UI   windows Java文件。getCanonicalFile()无法处理冒号“:”   java在一个布局屏幕中创建多个(26)按钮   java Android Studio:Gradle构建完成,有251个错误   我们如何在Java上为callfireapiclient编写单元/集成测试?   java无法将1715UTC转换为本地/gmt类型   具有已定义的数字序列的JAVA循环   Java程序正在netbeans中编译,但未在CMD中编译,包不存在   java Android构造函数和onCreate()之间有什么区别?   java配置弹性搜索结果评分   java LibGDX纹理是否可绘制?   java如何在Android中设置应用程序默认打开pdf   java是否有一种创造性的方法将多个参数传递给contentEquals()方法?   java在Android上存储Ed25519私钥