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

Linux快速定位日志 排查bug技巧和常用命令

1. 快速根据关键字定位错误信息

grep

在 Linux 系统中,可以使用 grep 命令来查找日志文件中包含特定关键字的行。假设你的日志文件路径为 /var/log/myapp.log,你想要查找包含关键字 "abc" 的日志内容,可以按照以下步骤操作:

cat xxx.log |grep -n "xxx"

grep -n "xxx" xxx.log

找到行号后就好说了,通过下一条命令 直接输出当前行号下的日志

在这里插入图片描述
这个命令是用来查看一个日志文件 xxx.log 中特定范围的行。从第 501 行开始,显示接下来的 100 行日志

tail -n +501 xxx.log | head -n 100

这样可以更快速更精准的定位到关键日志,而不是去打开日志文件来搜索,或者二次触发bug,来查看日志,这些命令能够帮助你更高效地查找和分析日志文件中的特定信息。

2.动态实时查看日志

tail 命令

tail -f xxx.log实时展示日志末尾内容,默认最后10行,相当于增加参数 -n 10

tail -f server.log

查看日志正数20行内容

tail -n +20 xxx.log

cat 命令

cat 区别于tail是对日志进行全文搜索,其中-n的作用是显示行号

cat -n xxx.log | grep "xxx"

-C 选项来显示检索结果的前后几行,-A 选项展示检索结果后几行,-B选项展示检索结果前几行

cat -n xxx.log | grep -C 5 'xxx'

less 命令

less 命令多用于读取文本文件,也可用于读取实时被更改的文件。ctrl +c 中断实时读取显示,按 q 会退出less视图,选项 +F 可以实时跟踪文件的更改:

less +F xxx.log

第一步:打开日志文件

less xxx.log

第二步:定位到日志文件的最后一行:

shift+g 移动到最后一行

第三步:往前一页一页翻页查看

ctrl+b 

1.全屏导航

ctrl + F - 向前移动一屏
ctrl + B - 向后移动一屏
ctrl + D - 向前移动半屏
ctrl + U - 向后移动半屏

vim编辑模式

进入编辑日志文档

vim xxx.log

正向查找,配合n键可以将光标移动到下一个符合条件的地方

/关键字   

反向查找,配合shift + n 键可以将光标移动到下一个符合条件的地方

?关键字 

相关文章:

  • 06_知识点总结(JS高级)
  • 基于FPGA实现LED的闪烁——HLS
  • AURIX TC3xx单片机介绍-启动过程介绍2
  • 他用AI,抄袭了我的AI作品
  • C#--WPF自定义控件模板示例
  • mysqlbinlog解析
  • 数据分析之统计学基础
  • debian 常用命令
  • 通关!游戏设计之道Day17
  • 【如何在Qt C++中使用SSL和TLS加密传输数据?】
  • labview类编程
  • C++模板元编程--函数萃取
  • Cweek2+3
  • 算数运算符
  • 58. 最后一个单词的长度
  • [译]CSS 居中(Center)方法大合集
  • 【140天】尚学堂高淇Java300集视频精华笔记(86-87)
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • 【从零开始安装kubernetes-1.7.3】2.flannel、docker以及Harbor的配置以及作用
  • 【跃迁之路】【444天】程序员高效学习方法论探索系列(实验阶段201-2018.04.25)...
  • Android开发 - 掌握ConstraintLayout(四)创建基本约束
  • Android系统模拟器绘制实现概述
  • CSS 提示工具(Tooltip)
  • Dubbo 整合 Pinpoint 做分布式服务请求跟踪
  • flask接收请求并推入栈
  • HashMap剖析之内部结构
  • Hibernate最全面试题
  • IndexedDB
  • Javascripit类型转换比较那点事儿,双等号(==)
  • jdbc就是这么简单
  • JDK 6和JDK 7中的substring()方法
  • js
  • macOS 中 shell 创建文件夹及文件并 VS Code 打开
  • magento2项目上线注意事项
  • 测试如何在敏捷团队中工作?
  • 汉诺塔算法
  • 机器学习 vs. 深度学习
  • 解决iview多表头动态更改列元素发生的错误
  • 使用阿里云发布分布式网站,开发时候应该注意什么?
  • 用Python写一份独特的元宵节祝福
  • 容器镜像
  • 说说我为什么看好Spring Cloud Alibaba
  • 移动端高清、多屏适配方案
  • ​520就是要宠粉,你的心头书我买单
  • ​Linux Ubuntu环境下使用docker构建spark运行环境(超级详细)
  • # 职场生活之道:善于团结
  • #14vue3生成表单并跳转到外部地址的方式
  • #QT项目实战(天气预报)
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • (12)目标检测_SSD基于pytorch搭建代码
  • (env: Windows,mp,1.06.2308310; lib: 3.2.4) uniapp微信小程序
  • (二)斐波那契Fabonacci函数
  • (排序详解之 堆排序)
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (转)四层和七层负载均衡的区别