Linux日志超实用讲解

  • 1、前言
  • 2、tail 命令
    • 2.1、动态监听日志
    • 2.2、日志动态截取
  • 3、日志定位截取
    • 3.1、关键字收索定位
    • 3.2、日志区间截取
  • 4、日志大小查看

1、前言

Linux相对于Windows有更高的网络安全性,最主要是其在网络环境下强大的稳定性,所以应用服务多部署于Linux内核系统的服务器上。导致Linux上日志的查询处理更是家常便饭!

2、tail 命令

2.1、动态监听日志

tail -f 日志文件名,动态打印日志文件最后10行,会进行动态监听,在服务器上多用于使用监听幂等操作的日志;

举例:如果一个查询操作报错,那么就可以首先在对应服务日志文件处使用此命令监听,然后再操作报错的查询,那么就能动态监听其打印的日志,由于查询操作并不会改变数据,所以在生产环境即使被操作多次也无妨!

# 进入日志目录
$ cd /data/logs/UserData/run/# 动态查看日志最后10条
$ tail -f run_UserData_172.17.0.1_10007.log# 从日志尾部往上截取20条
$ tail -20 run_UserData_172.17.0.1_10007.log

2.2、日志动态截取

tail -f 日志文件名 > 自定义文件,使用此命令会可将监听到的日志动态的写入到自定义的文件中,使用Ctrl + c 结束写入。

举例:遇到同上2.1的问题,规范的管理流程,生产环境是由运维人员进行管理的,开发人员是无权访问的。如果生产环境出现问题,那么报错日志就需要运维人员截取给开发人员!

# 将日志动态写入自定义文件 user.log
# 如果没有user.log则会自动创建,如果存在内容则会被覆盖
$ tail -f run_UserData_172.17.0.1_10007.log > user.log# 追加写入:会从user.log的内容尾部开始写入,不会覆盖掉原有内容
$ tail -f run_UserData_172.17.0.1_10007.log >> user.log

3、日志定位截取

3.1、关键字收索定位

通过管道命里组合查询:cat 日志文件 | grep -n 搜索内容

$ cat UserData_172.17.0.1_10007.log | grep -n 学校组织机构同步开始
19645:2022-07-21 03:30:01.140 1 scheduling-1 INFO c.a.s.d.p.t.SchoolDataSyncTask:104 - 学校组织机构同步开始=====

推荐使用:使用grep可以满足通用情况所有日志快速定位查询!

定位查询并显示行号:grep -n '关键词' 文件名

$ grep -n '学校组织机构同步开始' run_UserData_172.17.0.1_10007.log
19645:2022-07-21 03:30:01.140 1 scheduling-1 INFO c.a.s.d.p.t.SchoolDataSyncTask:104 - 学校组织机构同步开始=====# 截取时间关键字,并显示行号
$ grep -n '2022-07-21 03:30:01' run_UserData_172.17.0.1_10007.log
19645:2022-07-21 03:30:01.140 1 scheduling-1 INFO c.a.s.d.p.t.SchoolDataSyncTask:104 - 学校组织机构同步开始=====
19646:2022-07-21 03:30:01.281 1 scheduling-1 INFO c.a.s.d.p.u.BoShiLeServiceUtil:53 -

关键字前后查指定行数:grep -B|A|C 行数 '关键词' 文件名

# 关键字前查两行
$ grep -B 2 '学校组织机构同步开始' run_UserData_172.17.0.1_10007.log# 关键字后查两行
$ grep -A 2 '学校组织机构同步开始' run_UserData_172.17.0.1_10007.log

推荐使用:查询关键前后几行,一般用于报错日志的查询,对异常关键字进行检索,报错信息的处理通常是前后日志一起排查!

# 关键字查看前后2行日志
$ grep -C 2 '学校组织机构同步开始' run_UserData_172.17.0.1_10007.log# 如果内容太长,写入自定义文件后查看
$ grep -C 2 '学校组织机构同步开始' run_UserData_172.17.0.1_10007.log > user.log

3.2、日志区间截取

之前已经讲到了关键字查询显示行号,在代码层关键位置会有日志标记,将其关键字检索出行号,进行行号区间日志截取、时间区间日志截取!

# 截取19646~19846区间的200行数据
$ sed -n '19646, 19846p' run_UserData_172.17.0.1_10007.log # 写入自定义文件查看
$ sed -n '19646, 19846p' run_UserData_172.17.0.1_10007.log > user.log# 截取自定义时间段
$ sed -n '/2022-07-21 03:30:01/, /2022-07-21 03:32/p' run_UserData_172.17.0.1_10007.log > user.log

4、日志大小查看

