Centos7 Journald 指令
Journald是为Linux服务器打造的新系统日志方式,它标志着文本日志文件的终结。现在日志信息写入到二进制文件,使用journalctl阅读,要获得这些信息,Linux管理员将需要一些实践。
Red Hat Enterprise Linux 7与SUSE Linux Enterprise Server 12这些下一代的Linux发行版本使用systemd管理服务。journal是systemd的一个组件,由journald处理。它捕获系统日志信息、内核日志信息,以及来自原始RAM磁盘的信息,早期启动信息以及所有服务中写入STDOUT和STDERR数据流的信息。Journald快速改变着服务器如何处理日志信息与管理员如何访问的方式。
对日志文件说再见
在systemd与journald世界中没有日志文件的位置。journald日志写入二进制文件,在红帽系统上,位于/run/log/journal中。你不应该也不能使用页面打开文件。反之,使用journalctl查看内容。该命令显示所有登录到服务器的信息(见表1)。
表1:journalctl输出表默认格式的样子。
- Apr 04 09:48:59 localhost.localdomain chronyd[768]: Can't synchronise: no majority
- Apr 04 09:50:01 localhost.localdomain systemd[1]: Starting Session 3 of user root.
- Apr 04 09:50:01 localhost.localdomain systemd[1]: Started Session 3 of user root.
- Apr 04 09:50:01 localhost.localdomain CROND[3699]: (root) CMD (/usr/lib64/sa/sa1 1 1)
- Apr 04 09:50:03 localhost.localdomain chronyd[768]: Selected source 46.249.47.127
- Apr 04 09:50:03 localhost.localdomain chronyd[768]: System clock wrong by -2.417074 seconds, adjustment started
- Apr 04 09:50:36 localhost.localdomain pulseaudio[3163]: [alsa-sink] alsa-sink.c: ALSA woke us up to write new data to the device, but there
- Apr 04 09:50:36 localhost.localdomain pulseaudio[3163]: [alsa-sink] alsa-sink.c: Most likely this is a bug in the ALSA driver 'snd_ens1371'.
- Apr 04 09:50:36 localhost.localdomain pulseaudio[3163]: [alsa-sink] alsa-sink.c: We were woken up with POLLOUT set -- however a subsequent s
- Apr 04 09:51:07 localhost.localdomain chronyd[768]: Selected source 81.171.44.131
- Apr 04 09:52:12 localhost.localdomain chronyd[768]: System clock wrong by 0.669116 seconds, adjustment started
- Apr 04 09:53:17 localhost.lo
无需担心,journalctl有很多过滤选项。Journalctl -b过滤在启动时产生的信息。Journalctl --since=yesterday只显示自从昨天登录开始的信息。管理员可以从具体的天数范围搜索信息:例如,journalctl --since=2014-03-15 --until="2014-03-17 23:59:59"。使用journalctl -u httpd since=00:00 --until=8:00查看昨晚登录的httpd进程。如果管理员掌握了高级的journald过滤选项,分析日志文件就更加轻松。
某些情况下,journalctl显示的默认日志信息在细节上还不够。要获得更多信息,将输出格式设置为verbose,使用命令journalctl -o verbose -n。
表2:通过显示verbose日志信息,Linux管理员可以从日志文件获取更多信息。
- Fri 2014-04-04 10:12:32.072521 CEST [s=a52ddd97575747a18c6378d388b2b9ff;i=955;b=bc03fb52eddb41
- b0bb4829ae19c1c286;m=8f1dd 5f2;t=4f633145a58d9;
- PRIORITY=6
- _UID=0
- _GID=0
- _BOOT_ID=bc03fb52eddb41b0bb4829ae19c1c286
- _MACHINE_ID=1fbfd90ac4fc49919fe1b63d6bcf9097
- _HOSTNAME=localhost.localdomain
- SYSLOG_FACILITY=3
- _TRANSPORT=syslog
- _SYSTEMD_CGROUP=/system.slice/network.service
- _SYSTEMD_UNIT=network.service
- SYSLOG_IDENTIFIER=dhclient
- _COMM=dhclient
- E=/usr/sbin/dhclient
- _CMDLINE=/sbin/dhclient -H localhost -1-q-lf/var/lib/dhclient/dhclient-0b5faf33-6df0-4f11-bbb9-659b5cd940e9-ens33.lease -pf /var/run/
- _CAP_EFFECTIVE=0000000000203402
- _SELINUX_CONTEXT=system_u:system_r:dhcpc_t:s0
- SYSLOG_PID=1760
- _PID=1760
- MESSAGE=bound to 192.168.4.232 -- renewal in 892 seconds.
- _SOURCE_REALTIME_TIMESTAMP=1396599152072521
Logrotate与远程日志
你所习惯的一些运作方式发生了变化。关闭与归档日志文件的系统Logrotate变得日益巨大。在journald上,没有必要循环日志文件。它构建的目的在于监控存储卷上的剩余空间。如果卷快满了,就删除旧有记录释放空间。要为journald日志设置一个最大尺寸,在/etc/systemd/journal.conf文件中修改SystemMaxUse参数。
远程日志又是另一回事了。如果你的数据中心有一个远程日志服务器,那就应该保留。journald不是对集中日志服务器,如rsyslog或syslog-ng do的完全替代。Journald没有将来自其他服务器或设备的日志文件进行替代的选项。也没有指定哪台日志服务器的日志事件可以转发的选项。如果你想要journald在其他地方存放日志信息,最佳做法是将信息转发给[r]syslog[{d-ng}],在这里处理集中的日志。
Centos7 Journald 指令的更多相关文章
- vmware在桥接模式下配置centos7网络,并使用xshell连接虚拟主机(总结篇)
虚拟机系统:centos7 mini版本 1.虚拟安装成功之后,首先我配置的是桥接模式,因为我使用的是网线,配置完桥接模式之后我的linux虚拟机就可以访问网络了 2.因为我安装的是centos7的迷 ...
- CentOS7版本基础使用
第1章 CentOS7的使用 1.1 为什么要使用CentOS7版本 CentOS7是在CentOS6基础上发布的新版本,与之前的版本相比,主要的更新包括: 1.内核更新到3.10.0 2.支持Lin ...
- 0-systemctl开机启动项
防火墙:iptables Apache服务名称:httpd MySQL服务名称:mysqld VSFTP服务名称:vsftpd <!--CentOS7新指令--> 使某服务 自动启动 sy ...
- CentOS7.0小随笔——指令基本操作(Part.A)
与其说是CentOS7.0的小随笔,说老实话,基本指令在每个发行版本的Linux中都基本上是一致的. Part.A部分我们讲述以下四个方面:命令行界面与图形界面.Linux系统的关闭与重启.命令行帮助 ...
- centos7下安装docker(dockerfile常用的指令)
FROM:指定ase镜像 MAINTAINER:设置镜像作者,可以是任意字符 COPY:将文件从build context复制到镜像.支持两种形式:1.COPY src dest 2.COPY [“ ...
- centos7.4 linux 指令
1.查看版本 lsb_release -a 2.查看mysql路径 whereis mysql 3.查看编码 locale 修改语言编码 经过在网上查找资料发现,Centos 7已经不采用/etc/s ...
- CentOS7.0小随笔——指令基本操作(Part.B)
一.文件与目录基本操作指令 touch命令 在Linux中,touch指令可以建立一个空文件 但如果创建的文件本身存在(指在同一目录下),则会修改文件最后的访问时间,并不会更改文件内的内容. 例:# ...
- CentOS7.5 防火墙指令
防火墙指令 1. 查看防火墙状态: firewall-cmd --state 2. 启动防火墙 systemctl start firewalld.service 3. 关闭防火墙 systemctl ...
- Centos7 docker 常用指令
Docker 运行在 CentOS 7 上,要求系统为64位.系统内核版本为 3.10 以上 一.docker的安装及卸载 1.查看当前系统内核版本: [root@docker ~]# uname - ...
随机推荐
- 一键搭建LNMP脚本
还有不足的地方,请谅解 2天时间刚做到安装mysql这里.... # [root@localhost ~]# cat /etc/centos-release # CentOS release 6. ...
- java 数据类型和运算符
1.注释 单行注释: //哈哈哈 多行注释: /* 啦啦啦 */ 文档注释: /** */注释中包含一些说明性的文字及一些JavaDoc标签(后期写项目时,可以生成项目的API) ...
- Java字节码里的invoke操作&&编译时的静态绑定与动态绑定
一个一直运行正常的应用突然无法运行了.在类库被更新之后,返回下面的错误. Exception in thread "main" java.lang.NoSuchMethodErro ...
- proxy config (firefox config)
sudo apt-get install shadowsocks sudo apt-get install polipo 编辑polipo config: sudo vim /etc/polipo/c ...
- eclipse调试断点【转载】
该片博文是转载他人的博客,原博客地址:http://blog.csdn.net/maritimesun/article/details/7815903 作为开发人员,掌握开发环境下的调试技巧十分有必要 ...
- ShellExecute使用详解
ShellExecute命令 ⑴ 函数原型: HINSTANCE ShellExecute(HWND hwnd, LPCTSTR lpOperation, LPCTSTR lpFile, LPCTST ...
- Spring Boot 之 Profile 使用
Spring Boot 之 Profile 使用 一个应用为了在不同的环境下工作,常常会有不同的配置,代码逻辑处理.Spring Boot 对此提供了简便的支持. 关键词: @Profile.spri ...
- 【转】Raft 为什么是更易理解的分布式一致性算法
编者按:这是看过的Raft算法博客中比较通俗的一篇了,讲解问题的角度比较新奇,图文并茂,值得一看.原文链接:Raft 为什么是更易理解的分布式一致性算法 一致性问题可以算是分布式领域的一个圣殿级问题了 ...
- linux svn代码回滚命令
取消对代码的修改分为两种情况: 第一种情况:改动没有被提交(commit). 这种情况下,使用svn revert就能取消之前的修改. svn revert用法如下: # svn revert [-R ...
- Intel x86_64 Architecture Background 3
多层次的cache结构解决了CPU和DRAM之间处理速度不一致的问题,在Intel体系架构下,CPU核心和主存DRAM之间有着三层的cache.其中一层缓存L1和二层缓存L2在CPU核心(core)中 ...