一个日志模板,从traceback打印异常受启发做的模板,可被pycharm esclip sublime等ide识别和跳转

之前发过日志,再增加一种模板。

logging.Formatter(‘%(asctime)s - %(name)s - File "%(pathname)s", line %(lineno)d, in<%(funcName)s> - %(levelname)s - %(message)s‘, "%Y-%m-%d %H:%M:%S"),  # 一个模仿traceback异常的可跳转到打印日志地方的模板

此模板是模拟traceback字符串的格式,因为traceback字符串被pycahrm等ide支持成跳转了,按照那个格式做日志模板,那么pycharm 控制台和日志文件都能很轻松跳转到指定文件的指定行。

使用pip安装:
pip install -i https://pypi.org/simple/ multiprocessing_log_manager==0.1.7

控制台的日志是这样,可以直接点击链接,自动跳转到指定文件的指定行。

 
 
 
 

原文地址:https://www.cnblogs.com/ydf0509/p/9378940.html

时间: 2024-10-05 07:10:41

一个日志模板,从traceback打印异常受启发做的模板,可被pycharm esclip sublime等ide识别和跳转的相关文章

在error日志打印异常

在日志中打印异常,经常会看到以下的写法: logger.error(e.getMessage()); 或者是: e.printStackTrace(); 这两种其实都不太好. e.getMessage只会打印出异常的类型,但是不会显示出错的异常方法堆栈,无法在日志中找出错误代码 而e.printStackTrace();则是将异常打印到控制台,并不是打印到error日志中. 解决方法 看logger.error源码,可以发现: public void error(String msg, Thro

日志如何打印异常堆栈信息。

package com.doctor.slf4j; import org.junit.Test; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * 如何打印异常堆栈信息. * @author doctor * * @time 2014年12月11日 上午9:49:00 */ public class LogThrowableRule { private final Logger log = LoggerFactory.g

分享一个日志处理库

分享自己写的一个日志处理库,如果你需要更重,可以进一步扩展,如果你需要更轻,只需要使用Logger类中的方法就可以了.之所以使用Timer+队列而不是使用ThreadPool来写入日志,主要是考虑到可以进行更大程度的控制.主要代码: Logger 1 using System; 2 using System.Collections.Generic; 3 using System.Text; 4 5 using System.IO; 6 using System.Threading; 7 8 na

Golang把所有包括底层类库,输出到stderr的内容, 重新定向到一个日志文件里面?

不论应用是如何部署的,我们都期望能扑捉到应用的错误日志, 解决思路: 自己写代码处理异常拦截,甚至直接在main函数中写异常拦截. stderr重定向到某个文件里 使用 syscall.Dup2 第一种方法比较简单, 我们这里主要看后两种: 使用 stderr替换的代码: package main import (     "fmt"     "os" ) func main() {     f, _ := os.OpenFile("C:\\tmp\\11

python中利用tracekback跟踪栈以及打印异常信息

?##sys.exc_info() 返回 (type, value, traceback). type为异常类型, value为异常的参数(通常为异常错误的信息), traceback为跟踪回溯的对象. exc_type, exc_value, exc_traceback = sys.exc_info() print "*** print sys.exc_info:" print 'exc_type is: %s, exc_value is: %s, exc_traceback is:

python日志,支持彩色打印和文件大小切片写入和写入mongodb

支持不同logger name的日志写入不同的文件,不同logger name日志写入不同的mongodb 的collection.LogManager比较容易调用,因为里面的内部方法全都使用了下划线,使用了下划线的就是保护和私有方法不需要外界调用,也不需要看懂他,在调用时候pycharm不会自动补全提示这些带下划线的无关方法了,只暴露了get_and_add_handlers和get_without_handlers两个可能需要调用的方法,pyrcharm可以自动补全这两个方法. 主要思路和模

log4 配置日期为滚动类型(每天产生一个日志文件)

控制台: App.config,log4的配置,同时要在E:\MyWork\log4日志测试\   建立对应文文件夹存放log文件 <?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="log4net" type="log4net.Config.Log4NetConfigur

log4j实现每个线程保存一个日志文件

log4j.properties: ### direct log messages to stdout ### log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.Conversion

[Other]来做一个微信打印机吧 -- 微信打印的设计思路参考

原文地址:来做一个微信打印机吧 -- 微信打印的设计思路参考 最近微信打印机小火了一把,比如印美团,747微信打印机,都是利用微信公共平台实现照片的打印. 具体流程: 扫描二维码关注公共主页 发送图片 发送微信打印机上的打印码 简单三步,实现微信打印照片的功能. 那么它是怎么实现的呢?在此提供一下自己的思路供大家参考. 源码已经写好了,确实可行. 如果大家有好的思路欢迎一起分享^_^ 微信的后台接口 用户把照片发给微信公共账号,在接收到的时候是有图片的url的,所以我们不用考虑图片的存储问题.