其他
实习生凭借自己写的脚本年终奖多了好几千
sql
等代码是否有报错的任务,如果日志里有显示错误,那就返过来定位到代码中进行相应的修改,对于刚进入该公司的一名实习生你会如何做?01先冷静分析问题关键
系统在调试阶段是部署在本地windows系统上的 日志输出很快,在记事本里看日志记录不停的跳动 日志输出文件有点大,一般的记事本软件打开一会就会卡顿 日志里有很多其它不必要关注的日志信息
windows
系统本地上,如果是在Linux
系统上,用tail -f
命令再组合加上一些过滤条件命令便可实时定位跟踪日志文件,输出自己想要看到的内容了。windows
系统,它又没有该命令,记事本全局搜索着看记录跳动的又太快,时常还经常卡顿,这就是该问题的核心难点问题,也是其他实习“骂扑街的”的地方。02思考解决方案
windows
上要是也有像Linux
上那样的实时追踪命令,那不是解决了问题的关键吗。那既然没有可不可以自己尝试写一个脚本出来用于实时跟踪日志文件呢?打开、关闭日志文件 如何实时定位到文件末尾 输出日志记录 循环2. 3步骤
03行动,解决问题
一、Linux
解决方案
Linux
系统上是如何用tail -f
日志实时追踪命令的,这里就再简单的演示一遍,毕竟光说不练假把式,会的大佬们就当是看小学生作文吧。常用命令: # 实时跟踪a日志文件(默认后面10条)
tail -f a.log
# 实时跟踪a日志文件指定记录条数(带上参数-n,后面加你所需要指定的条数)
tail -f -n 15 a.log
# 实时跟踪a日志文件并过滤指定条件的记录(很实用哟)
tail -f a.log | grep 'DEBUG' -c 5 // 意思是:监控a日志文件,并查看含有DEBUG关键字的前后5行
windows
解决方案python
,所以脚本就用它来写了,核心代码如下with open(filePath, 'r') as f:
f.seek(0, 2)
while True:
line = f.readline()
if not line:
time.sleep(0.3)
continue
yield line
if __name__ == '__main__':
for line in tail(filePath):
print(line)
将系统日志文件的绝对路径传入函数内,然后执行就可以跟Linux
系统上的tail -f
命令一样实时跟踪日志输出了,再也不用担心记事本文件打不开卡顿以及记录跳转的很快的问题了。
Linux
系统命令那么强大,但是代码已经给你了,下面你需要什么功能就自己去扩展了呗。04惊喜总是在你最积极乐观的时候出现
.exe
可执行文件,这样以后自己要用的时候就只需要输入日志文件路径,文件编码、过滤掉哪些不需要的日志记录,一键点开始就可以了。windows
日志追踪是啥软件来的,我小声的说这是我自己写的,上司大吃一惊说:可以可以,我帮你你申请一下公司奖金。作者介绍:出入职场的程序员小白,喜欢分享,喜欢写文章,更喜欢跑步,一起学习,一起进步。
声明:本文为 脚本之家专栏作者 投稿,未经允许请勿转载。
一个悄然成为世界最流行的操作系统
如何用低代码“搞垮”一家公司?
大厂员工带宠物上班之后