Linux之journalctl查看系统与kernel日志
1 概述
日志管理工具journalctl是centos7上专有的日志管理工具,该工具是从message这个文件里读取信息。Systemd统一管理所有Unit的启动日志。带来的好处就是,可以只用journalctl一个命令,查看所有日志(内核日志和应用日志)。日志的配置文件是/etc/systemd/journald.conf
journalctl功能强大,用法非常多。本文将介绍journalctl的相关使用方法。
2 journalctl 使用方法
.查看所有日志
默认情况下,只保存本次启动的日志
journalctl
.查看内核日志(不显示应用日志)
journalctl -k
.查看系统本次启动的日志
journalctl -b
journalctl -b -0
.查看上一次启动的日志
需更改设置,如上次系统崩溃,需要查看日志时,就要看上一次的启动日志。
journalctl -b -1
.查看指定时间的日志
journalctl --since="2012-10-3018:17:16"
journalctl --since "20 minago"
journalctl --since yesterday
journalctl --since"2015-01-10" --until "2015-01-11 03:00"
journalctl --since 09:00 --until"1 hour ago"
journalctl --since"15:15" --until now
.显示尾部的最新10行日志
journalctl -n
.显示尾部指定行数的日志
查看的是/var/log/messages的日志,但是格式上有所调整,如主机名格式不一样而已
journalctl -n 20
.实时滚动显示最新日志
journalctl -f
.查看指定服务的日志
journalctl /usr/lib/systemd/systemd
.查看指定进程的日志
journalctl _PID=1
.查看某个路径的脚本的日志
journalctl /usr/bin/bash
.查看指定用户的日志
journalctl _UID=33 --since today
.查看某个Unit的日志
journalctl -u nginx.service
journalctl -u nginx.service --since today
.实时滚动显示某个Unit的最新日志
journalctl -u nginx.service -f
.合并显示多个Unit的日志
journalctl -u nginx.service -u php-fpm.service --since today
查看指定优先级(及其以上级别)的日志
日志优先级共有8级
0: emerg
1: alert
2: crit
3: err
4: warning
5: notice
6: info
7: debug
journalctl -p err -b
.不分页标准输出
日志默认分页输出--no-pager改为正常的标准输出
journalctl --no-pager
.以JSON格式(单行)输出
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScriptProgramming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java,JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。
JSON建构于两种结构:
“名称/值”对的集合(A collection ofname/value pairs):不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典(dictionary),哈希表(hash table),有键列表(keyed list),或者关联数组(associativearray)。
值的有序列表(An ordered list of values):在大部分语言中,它被理解为数组(array)。
这些都是常见的数据结构。事实上大部分现代计算机语言都以某种形式支持它们。这使得一种数据格式在同样基于这些结构的编程语言之间交换成为可能。
例子
以JSON格式(单行)输出
journalctl -b -u httpd.service -o json
.以JSON格式(多行)输出,可读性更好,建议选择多行输出
journalctl -b -u httpd.service -o json-pretty
.显示日志占据的硬盘空间
journalctl --disk-usage
.指定日志文件占据的最大空间
journalctl --vacuum-size=1G
.指定日志文件保存多久
journalctl --vacuum-time=1years
Linux之journalctl查看系统与kernel日志相关推荐
- linux 关机 日志,centos7 异常关机了,怎么查看系统的异常日志?
centos7 异常关机了,怎么查看系统的异常日志? crash中也没有dump的文件. 这是messages日志: Feb 26 11:14:03 moon systemd-logind: Remo ...
- 当前服务器系统内核版本是多少,linux下如何查看系统和内核版本
linux下如何查看系统和内核版本 (2011-04-11 17:35:16) 标签: linux version 杂谈 1. 查看内核版本命令: 1) [root@q1test01 ~]# cat ...
- linux环境下查看系统安装时间、启动时间、运行时间
Linux环境下查看系统的安装时间.启动时间.运行时间 系统安装时间 查看root下系统安装记录的文件生成时间,可以约等于系统安装时间 系统启动时间 who -b查看系统最后一次系统启动开始的时间 w ...
- linux打印系统时间命令行,linux中多种查看系统时间的命令
原标题:linux中多种查看系统时间的命令 介绍linux中多种查看时间的方法 1.date 这个是最经典的系统查看时间的命令,也是脚本的经常用到定义时间的命 [root@localhost ~]$ ...
- systemd介绍六:Journalctl查看并操作sytemd日志
一.内容简介 作为最具吸引力的优势,systemd拥有强大的处理与系统日志记录功能.在使用其它工具时,日志往往被分散在整套系统当中,由不同的守护进程及进程负责处理,这意味着我们很难跨越多种应用程序对其 ...
- Linux命令之查看系统负载
网站服务器经常会遇到linux系统负载的问题,那么linux下查看系统负载的命令有哪些呢? linux下查看负载的主要命令有下面一些: top, uptime,w,vmstat 1.top命令查看l ...
- Linux下如何查看系统启动时间和运行时间以及安装时间
1.uptime命令 输出:16:11:40 up 59 days, 4:21, 2 users, load average: 0.00, 0.01, 0.00 2.查看/proc/uptime文件计 ...
- linux多种方式查看系统时间
linux查看系统时间 1. date 2. uptime 3. who 4. w 5. top 6. last 1. date 这是最经典的系统查看时间的命令,也是脚本的经常用到定义时间的命令. $ ...
- Linux下用于查看系统当前登录用户信息的4种方法
作为系统管理员,你可能经常会(在某个时候)需要查看系统中有哪些用户正在活动.有些时候,你甚至需要知道他(她)们正在做什么.本文为我们总结了4种查看系统用户信息(通过编号(ID))的方法. 1. 使用w ...
最新文章
- Spring Boot 整合Redis 实现缓存
- 电脑不读u盘怎么解决_电脑无法识别U盘解决方法
- 图系列|7篇动态时空图网络学习必读的顶会论文
- 886 微型计算机原理,886微型计算机原理及应用.pdf
- CentOS上安装SQL Server vNext CTP1
- ajax动态获取url参数值,获取URL参数的方法
- 【转载保存】mapreduce优秀文章
- Cisco交换机设置管理IP
- 比较SynchronizedMap、Hashtable和ConcurrentHashMap的效率
- SQLserver查询练习
- linux下scp的使用
- 有道云笔记 迁移 语雀过程记录
- 搭建GTK+开发环境
- linux操作系统原理与应用.第2版 陈莉君 pdf
- 成功在开发板运行vsftpd
- C++ new 动态内存 对象初始化
- 解构金蝶EAS 开发工具
- 域帐号密码快过期邮件提醒
- python中x 什么意思_python中x[::]什么意思
- takemehigher计算机乐谱,【图片】简谱【无饿不作吧】_百度贴吧