当前位置: 首页 > news >正文

Linux高效查日志命令介绍

说明:之前介绍Linux补充命令时,有介绍使用tail、grep命令查日志;

  • Linux命令补充

今天发现仅凭这两条命令不够,本文扩展介绍一下。

在这里插入图片描述

命令一:查看日志开头

head -n 行数 日志路径

如下,可以查看程序启动是否正常;

在这里插入图片描述

命令二:查看日志末尾

tail -n 行数 日志路径

能查看最新的日志信息,在日志行数非常多的情况下,这个命令很好用。不然,百万行的日志记录,用cat或者more,不可想象。

在这里插入图片描述

命令三:实时查看日志末尾

tail -f -n 行数 日志路径

实时查看最新的部分日志记录,在程序打印日志量少的情况下,可以敲完命令,然后去触发BUG,能显示触发BUG的错误信息,很有用,也很局限,因为一般大项目,控制台会一直刷日志的。

在这里插入图片描述

命令四:查询关键词所在行

grep -rina "关键词" 日志路径

查询关键词所在行的信息,这个日志用得不多,一般可以用来验证日志里是否打印了某行日志,用来判断程序执行情况。

比如,在代码里有以下代码;

	log.info("进入xx方法");

就可以用这个作为关键词去搜一下,看有没有这行日志。平常我用这个命令搜配置文件比较多,可以快速查看配置文件中某个配置项的设置。

在这里插入图片描述

注,引号里面的关键字就是模糊匹配的,不用在另外加百分号了,不要敲成下面这样。

grep -rina "%url%" application-test.yml

命令五:查询关键词最后一次出现的位置

grep -rina "关键词" 日志路径 | tail -n 行数

这个可以用来找最后一次出现异常的地方,可以找到当时出现的时间点,很有用。

在这里插入图片描述

命令六:查询关键词上下文内容

grep -C 行数 "关键词" 日志路径

这个可以查看关键词附近的日志信息,能完整的看到异常附近的日志内容。其中-B指前几行,-A指后几行,而-C是上下各多少行。如下:

在这里插入图片描述

命令七:查询关键词最后一次出现的上下文内容

grep -C 行数 "关键词" 日志路径 | tail -n 行数(结合前面,最好等于前面行数的2倍,因为前面是-C,上下各多少行)

这个命令值前面的组合,能找到最后一次出现异常时的上下文内容,快速定位到异常;

在这里插入图片描述

总结

本文介绍了查看日志的几个命令,可以高效查日志

http://www.lryc.cn/news/458634.html

相关文章:

  • 非线性关卡设计
  • Qt-链接数据库可视化操作
  • 萤火php端: 查询数据的时候报错: “message“: “Undefined index: pay_status“,
  • 程序人生-2024我的个人总结
  • SQL自学:什么是联结,如何编写使用联结的SELECT语句
  • 【C++】函数重载+引用
  • 华为S5735交换机console密码重置和恢复出厂设置
  • Spring Security无脑使用
  • 学习 PostgreSQL + Spring Boot 3 +mybatisplus整合过程中的报错记录
  • 立仪光谱共焦传感器在玻璃测量技术上的突破
  • Llama系列上新多模态!3.2版本开源超闭源,还和Arm联手搞了手机优化版,Meta首款多模态Llama 3.2开源!1B羊驼宝宝,跑在手机上了
  • 系统缺失mfc140.dll的修复方法,有效修复错误mfc140.dll详细步骤
  • 移动app的UI和接口自动化测试怎么进行?
  • Unity实现自定义图集(二)
  • 智能码二维码zhinengma.cn的动态数据更新是如何实现的?
  • uniapp view怎么按长度排列一行最多四个元素,并且换行后,每一行之间都有间隔
  • Android列表组件api
  • ToB项目身份认证AD集成(完):利用ldap.js实现与windows AD对接实现用户搜索、认证、密码修改等功能 - 以及针对中文转义问题的补丁方法介绍
  • SpringBoot+SeetaFace6搭建人脸识别平台
  • MySQL-06.DDL-表结构操作-创建
  • 在Visual Studio中使用CMakeLists.txt集成EasyX库的详细指南
  • CRC码计算原理
  • 对高危漏洞“Docker Engine API is accessible without authentication”的修复
  • 两种方式创建Vue项目
  • 深入理解 C/C++ 指针
  • 有什么方法可以保护ppt文件不被随意修改呢?
  • [C#]项目中如何用 GraphQL 代替传统 WebAPI服务
  • 对后端返回的日期属性进行格式化(扩展 Spring MVC 的消息转换器)
  • 踩坑记录-用python解析php Laravel8生成的jwt token一直提示 Invalid audience
  • 使用IOT-Tree Server制作一个边缘计算设备(Arm Linux)