尽享科技文章
本博客是一个高端大气上档次的网站

在Linux下,用tail监测文件变化的高级用法

我通常用tail -f 命令来监控Nginx的实时访问日志信息!

但是当我利用grep来筛选被请求URL的特定字符串,来实时显示指定信息,过滤不显示一些不需要的信息!

假如我的nginx访问日志文件为:

/usr/local/nginx/logs/default.log

我通常运行下面的命令,来实时查看Nginx的请求数据:

tail -f /usr/local/nginx/logs/default.log

上面的命令会显示所有Nginx的请求日志,但是当访问量大(或者被CC攻击)时,能看的眼花缭乱!在这种情况下,使用grep方法来过滤掉不需要的日志。

tail -f /usr/local/nginx/logs/default.log | grep 'register.html'

这样,所有访问register.html这个页面的请求信息就会显示出来!

但是,用户在register.html里页面点击其他任何连接,那么访问的链接就会带着register.html的“Referer”来源页数据被Nginx记录到日志,这样用了Grep后也是会显示,而这些就属于无用信息!

下面就是解决这个问题的进阶方法:

tail -f /usr/local/nginx/logs/default.log | awk '{if ($7 ~ /register.html/) print}'

awk的参数说明:

$6 为监控request的数据列,我nginx的默认request数据记录在第七列,而Referer数据在第九列,这样就可以只查看被访问register.html页面的日志了!

request所在的数据列各有不同,你们可以自己数一下,单行里每个空格算一个列的分割,数一下多少空格就好了!

 

赞(0) 打赏
本文为本博客原创,转载请注明原文:https://www.shaobing.hk/120.html

评论 抢沙发

评论前必须登录!

 

探索互联网未来

烧饼博客专注于分享全球科技动态、互联网趋势及编程开发技巧。为您提供最新的业界资讯、搜索优化策略和网站建设方法,助您掌握科技脉搏,领先一步。

隐私政策关于我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册