广告
返回顶部
首页 > 资讯 > 精选 >CentOS7日志文件及journalctl日志如何查看
  • 773
分享到

CentOS7日志文件及journalctl日志如何查看

2023-07-05 10:07:25 773人浏览 安东尼
摘要

这篇文章主要介绍了Centos7日志文件及journalctl日志如何查看的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CentOS7日志文件及journalctl日志如何查看文章都会有所收获,下面我们一起来看

这篇文章主要介绍了Centos7日志文件及journalctl日志如何查看的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CentOS7日志文件及journalctl日志如何查看文章都会有所收获,下面我们一起来看看吧。

日志文件说明

tail /var/log/messages          //系统启动后的信息和错误日志,是Red Hat linux中最常用的日志之一tail -f /var/log/secure         //与安全相关的日志信息tail /var/log/maillog           //与邮件相关的日志信息tail /var/log/cron              //与定时任务相关的日志信息tail /var/log/dmesg             //和系统启动相关tail /var/log/audit/audit.log   //系统审计日志tail /var/log/yum.log           //yumtail /var/log/xferlog           //和访问FTP服务器相关tail /var/log/wtmp             //当前登录的用户(命令:w)tail /var/log/btmp             //最近登录的用户(命令last)tail /var/log/lastlog          //所有用户的登录情况(命令lastlog )tail /var/log/boot.log         //守护进程启动和停止相关的日志消息tail /var/log/spooler          //与UUCP和news设备相关的日志信息#清理日志文件cat /dev/null > /var/log/boot.loGCat /dev/null > /var/log/btmpcat /dev/null > /var/log/croncat /dev/null > /var/log/dmesgcat /dev/null > /var/log/firewalldcat /dev/null > /var/log/grubbycat /dev/null > /var/log/lastlogcat /dev/null > /var/log/mail.infocat /dev/null > /var/log/maillogcat /dev/null > /var/log/messagescat /dev/null > /var/log/securecat /dev/null > /var/log/spoolercat /dev/null > /var/log/syslogcat /dev/null > /var/log/tallylogcat /dev/null > /var/log/wpa_supplicant.logcat /dev/null > /var/log/wtmpcat /dev/null > /var/log/yum.log

1、概述

日志管理工具journalctl是centos7上专有的日志管理工具,该工具是从message这个文件里读取信息。

Systemd统一管理所有Unit的启动日志。带来的好处就是,可以只用journalctl一个命令,查看所有日志(内核日志和应用日志)。

日志的配置文件是/etc/systemd/journald.conf。

2、查看所有日志

#(默认情况下 ,只保存本次启动的日志)[root@CENTOS57 proc]# journalctl

3、查看内核日志

(不显示应用日志)[root@CENTOS57 proc]# journalctl -k

4、查看系统本次启动的日志

journalctl -b#或者journalctl -b -0#或者journalctl -b 0

5、查看上一次启动的日志

需要修改配置文件 /etc/systemd/journald.conf

[root@CENTOS57 proc]# journalctl -b -1

否则你会看到这样的提示信息:

CentOS7日志文件及journalctl日志如何查看

所以我们需要将systemd-journald服务配置为在重新启动后永久保留系统日志,只需要将Storage参数设置为persistent。

Storage参数设置值有:

  • persistent:将日志存储在/var/log/journal目录中,该目录在重新启动后仍然存在。

  • volatile:将日记存储在/run/log/journal目录中,这不会导致系统重启。

  • auto:rsyslog将确定使用持久性存储(persistent)还是易失性存储(volatile),如果存在/var/log/journal目录,则rsyslog使用持久性存储,否则使用易失性存储。

对于永久存储,请将其设置为:

[Journal]Storage=persistent

提交更改后,重新启动systemd-journald服务以使配置更改生效:

systemctl restart systemd-journald

确认服务已重新启动并正在运行:

systemctl status systemd-journald

