Linux查看log日志命令总结

简介: Linux查看log日志命令总结

1,动态实时查看日志

企业项目都运行在Linux环境,熟悉Linux环境下的日志查看结合远程调试端口及时排查程序bug,是后端程序员需掌握的必备技能。


Tail the log file是运维同学的口头禅,tail命令是最常用的查看日志语句,以日志文件server.log为例


1.1 tail -f filename

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


tail -f server.log


退出tail命令


Ctrl+c


tail命令扩展

查看日志最后20行内容并实时更新日志


tail -f -n 20 server.log


查看日志正数20行内容


tail -n +20 server.log


1.2 追踪特定内容日志

tail 命令可以实时查看文件内容的变化。但是当项目日志实时更新内容特别多时,需要查看的列往往时一闪而过,在快速更新的大量日志中查询关键列非常不方便,这是就需要tail命令与grep命令连用。追踪需要展示的特定信息,以查看固定线程http-nio-8091-exec-7为例:


tail -f log_file | grep ‘http-nio-8091-exec-7’


扩展内容

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


tail -f log_file | grep -C 5 ‘http-nio-8091-exec-7’


2 cat关键字搜索

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


cat -n filename |grep “http-nio-8091-exec-7”


扩展内容

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


cat -n log_file | grep -C 5 ‘http-nio-8091-exec-7’


3 查看整体的日志操作

3.1 less命令

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

选项 +F 可以实时跟踪文件的更改:


less +F log_file


第一步:打开日志文件


less sigma.log


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


shift+g 移动到最后一行


第三步:


ctrl+b 往前一页一页翻页查看


参考:

1.全屏导航


ctrl + F - 向前移动一屏

ctrl + B - 向后移动一屏

ctrl + D - 向前移动半屏

ctrl + U - 向后移动半屏


2.单行导航


j - 向前移动一行

k - 向后移动一行

3.其它导航

G - 移动到最后一行

g - 移动到第一行

q / ZZ - 退出 less 命令

3.2 vim编辑模式查看日志

对于编辑模式操作日志文件,因为熟悉流程原因也不失为一个好方法


/关键字 注:正向查找,按n键把光标移动到下一个符合条件的地方

?关键字 注:反向查找,按shift+n 键,把光标移动到下一个符合条件的


4 下载日志文件

获取docker中的容器编号

通过docker查看日志需要先知道docker中的容器编号CONTAINER ID

通过命令sudo docker ps或者sudo docker container ls -a任意一个都可以

进入到我们的项目中,会有个日志文件,记录我们所需要的日志文件的名字路径

sudo docker exec -it CONTAINER ID sh

退出docker容器

exit

把容器里第2步查出来的文件路径的文件拷贝到服务器里的任一目录上

sudo docker container cp CONTAINER ID:/opt/logs/2020-02/zjapp-2020-02-10.log /home/brain/zjapp-2020-02-10.log

这里比较麻烦,还是希望一开始就可以挂载好服务器目录文件


或者使用远程连接工具拖拽下载


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
7天前
|
机器学习/深度学习 缓存 监控
linux查看CPU、内存、网络、磁盘IO命令
`Linux`系统中,使用`top`命令查看CPU状态,要查看CPU详细信息,可利用`cat /proc/cpuinfo`相关命令。`free`命令用于查看内存使用情况。网络相关命令包括`ifconfig`(查看网卡状态)、`ifdown/ifup`(禁用/启用网卡)、`netstat`(列出网络连接,如`-tuln`组合)以及`nslookup`、`ping`、`telnet`、`traceroute`等。磁盘IO方面,`iostat`(如`-k -p ALL`)显示磁盘IO统计,`iotop`(如`-o -d 1`)则用于查看磁盘IO瓶颈。
|
1天前
|
Linux
【Linux】深入理解ls命令
【Linux】深入理解ls命令
|
4天前
|
监控 Linux Windows
50个必知的Linux命令技巧,你都掌握了吗?(下)
50个必知的Linux命令技巧,你都掌握了吗?(下)
|
4天前
|
Linux Shell Windows
Linux 常用基本命令
Linux 常用基本命令
|
5天前
|
Ubuntu Linux Shell
linux免交互登陆远程主机并执行命令(密钥对和Expect)
linux免交互登陆远程主机并执行命令(密钥对和Expect)
|
5天前
|
Linux
【Linux】常用命令
【Linux】常用命令
24 0
|
5天前
|
安全 Ubuntu Linux
Linux 网络操作命令Telnet
Linux 网络操作命令Telnet
20 0
Linux 网络操作命令Telnet
|
5天前
|
监控 Docker 容器
Docker从入门到精通:Docker log 命令学习
了解 Docker 日志管理对容器监控至关重要。`docker logs` 命令用于查看和管理容器日志,例如,`docker logs <container_name>` 显示容器日志,`-f` 或 `--follow` 实时跟踪日志,`--tail` 显示指定行数,`--timestamps` 添加时间戳,`--since` 按日期筛选。Docker 支持多种日志驱动,如 `syslog`,可通过 `--log-driver` 配置。有效管理日志能提升应用程序的稳定性和可维护性。
8 0
|
6天前
|
Java
log4j异常日志过滤规则配置
log4j异常日志过滤规则配置
15 0
|
6天前
|
Linux 数据安全/隐私保护
Linux常用命令实例带注释
Linux常用命令实例带注释
30 0