一、何为日志

1、在程序执行时,可以通过标准输出以及错误输出,让我们知道程序的执行情况,而系统不可能将所有程序的输出信息一起显示,要知道后台执行的程序非常之多,如果一起显示,那我们不用操作了,整天只看输出结果就够忙了!

2、这时就需要日志系统了,有了日志之后,系统可以将所有程序的输出结果,分类到日志中,通过查看日志,我们就可以知道系统的运行情况。

3、ping 192.168.18.254 >> /tmp/cjk这么简单的一条命令,其实就是一个日志,将ping的结果输出到cjk中,我们可以通过cat /tmp/cjk来了解ping命令的运行情况。

二、系统日志服务组件

1、rsyslogd

全名为系统日志服务System Log Daemon,用来采集用户的应用程序或者服务产生的信息。

2、logger

这是一个日志服务的客户端工具,可以使用这个工具,直接在shell中传递信息给系统日志服务,通常用为测试系统日志服务。

三、日志服务安装

rpm -q rsyslog  #查询是否已经安装

yum -y install rsyslog          #安装系统日志服务

四、日志服务运行状态管理

systemctl stop rsyslog            #关闭日志服务

systemctl start rsyslog           #开启日志服务

systemctl enable rsyslog         #设为开机启动

systemctl disable rsyslog        #设置为开机不启动

五、日志服务配置 

配置文件的路径/etc/rsyslog.conf

格式:

FACILITY.PRIORITY ACTION

信息来源.优先级别 处理方式

信息来源列表

authpriv        #与安全验证有关的信息。

cron              #包含at或cron定时执行系统产生的信息。

daemon         #一般服务器的信息。

kern              #来自内核信息。

lpr                #打印系统传来信息。

mail              #电子邮件系统信息。

syslog           #syslog服务器本身信息

user              #一般用户等级信息。

uucp             #UUCP子系统信息。

localN           #保留。

安全级别列表

轻微      debug       #只是排错信息,仅对程序开发人员有用,对系统管理者的你是没有太大意义的。

info          #通常这是正常信息,你也可以忽略info的信息。

notice        #这是稍微要注意的信息。

warn          #可能有问题的警告信息。

err             #这是错误信息。

crit            #这是危急错误。

alert          #这是需特别留意的警报信息。

严重     emerg        #这是紧急状况,如果再不处理该服务或系统可能会宕

PRIORITY的计算方式:

PRIORITY:代表等于,或高于PRIORITY。例如,err相当等于err + crit +alert + emerg。

=PRIORITY:恰等于PRIORITY。例如,=err就是err本身。

!PRIORITY:代表除了PRIORITY之外的。例如,!err就为debug + info +notice + warn + crit + alert + emerg。

除此之外,FACILITY与PRIORITY可以使用星号代表所有的,因此*.* 就表示所有的FACILITY的所有PRIORITY信息。

而ACTION字段则是用来定义如何处理接收到的信息。可以指定:

/PATH/FILENAME:将信息储存至/PATH/FILENAME文件中。注意,如要系统日志服务把信息储存到文件,这个文件必须要写绝对路径。

USERNAME:将信息送给已登录用户。

@HOSTNAME:代表将信息转到HOSTNAME的系统日志服务器。

*:将信息传送给所有已登录的用户。

六、日志格式

DATE:信息发生日期。

TIME:信息发生时间。

HOSTNAME:信息发生主机。

APP:产生信息软件。

NAME:软件名称,或是软件组件名称。可以省略。

PID:进程标识。可以省略。

MESSAGES:信息内容。

七、集中式的日志服务

1、为什么需要集中式日志服务

如果你负责管理很多台LINUX服务器,你就需要登录每台服务器查看上面的日志,特别麻烦,如果通过集中式的日志服务,就可以将日志收集起来,统一管理。

2、集中式日志服务的架构日志管理

3、设置步骤

a.修改客户端的配置文件,路径是/etc/rsyslog.conf,加如下参数*.* @logserver。

b.修改服务端的配置文件,路径是/etc/rsyslog.conf,取消如下注释:

$ModLoad imudp

$UDPServerRun 514

$ModLoad imtcp

$InputTCPServerRun 514

c.重启客户端和服务端的日志服务。

八、日志切割

logrotate            #日志切割

/etc/logrotate.conf              #配置文件