要查看journald知道的引导,请使用以下–list-boots选项:

 [root@centos7 ~]# journalctl --list-boots     -1 00d066e11cbee123b5 Thu 2018-02-22 17:01:47 CST—Thu 2018-02-22 17:09:15 CST     0 63f75abbe94c3b5710 Thu 2018-02-22 17:09:10 CST—Thu 2018-02-22 17:10:19 CST

这将为每次启动显示一行。第一列是启动的偏移量,可用于轻松引用启动journalctl。

如果您需要绝对参考,则启动ID位于第二列。您可以通过在结束时列出的两个时间规范来指出引导会话引用的时间。

6、查看指定时间的日志

可以使用–since和–until选项过滤任意时间限制,这些限制分别显示给定时间之前或之后的条目。

可以使用“yesterday”、“today”、“tomorrow”或者“now”等表达。

另外,我们也可以使用“-”或者“+”设定相对值,或者使用“aGo”之前的表达。

#"显示2017年10月30号,18点10分30秒到当前时间之间的所有日志信息"journalctl --since="2017-10-30 18:10:30"#获取昨天的日志如下:journalctl --since yesterday#获取某一个时间段到当前时间的前一个小时的日志journalctl --since 09:00 --until "1 hour ago" #获取当前时间的前20分钟的日志journalctl --since "20 min ago"#获取某一天到某一个时间段的日志信息journalctl --since "2017-01-10" --until "2017-01-11 03:00" #获取15:15到现在的日志journalctl --since"15:15" --until now

7、按服务过滤消息日志

#查看Httpd服务的日志信息[root@centos7 ~]# journalctl -u httpd.service -- Logs begin at Thu 2018-02-22 17:01:47 CST, end at Thu 2018-02-22 17:30:01 CST. --Feb 22 17:29:27 centos7.localdomain systemd[1]: Starting The Apache HTTP Server...Feb 22 17:29:27 centos7.localdomain httpd[1610]: AH00558: httpd: Could not reliably determine tFeb 22 17:29:28 centos7.localdomain systemd[1]: Started The Apache HTTP Server.#查看httpd服务当天的运行状况[root@centos7 ~]# journalctl -u httpd.service --since today

8、按进程、用户或者群组ID

#通过进程ID实现查询,需要指定_PID字段。journalctl _PID=8088#查看指定用户的日志journalctl _UID=33  --since today#查看指定用户组的日志journalctl _GID=20  --since today#显示尾部的最新10行日志journalctl  -n#显示尾部指定行数的日志journalctl -n 20#实时滚动显示最新日志journalctl -f#查看指定服务的日志journalctl  /usr/lib/systemd/systemd#查看某个路径的脚本的日志journalctl    /usr/bin/bash#实时滚动显示某个Unit的最新日志journalctl  -u Nginx.service  -f#合并显示多个Unit的日志journalctl  -u nginx.service  -u PHP-fpm.service  --since today

9、按优先级

使用journalctl配合-p选项显示特定优先级的信息,从而过滤掉优先级较低的信息。

由最高到最低优先级:

  • 0: emerg

  • alert

  • crit

  • err

  • warning

  • notice

  • info

  • debug

只显示错误级别或者更高的日志条目:[root@centos7 ~]# journalctl -p err -b-- Logs begin at Thu 2018-02-22 17:01:47 CST, end at Thu 2018-02-22 17:40:02 CST. --Feb 22 17:09:10 centos7.localdomain kernel: sd 0:0:0:0: [sda] Assuming drive cache: write throuFeb 22 17:09:12 centos7.localdomain kernel: piix4_smbus 0000:00:07.3: SMBus Host Controller notFeb 22 17:09:15 centos7.localdomain rsyslogd[593]: error during parsing file /etc/rsyslog.conf,Feb 22 17:09:47 centos7.localdomain pulseaudio[1232]: [alsa-sink-ES1371/1] alsa-sink.c: ALSA woFeb 22 17:09:47 centos7.localdomain pulseaudio[1232]: [alsa-sink-ES1371/1] alsa-sink.c: Most liFeb 22 17:09:47 centos7.localdomain pulseaudio[1232]: [alsa-sink-ES1371/1] alsa-sink.c: We wereFeb 22 17:09:48 centos7.localdomain spice-vdagent[1274]: Cannot access vdagent virtio channel /lines 1-8/8 (END)或者[root@centos7 ~]# journalctl -p 3 -b

