shell分析http日志

mac2022-06-30  89

http状态码1字头----信息,服务器收到请求,需要请求者继续执行操作2字头----成功,操作被成功接收并处理3字头----重定向,需要进一步的操作以完成请求4字头----客户端错误,请求包含语法错误或无法完成请求5字头----服务器错误,服务器在处理请求的过程中发生了错误应用日志分析脚本cat /usr/local/nginx/logs/access.log | awk '{print $1}' | sort | uniq -c | sort -rnsort选项与参数:-f  :忽略大小写的差异,例如 A 与 a 视为编码相同;-b  :忽略最前面的空格符部分;-M  :以月份的名字来排序,例如 JAN, DEC 等等的排序方法;-n  :使用『纯数字』进行排序(默认是以文字型态来排序的);-r  :反向排序;-u  :就是 uniq ,相同的数据中,仅出现一行代表;-t  :分隔符,默认是用 [tab] 键来分隔;-k  :以那个区间 (field) 来进行排序的意思uniq选项与参数:-i   :忽略大小写字符的不同;-c  :进行计数-u  :只显示唯一的行提取状态码cat /usr/local/nginx/logs/access.log | awk '{print $9}'提取想要的信息cat /usr/local/nginx/logs/access.log | grep -ioE "HTTP\/1\.[1|0]\"[[:blank:]][0-9]{3}"grep参数详解-i  忽略大小写-o  只输出文件中匹配到的部分-E  进行精确的特殊符号    代表意义[:alnum:]    代表英文大小写字节及数字,亦即 0-9, A-Z, a-z[:alpha:]    代表任何英文大小写字节,亦即 A-Z, a-z[:blank:]    代表空白键与 [Tab] 按键两者[:cntrl:]    代表键盘上面的控制按键,亦即包括 CR, LF, Tab, Del.. 等等[:digit:]    代表数字而已,亦即 0-9[:graph:]    除了空白字节 (空白键与 [Tab] 按键) 外的其他所有按键[:lower:]    代表小写字节,亦即 a-z[:print:]    代表任何可以被列印出来的字节[:punct:]    代表标点符号 (punctuation symbol),亦即:" ' ? ! ; : # $...[:upper:]    代表大写字节,亦即 A-Z[:space:]    任何会产生空白的字节,包括空白键, [Tab], CR 等等[:xdigit:]    代表 16 进位的数字类型,因此包括: 0-9, A-F, a-f 的数字与字节

转载于:https://www.cnblogs.com/zclzhao/p/5207746.html

最新回复(0)