/etc/logrotate.d/                 #切割配置

选项:

-v           #详细信息

-f            #强制

九、日志管理

什么是日志呢?相信大家都见过windows下的日志,或者是一些应用程序产生的日志,日志服务记录操作系统或对应用程序进行操作时出现的问题。

日志有正确的,记录在什么时间有哪些人执行了什么操作。也有错误日志,记录系统在什么时间发生了什么错误。日志平时很不起眼,但不代表其不重要,当你的电脑发生错误时,需要借助日志系统,判断什么时间,在哪里出现了问题。

ps aux | grep rsyslogd 查看服务是否启动

chkconfig --list | grep rsyslog 查看是否开机启动服务

/var/log/cron 记录了系统定时任务相关的日志

/var/log/cpus/ 记录打印信息日志

/var/log/dmesg 记录了系统在开机时内核自检的信息,也可以使用dmesg命令直接查看内核自检信息。

/var/log/btmp 记录错误登录日志。这个文件为二进制文件,不能通过vi来查看,要使用lastb命令查看。

/var/log/lastlog 记录系统中所有用户最后一次登录时间的日志。这个文件为二进制文件,不能通过vi来查看,要使用lastlog命令查看。

/var/log/mailog 记录邮件信息。

/var/log/message 记录系统重要信息日志。这个日志文件中会记录linux系统的绝大多数重要信息。如果系统出现问题,首先要检查的就应该是这个日志文件。

/var/log/secure 记录验证和授权方面的信息。只要涉及账户和密码的程序都会记录。比如说系统的登录,ssh的登录,su切用户,sudo的授权,甚至添加用户以及修改用户密码都会记录在这个日志文件中。

/var/log/wtmp 永久记录所有用户登录、注销信息,同时记录系统启动、重启、关机事件。这个文件为二进制文件,不能通过vi来查看,要使用last命令查看。

/var/run/utmp 记录当前已经登录用户信息。这个文件会随着用户的登录和注销而不断变化,只记录当前登录用户的信息。这个文件为二进制文件,不能通过vi来查看,要使用w/who/users命令查看。

上面这些日志都是系统默认日志,除了这些日志之外,还有一些采用rpm方式安装的系统服务也会默认把日志记录在/var/log/目录中。不过这些日志不是由rsyslogd服务来记录和管理,而是各个服务使用自己的日志管理文档来记录自身日志。

/var/log/httpd/ rpm包安装apache服务的默认日志目录

/var/log/mail/ rpm包安装邮件服务器的额外日志目录

/var/log/samba/ rpm包安装samba服务的日志目录

/var/log/sssd/ 守护进程安全服务目录

rsyslogd日志服务的使用

首先说下日志文件格式,基本日志格式包含以下四列:

事件产生时间;

发生事件的服务器的主机名;

发生事件的服务名或程序名;

事件具体信息。

配置文件的位置/etc/rsyslog.conf。

例子:

authpriv.*                                   /var/log/secure

认证相关服务.所有日志等级         记录在/var/log/secure日志

auth            安全和认证的相关信息(不推荐使用authpriv替代)

authpriv         安全和认证的相关信息(私有)

cron            系统定时任务cront和at产生的日志

daemon          和各个守护进程相关的日志

ftp              ftp守护进程产生的日志

kern            内核产生日志(不是用户进程产生)

local0-local7     为本地使用预留的服务

lpr             打印产生日志

mail            邮件收发信息

news           与新闻服务器相关日志

syslog          syslogd服务产生的日志信息

user            用户等级类别日志信息

uucp           uucp子系统日志信息,uucp是早期linux系统进行数据传递的协议

转载于:https://www.cnblogs.com/renyz/p/11347984.html