10、输出格式

#journal能够以多种格式进行显示,只须添加-o选项加格式说明即可。#将journal条目输出为JSON格式:[root@CENTOS57 proc]# journalctl -b -u httpd -o json{ "__CURSOR" : "s=54b7b8c9391c4489a9a206c9123e723b;i=7db;b=b2d84e8bf26a462e9639384e1c0be5cf;m=eddf635;t=5b3a0187d82cb;x=90ce86876890254e", "__REALTIME_TIMESTAMP" : "160{ "__CURSOR" : "s=54b7b8c9391c4489a9a206c9123e723b;i=7f2;b=b2d84e8bf26a462e9639384e1c0be5cf;m=ee4987b;t=5b3a018842511;x=a984025285f8f913", "__REALTIME_TIMESTAMP" : "160{ "__CURSOR" : "s=54b7b8c9391c4489a9a206c9123e723b;i=7f3;b=b2d84e8bf26a462e9639384e1c0be5cf;m=ee5a191;t=5b3a018852e27;x=c0c8530ea7133468", "__REALTIME_TIMESTAMP" : "160#使用json-pretty格式以更好地处理数据结构[root@CENTOS57 proc]#  journalctl -u httpd -o  json-pretty{        "__CURSOR" : "s=54b7b8c9391c4489a9a206c9123e723b;i=7db;b=b2d84e8bf26a462e9639384e1c0be5cf;m=eddf635;t=5b3a0187d82cb;x=90ce86876890254e",        "__REALTIME_TIMESTAMP" : "1604875070571211",        "__MONOTONIC_TIMESTAMP" : "249427509",        "_BOOT_ID" : "b2d84e8bf26a462e9639384e1c0be5cf",        "PRIORITY" : "6",        "_UID" : "0",        "_GID" : "0",        "_MacHINE_ID" : "9e19325de3e04e56b869967ea97e8dae",        "SYSLOG_FACILITY" : "3",        "SYSLOG_IDENTIFIER" : "systemd",        "_TRANSPORT" : "journal",        "_PID" : "1",        "_COMM" : "systemd",        "_EXE" : "/usr/lib/systemd/systemd",        "_CAP_EFFECTIVE" : "1fffffffff",        "_SYSTEMD_CGROUP" : "/",        "CODE_FILE" : "src/core/unit.c",        "CODE_LINE" : "1417",        "CODE_FUNCTION" : "unit_status_log_starting_stopping_reloading",        "MESSAGE_ID" : "7d4958e842da4a758f6c1cdc7b36dcc5",        "_HOSTNAME" : "CENTOS57",        "_CMDLINE" : "/usr/lib/systemd/systemd --switched-root --system --deserialize 21",        "UNIT" : "httpd.service",        "MESSAGE" : "Starting The Apache HTTP Server...",        "_SOURCE_REALTIME_TIMESTAMP" : "1604875070570852"}以下为可用于显示的各类格式:    cat: 只显示信息字段本身。    export: 适合传输或备份的二进制格式。    json: 标准JSON,每行一个条目。    json-pretty: JSON格式,适合人类阅读习惯。    json-sse: JSON格式,经过打包以兼容server-sent事件。    short: 默认syslog类输出格式。    short-iso: 默认格式,强调显示ISO 8601挂钟时间戳。    short-monotonic: 默认格式,提供普通时间戳。    short-precise: 默认格式,提供微秒级精度。    verbose: 显示该条目的全部可用journal字段,包括通常被内部隐藏的字段。

11、journal维护

#查看当前日志占用磁盘的空间的总大小[root@centos7 ~]# journalctl --disk-usage ArcHived and active journals take up 8.0M on disk.#指定日志文件最大空间journalctl --vacuum-size=1G#指定日志文件保存多久journalctl --vacuum-time=1years #1年journalctl --vacuum-time=2d     #2天journalctl --vacuum-size=500M   #500M#不分页标准输出,日志默认分页输出--no-pager改为正常的标准输出journalctl  --no-pager#分页显示,其中插入省略号以代表被移除的信息,使用–no-full选journalctl --no-full#检查日志是否如常?日志文件是否完好且未损坏?journalctl --verify