$ cd /home/# 查看磁盘分区占用情况
$ df -h
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        1.9G     0  1.9G   0% /dev
tmpfs           1.9G   24K  1.9G   1% /dev/shm
tmpfs           1.9G  636K  1.9G   1% /run
tmpfs           1.9G     0  1.9G   0% /sys/fs/cgroup
/dev/vda1        79G   15G   61G  20% /
tmpfs           379M     0  379M   0% /run/user/0# 使用此命令在日志目录下使用即可!
# 查看某个目录下各个文件的大小
$ du -ah --max-depth=1
1.5G    ./dtian
48K     ./lighthouse
54M     ./test
12K     ./script
1.6G    .

Linux日志超实用讲解相关推荐

  1. linux的python2.7的paramiko_Python使用paramiko操作linux的方法讲解

    paramiko介绍 paramiko是一个基于python编写的.使用ssh协议的模块,跟xshell和xftp功能类似,支持加密与认证,可以上传下载和访问服务器的文件. 可以利用paramiko模 ...

  2. linux安装截图讲解01

    最近有个几个网络上的朋友和我说能不能把LINUX的安装讲解一下,以便于以后能区作你讲的linux课程中的实验.好,今天我在这里给网络上的朋友讲解一下linux的安装,为了能让您快速的学会linux的安 ...

  3. linux日志管理工具logrotate配置

    linux日志管理工具logrotate配置 logrotate介绍 logrotate配置讲解 主配置文件解释(/etc/logrotate.conf) logrotete 命令参数 添加配置 以添 ...

  4. 《Unix/Linux日志分析与流量监控》书稿完成

    <Unix/Linux日志分析与流量监控>书稿完成 近日,历时3年创作的75万字书稿已完成,本书紧紧围绕网络安全的主题,对各种Unix/Linux系统及网络服务日志进行了全面系统的讲解,从 ...

  5. 【100道面试题真题讲解】C++面试题讲解+JAVA面试题讲解+Linux面试题讲解+数据结构面试题+计算机网络面试题 讲解视频-持续更新中

    最近找到了一个非常好的公众号:IT笔试面试真题讲解,每天视频分享一道IT公司面试高频题目,完全免费哦,非常适合找工作的学生复习+总结+提炼. 白嫖不敢独吞,分享给大家,也给作者增加一点访问量,鼓励作者 ...

  6. linux开发log示例,RH124-log Linux日志(示例代码)

    课程笔记 #日志目录 [[email protected] log]$ ls /var/log/ amanda cron-20170531 glusterfs messages #日志管理服务 [[e ...

  7. Linux日志选项详解及日志服务器的实现

    Linux日志服务器的实现   一:基本概念 1: 软件包 syslogd 2: /etc/syslog.conf 配置文件 格式:facility.level action (设备. 优先级动作) ...

  8. rsync服务同步,linux日志,screen工具

    2019独角兽企业重金招聘Python工程师标准>>> 10.32/10.33 rsync通过服务同步 10.34 linux系统日志 10.35 screen工具 扩展 Linux ...

  9. ElasticSearch实战:Linux日志对接Kibana

    本文由云+社区发表 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTFul web接口.ElasticSearch是用Java开发 ...

最新文章

  1. 鱼佬:百行代码入手数据挖掘赛!
  2. 一个回滚段收缩的实例
  3. 【转】java项目应该知道的核心重点部分
  4. 使用Javascript递归遍历本地文件夹
  5. QQ 被曝搜集浏览器历史记录;饿了么回应骑手自焚;原锤子团队被合并暂停手机研发;| 极客头条...
  6. linux yum安装python3_linux下yum安装python3
  7. 解决Navicat连接MySQL总是报错1251的方法
  8. Android中如何实现无缝切码流
  9. 【知识图谱系列】动态时序知识图谱EvolveGCN
  10. 王道 计算机网络试题讲解_王道考研 计算机网络(7)学习笔记
  11. distpicker使用记录
  12. 智能家居有线系统与无线系统,该怎么选?
  13. Zynga研发之道探秘:用数据说话
  14. java练手小项目雷霆战机
  15. 0 -1 分布(两点分布)
  16. Linux安装Rar软件与压缩、解压方法
  17. 【组合数学】递推方程 ( 特解形式 | 特解求法 | 特解示例 )
  18. 深度学习GPU选购指南
  19. Git - 团队合作利器 Branch 与 Git Flow
  20. [FPGA]1 MRCC与SRCC学习

热门文章

  1. 秃头(生发)是一种怎样的体验【发际线编辑】
  2. 创业阶段如何找客户_怎么才叫创业 创业分为哪几个阶段?
  3. 用go-module作为包管理器搭建go的web服务器
  4. SV中关键字用法学习笔记
  5. 充电宝良莠不齐 购买使用需谨慎
  6. 获取高度为0的div高度方法
  7. ADB命令操作手机数据
  8. Java读取ZIP文件ZipEntry.getsize()总是返回-1?
  9. layui实现点击表格内图片,放大显示
  10. 服务器系统保留分区,win10体系保存分区有什么用?_网站服务器运转保护