Linux基础(shell::日志筛选 #私藏项目实操分享#)

一年好景君须记,最是橙黄橘绿时。这篇文章主要讲述Linux基础:shell::日志筛选 #私藏项目实操分享#相关的知识,希望能为你提供帮助。


日志筛选数据源::源日志
日志行数据格式如下

10.xx.xx.111 - - [11/Jan/2022:18:34:44 +0800] xxx.com "POST /xx/xx/config HTTP/1.1" "200" 8716 "-" "Mozilla/5.0 (Linux; U; android 11; ko-kr; SM-N981N Build/RP1A.200720.012) AppleWebKit/533.1 (Khtml, like Gecko) Version/4.0 Mobile Safari/533.1"



识别数据源中的筛选的属性



第8个位置为我们需要筛选的 url path
对应    ??awk print $8??  如果日志格式不同 或 需要筛选其他列,可自行调整列数,即 将 8 调整为需要列数便可。


从log文件筛选

#!/bin/bash

file=access.log
cat $file | awk print $8 | while read line
do
echo -e $line%?app_id* > > mysql.txt
done




关键命令  ??cat????awk  ????echo??? ??while  ??


从一批log.gz文件筛选

for loggz in access.log-20220101.gz,access.log-20220102.gz
do
zcat $loggz | awk print $8 | while read line
do
echo -e $line%?app_id* > > mysql.txt
done
done





关键命令 ??zcat????awk????echo????while????for??
当然,如果集群日志系统建设的比较完善的话,上述系列操作就没必要了。
了解更多??Linux基础:目录索引??
【Linux基础(shell::日志筛选 #私藏项目实操分享#)】


    推荐阅读