12、启用日志消息的持久存储

要启用日志限制持久性配置,你可以修改journald的配置文件

/etc/systemd/journald.conf

将该Storage=选项设置为“persistent”以启用持久记录。

Storge选项为:

  • volatile,则日记日志数据将仅存储在内存中,即/run/log/journal中。

  • persistent,则数据将最好存储在磁盘上,即在/var/log/journal的下方。

  • auto,类似于“ persistent”,但是如果需要的话不会创建目录/var/log/journal,因此它的存在控制着日志数据的去向。

[root@CENTOS57 proc]#  vim  /etc/systemd/journald.conf [Journal]Storage=persistent

默认journalctl的日志都是保存到内存中。要保存到文件,只需创建/var/log/journal目录,重启journald服务即可。

在CentOS 7上,您必须启用日志消息的持久存储:

[root@CENTOS57 proc]# mkdir /var/log/journal[root@CENTOS57 proc]# systemd-tmpfiles --create --prefix /var/log/journal[root@CENTOS57 proc]# systemctl restart systemd-journald

否则,启动之间将不会保留日志日志消息。

journalctl相关配置

以下条目可用于限定journal体积的膨胀速度:

  • SystemMaxUse=: 指定journal所能使用的最高持久存储容量。

  • SystemKeepFree=: 指定journal在添加新条目时需要保留的剩余空间。

  • SystemMaxFileSize=: 控制单一journal文件大小,符合要求方可被转为持久存储。

  • RuntimeMaxUse=: 指定易失性存储中的最大可用磁盘容量(/run文件系统之内)。

  • RuntimeKeepFree=: 指定向易失性存储内写入数据时为其它应用保留的空间量(/run文件系统之内)。

  • RuntimeMaxFileSize=: 指定单一journal文件可占用的最大易失性存储容量(/run文件系统之内)。

关于“CentOS7日志文件及journalctl日志如何查看”这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对“CentOS7日志文件及journalctl日志如何查看”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网精选频道。

--结束END--

本文标题: CentOS7日志文件及journalctl日志如何查看

