我的编程空间,编程开发者的网络收藏夹
学习永远不晚

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

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

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" : "class="lazy" data-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日志如何查看”知识都有一定的了解,大家如果还想学习更多知识,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

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

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

下载Word文档

猜你喜欢

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

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

关于CentOS7日志文件及journalctl日志查看方法

这篇文章主要介绍了关于CentOS7日志文件及journalctl日志查看方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-03-09

如何查看mysql日志文件

要查看MySQL日志文件,可以按照以下步骤操作:登录到MySQL服务器。可以使用以下命令登录到MySQL服务器:mysql -u username -p其中,username是您的MySQL用户名。查看MySQL的错误日志文件。可以使用以下
如何查看mysql日志文件
2024-04-09

如何使用Journalctl查看并操作Systemd日志

作为最具吸引力的优势,systemd拥有强大的处理与系统日志记录功能。在使用其它工具时,日志往往被分散在整套系统当中,由不同的守护进程及进程负责处理,这意味着我们很难跨越多种应用程序对其内容进行解读。相比之下,systemd尝试提供一套集中
2023-06-05

sqlserver的日志文件如何查看

要查看SQL Server的日志文件,可以使用SQL Server Management Studio(SSMS)或者查询系统表来查看。以下是两种方法:使用SQL Server Management Studio(SSMS):打开SQL S
sqlserver的日志文件如何查看
2024-04-09

Linux中如何查看日志文件

小编给大家分享一下Linux中如何查看日志文件,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!1、tail这个是我最常用的一种查看方式命令格式: tail[必要参数
2023-06-27

redis日志文件位置如何查看

在Redis配置文件中可以找到日志文件的位置。在Linux系统下,默认的Redis配置文件路径为/etc/redis/redis.conf,可以使用以下命令查看配置文件的内容:cat /etc/redis/redis.conf在配置文件中
redis日志文件位置如何查看
2024-04-09

win10日志如何查看

这篇文章主要讲解了“win10日志如何查看”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“win10日志如何查看”吧!win10日志查看方法:第一种方法: 1、首先按下组合键“win+R”打开
2023-07-01

VSCode如何查看日志

这篇文章将为大家详细讲解有关VSCode如何查看日志,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。查看日志步骤1. 执行Ctrl+Shift+P步骤2. 搜 showlogsvscode有什么用Visua
2023-06-27

如何查看虚拟机的日志文件

要查看虚拟机的日志文件,可以按照以下步骤操作:打开虚拟机管理软件,比如VirtualBox、VMware等。在虚拟机管理软件中选择要查看日志的虚拟机。在虚拟机的菜单或设置中找到日志选项。点击日志选项,可以查看虚拟机的各种日志信息,比如
如何查看虚拟机的日志文件
2024-06-11

rabbitmq日志如何查看

要查看RabbitMQ的日志,可以按照以下步骤进行操作:打开RabbitMQ安装目录,找到`RabbitMQ Server`文件夹。进入`RabbitMQ Server`文件夹,找到`logs`文件夹。在`logs`文件夹中,可以看到不
2023-10-26

win10日志文件怎么查看

本篇内容介绍了“win10日志文件怎么查看”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!win10日志文件查看方法:1、打开设置中的“控制面
2023-07-01

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录