日志
操作系统或应用程序发生的事件记录下来
通过分析日志挖掘出数据进行分析和利用
日志内容:时间,位置,用户,事件,级别……
系统日志管理
系统日志管理工具介绍
sysklogd 老版本使用
CentOS 5 之前版本采用的日志管理系统服务
sysklogd分成两个部分
syslogd: system application 记录应用日志
klogd: linux kernel 记录内核日志
rsyslog 新版本
rsyslog是CentOS 6 以后版本的系统管理服务。
rsyslog提供了高性能,出色的安全性和模块化设计。
rsyslog能够接受来自各种来源的输入,并将其转换,然后输出到不同的目的地。
ELK 分布式日志管理系统
Elasticsearch查到集日志并通过 Logstash收集整理在用kibana展示出来
ELK:由Elasticsearch, Logstash, Kibana三个软件组成非关系型分布式数据库
基于apache软件基金会jakarta项目组的项目lucene
Elasticsearch是个开源分布式搜索引擎,可以处理大规模日志数据, 比如:Nginx、Tomcat、系统日志等功能
Logstash对日志进行收集、分析,过滤,并将其存储供以后使用
Kibana 可以提供的日志分析友好的 Web 界面
日志相关概念
faclity 设施 对日志分类
facility参数用于指定记录消息的程序类型。这让配置文件指定来自不同的消息 设施将以不同的方式处理。
auth, authpriv, cron, daemon,ftp,kern, lpr, mail, news, security( auth) ,
user, uucp, syslog
local0-local7
常见日志问分类
LOG_AUTH 安全/授权信息
LOG_AUTHPRIV 安全/授权消息(私有)
LOG_CRON 时钟守护进程
LOG_DAEMON 没有单独工具值的系统守护进程
LOG_FTP ftp 守护进程
LOG_KERN 内核消息(不能从用户进程生成)
LOG_LPR行打印机子系统
LOG_MAIL邮件子系统
USENET新闻子系统
LOG_SYSLOG 由syslogd(8)内部产生的LOG_SYSLOG消息
LOG_USER(默认) 通用的用户级消息
LOG_UUCP UUCP子系统
LOG_LOCAL0- LOG_LOCAL7 预留给本地使用的用户自定义日志
priority 优先级 对不同的日志排序
LOG_EMERG system is unusable
LOG_ALERT action must be taken immediately
LOG_CRIT critical conditions
LOG_ERR error conditions
LOG_WARNING warning conditions
LOG_NOTICE normal, but significant, condi‐tion
LOG_INFO informational message
LOG_DEBUG debug-level message
Linux常见系统日志文件
Linux系统日志文件默认存放在/var/log目录下
[ root@C8-192 ~]
/var/log/
├── anaconda
│ ├── anaconda.log
│ ├── dbus.log
│ ├── dnf.librepo.log
│ ├── hawkey.log
│ ├── ifcfg.log
│ ├── journal.log
│ ├── ks-script-0astvfg3.log
│ ├── ks-script-3gx7lcu8.log
│ ├── ks-script-zk355kub.log
│ ├── packaging.log
│ ├── program.log
│ ├── storage.log
│ └── syslog
├── audit
│ └── audit.log
├── boot.log
├── boot.log-20210531
├── boot.log-20210601
├── btmp
├── btmp-20210601
├── cron
├── dnf.librepo.log
├── dnf.log
├── dnf.rpm.log
├── hawkey.log
├── httpd
│ ├── access_log
│ └── error_log
├── lastlog
├── maillog
├── messages
├── mysql
│ └── mysqld.log
├── php-fpm
│ └── error.log
├── private
├── secure
├── spooler
├── sssd
│ ├── sssd_implicit_files.log
│ ├── sssd_kcm.log
│ ├── sssd.log
│ └── sssd_nss.log
├── tuned
│ └── tuned.log
├── vmware-network.1.log
├── vmware-network.2.log
├── vmware-network.3.log
├── vmware-network.4.log
├── vmware-network.log
├── vmware-vgauthsvc.log.0
├── vmware-vmsvc.log
├── wtmp
└── xferlog
8 directories, 47 files
常见日志文件功能
/var/log/secure:系统安全日志,文本格式,应周期性分析
/var/log/btmp:当前系统上,用户的失败尝试登录相关的日志信息,二进制格式,lastb命令进行查看
/var/log/wtmp:当前系统上,用户正常登录系统的相关日志信息,二进制格式,last命令可以查看
/var/log/lastlog:每一个用户最近一次的登录信息,二进制格式,lastlog命令可以查看
/var/log/dmesg:CentOS7 之前版本系统引导过程中的日志信息,文本格式,开机后的硬件变化将不再记录专用命令dmesg查看,可持续记录硬件变化的情况
/var/log/boot.log 系统服务启动的相关信息,文本格式
/var/log/messages :系统中大部分的信息
/var/log/anaconda : anaconda的日志
Linux查看日志常用命令
cat,less,more配合grep、sed、awk