本文链接: https://www.lsjlt.com/news/351156.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • CentOS7日志文件及journalctl日志如何查看
    这篇文章主要介绍了CentOS7日志文件及journalctl日志如何查看的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CentOS7日志文件及journalctl日志如何查看文章都会有所收获,下面我们一起来看...
    99+
    2023-07-05
  • 关于CentOS7日志文件及journalctl日志查看方法
    目录日志文件说明1、概述2、查看所有日志3、查看内核日志4、查看系统本次启动的日志5、查看上一次启动的日志6、查看指定时间的日志7、按服务过滤消息日志8、按进程、用户或者群组ID9、...
    99+
    2023-03-09
    CentOS7日志文件 journalctl日志查看 CentOS7 journalctl
  • 如何使用Journalctl查看并操作Systemd日志
    作为最具吸引力的优势,systemd拥有强大的处理与系统日志记录功能。在使用其它工具时,日志往往被分散在整套系统当中,由不同的守护进程及进程负责处理,这意味着我们很难跨越多种应用程序对其内容进行解读。相比之下,systemd尝试提供一套集中...
    99+
    2023-06-05
  • centos如何查看日志文件
    centos中查看日志文件的方法:1、打开centos终端;2、通过“cat 文件名”或“tail -f 文件名”命令查看日志文件即可。具体操作步骤:在centos系统桌面中使用快捷键【Ctrl+Alt+T】打开终端命令行模式。在cento...
    99+
    2022-10-05
  • centos7下如何查看实时日志
    centos7中查看实时日志的方法:1、打开centos7终端;2、在centos7终端命令行中输入“dmesg -wH”命令实时查看后台日志即可。具体操作步骤:在centos7系统桌面中使用快捷键【Ctrl+Alt+T】打开centos7...
    99+
    2022-10-18
  • 查看mysql日志及日志编码问题
    该文章解决如下几个问题:mysql日志文件目录,如何查看二进制文件,查看二进制文件乱码。[@more@]1.查看档案mysql> show binary logs;+----------------+---...
    99+
    2022-10-18
  • mysql的日志文件如何查看
    mysql的日志文件如何查看?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。首先,介绍一下mysql日志的种类。一般来说,日志有五种,分别为...
    99+
    2022-10-18
  • Linux中如何查看日志文件
    小编给大家分享一下Linux中如何查看日志文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、tail这个是我最常用的一种查看方式命令格式: tail[必要参数...
    99+
    2023-06-27
  • Mysql 开启慢日志查询及查看慢日志 sql
    本文为博主原创,转载请注明出处: 目录:    1.Mysql 开启慢日志配置的查询    2. 通过sql 设置Mysql 的慢日志开启    3. 通过慢 sql 日志文件查看慢 sql   1.Mysql 开启慢日志配置的查询 m...
    99+
    2017-01-10
    Mysql 开启慢日志查询及查看慢日志 sql
  • Linux怎么查看日志文件
    这篇文章主要介绍“Linux怎么查看日志文件”,在日常操作中,相信很多人在Linux怎么查看日志文件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux怎么查看日志文件”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-28
  • 怎么查看mysql日志文件
    在mysql服务器中查看日志文件的方法首先,在命令行中执行命令启动MySQL服务;Windows:net start mysql  Linux:service mysql startMySQL服务启动后,在命令行中输入mysql的用户名和密...
    99+
    2022-10-20
  • win10日志文件怎么查看
    本篇内容介绍了“win10日志文件怎么查看”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!win10日志文件查看方法:打开设置中的“控制面板”...
    99+
    2023-07-01
  • adb-学会查看日志文件
    目录 一、获取日志文件 二、日志级别 三、日志缓冲区 四、缓冲区的类型 🎁更多干货 完整版文档下载方式: 一、获取日志文件 一般情况下,我们在做app测试时,其实并不需要经常使用adb去抓取我们的日志,通常情况下都是有...
    99+
    2023-08-31
    adb APP测试 软件测试 程序人生 软件测试工程师
  • linux tail 查看日志文件方法
    tail 命令从指定点开始将文件写到标准输出.使用tail命令的-f选项可以方便的查阅正在改变的日志文件,tail -f filename会把filename里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内...
    99+
    2022-06-04
    linux tail
  • 查看mysql日志文件的方法
    查看mysql日志文件的方法?这个问题可能是我们日常学习或工作经常见到的。希望通过这个问题能让你收获颇深。下面是小编给大家带来的参考内容,让我们一起来看看吧!查看mysql日志文件的方法:首先开启mysql...
    99+
    2022-10-18
  • VSCode如何查看日志
    这篇文章将为大家详细讲解有关VSCode如何查看日志,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。查看日志步骤1. 执行Ctrl+Shift+P步骤2. 搜 showlogsvscode有什么用Visua...
    99+
    2023-06-27
  • 如何查看mysql日志
    本篇文章给大家分享的是有关如何查看mysql日志,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。如何查看mysql日志mysql有以下几种日志:...
    99+
    2022-10-18
  • Docker如何查看日志
    小编给大家分享一下Docker如何查看日志,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!查看日志docker logs...
    99+
    2022-10-19
  • linux如何查看日志
    linux查看日志的方法:1、打开终端;2、通过“tail”、“head”、“cat”命令查看日志即可。具体操作步骤:首先通过快捷键【Ctrl+Alt+T】打开终端命令行模式。输入以下命令查看日志即可。#tail命令tail -100f t...
    99+
    2022-10-20
  • rabbitmq日志如何查看
    要查看RabbitMQ的日志,可以按照以下步骤进行操作: 打开RabbitMQ安装目录,找到`RabbitMQ Server`文件...
    99+
    2023-10-26
    rabbitmq
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作