Linux进阶之日志管理相关推荐

  1. 《构建高可用Linux服务器 第3版》—— 1.4 Linux服务器的日志管理

    本节书摘来自华章出版社<构建高可用Linux服务器 第3版>一 书中的第1章,第1.4节,作者:余洪春 ,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 1.4 ...

  2. Linux系统的日志管理

    Linux系统的日志管理 一.systemd-journald服务 1.systemd-journald介绍 2.系统日志默认保存路径 3.systemd-journald的配置文件修改 ①配置文件目 ...

  3. linux服务器操作系统日志都有哪些,Linux操作系统服务器日志管理详解

    Linux操作系统服务器日志管理详解 Linux操作系统服务器日志管理详解 日志对于安全来说,非常重要,他记录了系统每天发生的各种各样的事情,你可以通过他来检查错误发生的原因,或者受到攻击时攻击者留下 ...

  4. linux下mysql日志管理及mysql备份还原

    linux下mysql日志管理及mysql备份还原 1.SHOW GLOBAL VARIABLES LIKE '%log%';  显示所有日志相关的选项 2.错误日志:log_error和log_wa ...

  5. linux 学习 14 日志管理

    第十四讲 日志管理 14.1 日志管理-简介 1.日志服务 在CentOS 6.x中日志服务已经由rsyslogd取代了原先的syslogd服务.rsyslogd日志服务更加先进,功能更多.但是不论 ...

  6. Linux学习笔记 -- 日志管理

    目录 日志管理 rsyslogd 自定义日志服务 日志轮替 logrotate 将个人日志加入日志轮替 日志轮替机制 -- 定时任务crond 查看内存日志 -- journalctl 传送门 日志管 ...

  7. Linux基础:日志管理

    一.日志管理简介 1. 日志服务: 在CentOS 6.x中日志服务已经由rsyslogd取 代了原先的syslogd服务.rsyslogd日志服 务更加先进,功能更多.但是不论该服务 的使用,还是日 ...

  8. Linux系统的日志管理及时间管理

    目录 实验环境 1. journald 1.1 journalctl概述 1.2 查看系统日志 1.3 用journald服务永久存放日志 2. rsyslog 2.1 rsyslog概述 2.2 自 ...

  9. Linux系统管理员之日志管理

    目录 零.实验环境 一.journald服务 1.journalctl命令 (1)基本命令 (2)设定日志显示方式 (3)显示制定级别的日志 2.用journald服务永久存放日志 3.测试 二.rs ...

  10. Linux进阶(日志分割工具logrotate)

    一.工具介绍 logrotate是一个linux系统日志的管理工具.可以对单个日志文件或者某个目录下的文件按时间/大小进行切割,压缩操作:指定日志保存数量:还可以在切割之后运行自定义命令. logro ...

最新文章

  1. GStreamer 1.18.4稳定的错误修复版本
  2. 如何有效地防止网站和手机APP的数据被采集?
  3. android130 android启动
  4. 用VC++实现一个文本文件阅读器
  5. Ubuntu14.04安装wine QQ
  6. Android 消息机制详解(Android P)
  7. Kafka消息丢失、重复消费的解决方案
  8. TPYBoard:一款可以发挥无限创意的MicroPython开发板
  9. 学Java可以看哪些书?6本Java书籍推荐
  10. 阿里程序员深夜智救31楼跳楼邻居
  11. aws cli_学习AWS CLI:AWS CLI概述(AWS命令行界面)
  12. 我用Python把抖音上的美女图片转字符画,期望的AI目标更进一步【机器学习算法实战小项目,k聚类算法图片转化字符画】
  13. 【复习篇】高等代数第五版重难知识点整理(1)
  14. VBlog 的代码结构, 使用 vue-element, vue-vant 组件开发的纯前端博客
  15. 蒙氏三段卡素材---蚂蚱三段卡
  16. 嵌入式Linux学习笔记之Linux内核裁剪
  17. AWT/SWT/SWING 区别和联系
  18. 【LeetCode】跳跃游戏Ⅰ~Ⅵ(我真的跳晕了@_@)
  19. 保险不是场景,失去场景保险业将失去一切!
  20. 实用算法 002: SAM 上的根号暴力

热门文章

  1. T-SQL: 读取磁盘文件
  2. poj Labeling Balls 3687 拓扑排序!!!!
  3. 苹果Mac轻量级网页代码编辑器:​​​​​​​​​​​​Espresso
  4. Mac密码管理工具:1Password 7
  5. Rhino 7 for Mac(犀牛3D造型软件)
  6. 如何在M1的Mac上检查App是原生执行,还是Rosetta转译后执行?
  7. 如何设置Parallels Desktop游戏模式?
  8. 如何使用Aiseesoft Mac FoneTrans传输和管理iOS文件
  9. Android开发入门教程--3.Activity入门指南
  10. 第九章 搭建Hadoop 2.2.0版本HDFS的HA配置