1. 程式人生 > >CentOS6-7,rsyslog服務(一)

CentOS6-7,rsyslog服務(一)

messages sys rect ftp ssl 方式 登入 分析 .info

rsyslog特性:CentOS6和7
1,多線程 
2,支持UDP, TCP, SSL, TLS, RELP ? MySQL, PGSQL, 3,Oracle實現日誌存儲 4,強大的過濾器,可實現過濾記錄日誌信息中任意部分  
5,自定義輸出格式 
6,ELK:elasticsearch, logstash, kibana 
7,非關系型分布式數據庫 
8,基於apache軟件基金會jakarta項目組的項目lucene 
9,Elasticsearch是個開源分布式搜索引擎 
10,Logstash對日誌進行收集、分析,並將其存儲供以後使用 
11,kibana 可以提供的日誌分析友好的 Web 界面 

術語,參見man logger

facility:設施,從功能或程序上對日誌進行歸類      
"auth:"驗證類日誌 
"authpriv:"驗證和特權授權類日誌
"cron:"計劃任務類日誌
"daemon:"守護進程類日誌
"ftp:"ftp服務日誌
"kern:"內核日誌
"lpr:" 打印類日誌
"mail:"郵件日誌
"news:" 新聞組類日誌
"security(auth):"安全日誌
"user:" 用戶類日誌
"uucp:"
"local0-local7:" 自定義類日誌最多可以有8個  (0-7)
"syslog:" 專門的系統日誌   

Priority 優先級別,從低到高排序

    術語,參見man logger 

    "debug:" 發生任何事情都會計入日誌
    "info:" 計入相對比較重要的事件日誌,但是不一定是錯誤事件
    "notice:"計入重要的通知,以上的日誌 
    "warn(warning):" 計入警告級別以上的日誌 
    "err(error):" 計入錯誤以上的日誌 
    "crit(critical):" 計入嚴重錯誤以上的日誌 
    "alert:" 計入更嚴重的錯誤以上的日誌
    "emerg(panic):" 計入徹底崩潰的日誌

  參看幫助: man 3

syslog

程序包:rsyslog 

主程序:/usr/sbin/rsyslogd 
CentOS 6:service rsyslog {start|stop|restart|status} 
CentOS 7:/usr/lib/systemd/system/rsyslog.service 

配置文件:/etc/rsyslog.conf,/etc/rsyslog.d/*.conf 
庫文件: /lib64/rsyslog/*.so    
配置文件格式:
    由三部分組成  
        "MODULES:"相關模塊配置  
        "GLOBAL:DIRECTIVES:"全局配置  
        "RULES:"日誌記錄相關的規則配置 

/etc/rsyslog.conf 配置文件格式

RULES配置格式: "facility.priority;" facility.priority…  target 

例子:
    "*.info;mail.none;authpriv.none;cron.none                /var/log/messages"  #"計入所有的設施,info級別以上,但是排除郵件,驗證和特權授權類日誌,以及計劃任務類別的日誌計入"

    mail.*                                                  -/var/log/maillog   #"郵件日誌,異步寫入"

    local7.*                                                /var/log/boot.log   #"當前這次系統開機所加載服務的信息"

    local0.*                                        wang,root          #"當發生的是local0設施類型的任意級別日誌就發給root,wang用戶"
    "測試命令:
    logger -p local0.info "The it a st1 text log""  #"註意:這種方式只有正常登入在會起作用"

    "facility:"  *: 所有的facility    
    facility1,facility2,facility3,...:指定的facility列表  
    priority:  
        *: 所有級別  
        none:沒有級別,即不記錄  
        PRIORITY:指定級別(含)以上的所有級別  
        =PRIORITY:僅記錄指定級別的日誌信息  
target:      
    "文件路徑:"通常在/var/log/,文件路徑前的-表示異步寫入  
    "用戶:"將日誌事件通知給指定的用戶,* 表示登錄的所有用戶  
    "日誌服務器:"@host,把日誌送往至指定的遠程服務器記錄  
    "管道:" | COMMAND,轉發給其它命令處理 

日誌文件類型

/var/log/secure:系統安裝日誌,文本格式,應周期性分析 
"/var/log/btmp:"當前系統上,用戶的失敗嘗試登錄相關的日 誌信息,二進制格式,"lastb"命令進行查看 
## 例如:
    [root@centos6 ~]# lastb
    root     ssh:notty    192.168.136.7    Fri Feb  9 05:20 - 05:20  (00:00)    
    root     ssh:notty    192.168.136.7    Fri Feb  9 05:20 - 05:20  (00:00)    
    root     ssh:notty    192.168.136.7    Fri Feb  9 05:20 - 05:20  (00:00)

"/var/log/wtmp:"當前系統上,用戶正常登錄系統的相關日誌 信息,二進制格式,"last"命令可以查看
## 例如:
    [root@centos6 ~]# last
    root     pts/1        192.168.136.1    Fri Feb  9 03:34   still logged in   
    root     pts/0        192.168.136.1    Fri Feb  9 02:23   still logged in   
    root     pts/1        192.168.136.1    Fri Feb  9 00:20 - 02:50  (02:29)    
    root     pts/0        192.168.136.1    Thu Feb  8 20:00 - 02:19  (06:18)    
    reboot   system boot  2.6.32-696.el6.x Thu Feb  8 18:26 - 05:17  (10:51)    
    root     pts/1        192.168.136.1    Thu Feb  8 12:07 - crash  (06:19)    
    root     pts/0        192.168.136.1    Thu Feb  8 10:56 - crash  (07:30)    
    reboot   system boot  2.6.32-696.el6.x Thu Feb  8 10:41 - 05:17  (18:36)    
    reboot   system boot  2.6.32-696.el6.x Fri Jan 26 19:13 - 05:17 (13+10:04)  
    root     pts/1        :0.0             Thu Jan 25 21:10 - 05:28  (08:17)    

"/var/log/lastlog:"每一個用戶最近一次的登錄信息,二進制格 式,
lastlog命令可以查看 

例如:
    [root@centos6 ~]# lastlog
    Username         Port     From             Latest
    root             pts/1    192.168.136.1    Fri Feb  9 03:34:36 +0800 2018
    bin                                        **Never logged in**
    daemon                                     **Never logged in**
    adm                                        **Never logged in**
    zhao             tty1                      Tue Nov  7 18:56:30 +0800 2017

/var/log/dmesg:系統引導過程中的日誌信息,文本格式  文本查看工具查看  
專用命令dmesg查看 
/var/log/messages :系統中大部分的信息 
/var/log/anaconda : anaconda的日誌 
例子:
    [root@centos7 ~]# ls /var/log/anaconda/
    anaconda.log          ks-script-6XLbwh.log  program.log           X.log
    ifcfg.log             ks-script-wB_yhq.log  storage.log           
    journal.log           packaging.log         syslog         

CentOS6-7,rsyslog服務(一)