AWK处理日志入门(转)】的更多相关文章

前言 这两天自己挽起袖子处理日志,终于把AWK给入门了.其实AWK的基本使用,学起来也就半天的时间,之前总是靠同事代劳,惰性呀. 此文仅为菜鸟入门,运维们请勿围观. 下面是被处理的日志的示例,不那么标准,但不标准的日志正是标准的情况. [2015-08-20 10:00:55.600] - [192.168.0.73/192.168.0.75:1080 com.vip.xxx.MyService_2.0 0 106046 100346 90ms 110ms] 基本语句 最基本的语句,以空格做分割…
什么是Awk Awk是一种小巧的编程语言及命令行工具.(其名称得自于它的创始人Alfred Aho.Peter Weinberger 和 Brian Kernighan姓氏的首个字母).它非常适合服务器上的日志处理,主要是因为Awk可以对文件进行操作,通常以可读文本构建行. 我说它适用于服务器是因为日志文件,转储文件(dump files),或者任意文本格式的服务器终止转储到磁盘都会变得很大,并且在每个服务器你都会拥有大量的这类文件.如果你经历过这样的情境——在没有像Splunk或者其他等价的工…
起因 这是今天我线上出了一个bug,需要查看日志并统计一个我需要的信息出现的频率,可以叫做分组统计. 日志文件部分内容 00:09:07.655 [showcase_backend][topsdk] ERROR - 2017-06-27 00:09:07.655^_^23090346^_^taobao.item.recommend.add^_^10.28.42.60^_^Linux^_^20^_^http://gw.api.taobao.com/router/rest^_^app_key=230…
假设要在 api.log.201707201830 文件中,(此文件的多个字段数据以不可见字符^A(键盘上按下Ctrl+V+A)分隔),要输出第70个字段: awk -F '^A' '{print $70}' api.log.201707201830 要判断第25个字段=9的数据,输出第70个字段:awk -F '^A' '($25==9){print $70}' api.log.201707201830 如果判断的值是字符串,就要加双引号(此案例以\x01分隔)awk -F '\x01' '(…
function test() { i = ) { system("sleep 1") "date +'%Y-%m-%d %H:%M:%S'" | getline mydate; close("date +'%Y-%m-%d %H:%M:%S'"); print "[INFO]["mydate"]"; i++ } } { test() } function test() { i = ) { system(&…
awk 用法:awk ' pattern {action} '  变量名 含义  ARGC 命令行变元个数  ARGV 命令行变元数组  FILENAME 当前输入文件名  FNR 当前文件中的记录号  FS 输入域分隔符,默认为一个空格  RS 输入记录分隔符  NF 当前记录里域个数  NR 到目前为止记录数  OFS 输出域分隔符  ORS 输出记录分隔符  1.awk '/101/' file 显示文件file中包含101的匹配行.  awk '/101/,/105/' file  aw…
日志通常不会在需求阶段作为一个功能单独提出来,也不会在产品方案中看到它的细节.但是,这丝毫不影响它在任何一个系统中的重要地位. 报警系统与日志系统的关系 为了保证服务的高可用,发现问题一定要及时,定位并解决问题一定要迅速. 生产环境一旦出现问题,预警系统就会通过邮件,短信甚至电话的方式实施多维轰炸模式,确保相关负责人不会错过每一个可能的Bug. 而预警系统判断疑似Bug大部分来源于日志系统.比如说某个微服务接口由于各种原因导致频繁调用出错,此时调用段就会捕获这样的异常并打印ERROR级别的日子,…
Linux 下处理和分析文本文件内容,AWK 命令是一个强有力的工具.特别是文件内容是以行和列的形式排版的时候,AWK 就是命令行界的 Excel 啊! 简单的 awk 命令可以直接在命令行中使用,复杂情况下就得写 awk 脚本来解决了. awk 命令基本用法: awk 'pattern {action}' input-file > output-file 这个命令的简单解释就是:遍历输入文件 input-file 内容的每一行,在符合模式 pattern 的行上执行动作 action,并将执行…
基本信息 日志:就是能够准确无误地把系统在运行状态中所发生的情况描述出来(连接超时.用户操作.异常抛出等等): 日志框架:就是集成能够将日志信息统一规范后输出的工具包. Logback优势 Logback框架又有何优势,首先,我们得明白框架能够帮我能够做些什么? 自定义输出路径,后期好维护(方便运维的伙伴) 能够将日志信息存储到本地文件或存储到数据库中去,而且根据滚动策略设置一天一个文件 根据你的喜好,自定制日志的输出格式 可以通过配置文件修改日志文件的具体内容,在不改变原有业务代码的情况下改变…
很多人在学习完一个东西之后就会忘掉自己作为初学者时的体验.. 例如刚接触git的时候自己也是一头雾水,然后别人问起来,老是会说:xxxx#!@#,就是这么回事儿,有什么不好懂的. 其实从不懂到懂,再到“就这么回事儿”还是有一点距离的,只不过自己学了太久已经忘记中间的过程了. 就比如java日志而言,还是走了不少弯路的.趁自己现在还有初学者的一点体验,记录一下自己入门的过程. 这些资料大概可以描绘我的学习过程↓ -----------Java日志入门---------------------- J…