2019-03-16笔记—日志管理

本文介绍了系统日志的管理,包括日志文件配置、日志服务、日志等级和记录位置。重点讲解了日志服务的facility、连接符号以及不同等级的日志记录。此外,还提及了系统设备文件如/dev/console,以及如何将日志转发到远程主机。在服务日志部分,提到了Nginx、PHP-FPM、MariaDB/MySQL、Tomcat和Zabbix等服务的主要日志类型和关注点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

系统日志

常见的日志文件:

日志文件说明
/var/log/message记录Linux系统的绝大多数重要信息,如果系统出现问题,首先要检查的应该就是这个日志文件
/var/log/secure记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录,比如系统的登录、ftp的登录、ssh的登录、su切换用户,sudo授权,甚至添加用户和修改用户密码都会记录在这个日志文件中
/var/log/dmesg记录了系统在开机时内核自检(硬件)的信息。也可以使用dmesg命令直接查看内核自检信息
/var/log/wtmp永久记录所有用户的登陆、注销、系统的启动、重启、关机事件,是二进制文件.不能直接Vi查看,使用last命令查看
/var/log/btmp记录错误登陆的日志。这个文件是二进制文件,不能直接Vi查看,使用lastb命令查看
/var/log/lasllog记录系统中所有用户最后一次的登录时间的日志,也是二进制文件,使用lastlog命令查看
/var/log/cron系统定时任务相关的日志

定义服务日志记录位置的配置文件—/etc/rsyslog.conf

格式:日志服务[连接符号]日志等级 日志记录位置

#### RULES ####

# Log all kernel messages to the console.
# Logging much else clutters up the screen.
#kern.*                                                 /dev/console

# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
*.info;mail.none;authpriv.none;cron.none                /var/log/messages

# The authpriv file has restricted access.
authpriv.*                                              /var/log/secure

# Log all the mail messages in one place.
mail.*                                                  -/var/log/maillog


# Log cron stuff
cron.*                                                  /var/log/cron

# Everybody gets emergency messages
*.emerg                                                 :omusrmsg:*

# Save news errors of level crit and higher in a special file.
uucp,news.crit                                          /var/log/spooler

# Save boot messages also to boot.log
local7.*                                                /var/log/boot.log

日志服务

facility:是用来定义由谁产生的日志信息

日志服务名称说明
auth安全和认证
authpriv安全和认证(私有),指定用户才能查看
cron计划任务
daemon系统守护进程
kern与内核有关的信息
lpr与打印服务有关的信息
mail与电子邮件有关的信息
news来自新闻服务器的信息
syslog由syslog生成的信息
user用户的程序生成的信息,默认
ftpftp服务的日志信息
uucp由uucp生成的信息
local0~7用来定义本地策略

连接符号

  1. “.”代表只要比后面的等级高的(包含该等级)日志都记录。比如,“cron.info”代表cron服务产生的日志,只要日志等级大于等于info级别就会记录。
  2. “.=”代表只记录所需等级的日志,其他等级的日志都不记录。比如,“*.=emerg”代表任何日志服务产生的日志,只要等级是emerg等级就记录
  3. “.!”代表不等于,也就是除该等级的日志外,其他等级的日志都记录。

日志等级(从上至下等级越高)

等级名称含义
debug一般的调试信息
info基本的通知信息
nolice普通信息,但是有一定的重要性
warning警吿信息,但是还不会影响到服务或系统的运行
err错误信息, 一般达到err等级的信息已经可以影响到服务成系统的运行了
crit临界状况信思,比err等级要严重
alert状态信息,比err等级要严重,必须立即处理
emerg紧急信息,系统已经无法使用了
*代表所有日志等级。比如,“authpriv.*”代表amhpriv认证信息服务产生的日志,所有的日志等级都记录

日志记录位置

  1. 绝对路径
    mail.* -/var/log/maillog

