博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
日志段信息过滤
阅读量:5741 次
发布时间:2019-06-18

本文共 1297 字,大约阅读时间需要 4 分钟。

在日常的日志解析当中,我们可能需要实现对日志中的某一特殊段进行信息的过滤,

下面介绍一下我的常用方法。

  

针对这个日志输出信息,其实我主要关注的是下面这个日志段内的信息

    

  那么其实我就是想获取含有'loops-fast'这个字符串的数据,而过滤掉其他的干扰数据,我分为以下几个步骤实现

  • 首先要确定边界值,也就是你要截取的段的开头和结尾的特殊字段,这个很重要
  • 接着我们需要设置一个tag值,通过这个tag值我们可以判断当前是不是在需要过滤的日志段内
  • 编码的时候主要是通过tag值和关键字一起进行判断
  • 考虑到性能可以适当调整判断的顺序,也就是将需要大部分可能出现的判断提前了,并且在判断结束之后及时退出判断

  下面是实现的代码

file_data = ""    tag = 0    with open(filename, "rb") as file:        temp = str(file.read().decode('utf-8','ignore'))        list = temp.split('\n')        file.close()    #主要过滤实现    for line in list:        if tag == 0:            file_data = file_data + line + '\n'        if "Ir  file:function" in line:            tag = 1            file_data = file_data + '--------------------------------------------------------------------------------\n'        if ‘loops-fast’ in line and tag == 1:            file_data = file_data + line + '\n'            functionIr2dict(line,dire_ir)        if "Auto-annotated source" in line and tag == 1:            tag = 0            file_data = file_data + '--------------------------------------------------------------------------------\n'            file_data = file_data + line + '\n'    with open(filename,'w',encoding='utf-8') as file:        file.write(file_data)        file.close()

 

转载于:https://www.cnblogs.com/leezoey/p/10440473.html

你可能感兴趣的文章
windows8没有剪贴板查看器clipbrd怎么办?
查看>>
分享C++基础和MFC编程的优秀学习资料
查看>>
[OC]-RunTime学习路线
查看>>
子类与父类变量与方法的测试
查看>>
幸运大转盘-jQuery+PHP实现的抽奖程序
查看>>
关于android应用内存占用查看及优化
查看>>
web 应用 使用 shiro 安全框架 在 was7访问性能慢
查看>>
分辨率ppi与dpi
查看>>
2014京东校园招聘-软件开发笔试题
查看>>
Postgres-X2部署步骤
查看>>
MODIS批量处理软件MRT的安装说明
查看>>
Python网络通信TCP客户端
查看>>
Redis笔记系列(一)——Redis精要介绍与适用场景
查看>>
java 连接MySql数据库
查看>>
架构设计:一种远程调用服务的设计构思(zookeeper的一种应用实践)
查看>>
Linux 系统病毒入侵分析
查看>>
文件操作(File)
查看>>
MySQL 常用函数详解
查看>>
Tomcat部署Web应用方法总结
查看>>
Spring Security 文档翻译 - 架构与实现之二核心服务
查看>>