“-” 表示通过异步的方式记录文件,日志量较大的情况下,部分日志会先存储在内存中,然后同步到对应磁盘文件中
2. 系统设备文件

#kern.* /dev/console

[root@linux2019 ~]# ll /dev/console
crw------- 1 root root 5, 1 3月 14 10:22 /dev/console
3. 转发给远程主机

  • *.* @192.168.1.1 # 所有日志使用UDP协议转发到192.168.0.1的514端口
  • *.* @@192.168.1.1:514 # 所有日志使用TCP协议转发到192.168.0.1的514端口
  • 514端口是日志服务的默认端口
  1. 用户名
  • *.alert root #表示把大与alert等级的日志发送给root用户(需要在线)
  • .emerg :omusrmsg: #表示把大于emerg等级的日志打印到每个登录到系统上的用户的显示器窗口上
  1. 忽略或丢弃日志(~
    mail.=info ~ #表示邮件info等级的日志全部丢弃
服务日志

列举当前测试环境已安装服务的主要关注的日志

  1. Nginx (访问日志、错误日志)

nginx服务默认主配置文件是/etc/nginx/nginx.conf,里面定义了登录日志和错误日志的格式和默认路径,针对各个nginx虚拟主机配置文件,可以对日志的配置重新定义

[root@linux2019 ~]# vim /etc/nginx/nginx.conf 
log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';
error_log  /var/log/nginx/error.log warn;
access_log  /var/log/nginx/access.log  main;
[root@linux2019 conf.d]# pwd
/etc/nginx/conf.d
[root@linux2019 conf.d]# ll
总用量 16
-rw-r--r-- 1 root root 1578 2月  14 09:12 bbs.aibenwoniu.xyz.conf
-rw-r--r-- 1 root root 1062 3月   2 22:56 blog.aibenwoniu.xyz.conf
-rw-r--r-- 1 root root 1095 3月   2 23:14 default.conf.bakfile
-rw-r--r-- 1 root root  717 3月   2 22:55 zrlog.aibenwoniu.xyz.conf_bak
[root@linux2019 conf.d]# vim bbs.aibenwoniu.xyz.conf    #定义日志配置
#access_log  /var/log/nginx/host.access.log  main; 默认日志配置
access_log  /data/logs/bbs.access.log  main;
error_log  /data/logs/bbs.error.log  warn;
  1. PHP-FPM (错误日志、慢执行日志)
[root@linux2019 ~]# vim /usr/local/php-fpm/etc/php-fpm.conf #配配置错误日志
;error_log = log/php-fpm.log
[root@linux2019 ~]# cd  /usr/local/php-fpm/etc/php-fpm.d
[root@linux2019 php-fpm.d]# ll
总用量 44
-rw-r--r--  1 root root 19318 2月  14 09:21 bbs.conf
-rw-r--r--  1 root root   479 2月  14 09:20 blog.conf
-rw-r--r--. 1 root root 19244 1月  23 11:09 www.conf.default
[root@linux2019 php-fpm.d]# vim /usr/local/php-fpm/etc/php-fpm.d/bbs.conf #配置慢执行日志
slowlog = /var/log/$pool.log.slow
request_slowlog_timeout = 1

  1. php 错误日志
[root@linux2019 php-fpm.d]# vim /usr/local/php-fpm/etc/php-fpm.d/bbs.conf 
php_admin_value[error_log] = /var/log/fpm-php.bbs.log
  1. MariaDB/MySQL (错误日志、慢查询日志)
[root@linux2019 mysql]# cd /etc/my.cnf  
slow_query_log = ON
slow_query_log_file = /data/mysql/linux2019-slow.log    #配置慢查询日志
long_query_time = 2
log-error=/data/mysql/mariadb.log   
  1. Tomcat (访问日志–主要关注catalina.out日志)
  2. Zabbix
[root@linux2019 ~]# vim /etc/zabbix/zabbix_server.conf 
LogFile=/var/log/zabbix/zabbix_server.log
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值