Linux系统中的日志服务管理
目錄
1.日志介紹
1.1 什么是日志
1.2 Linux系統使用的兩種系統日志服務
1.3 ELK
2.rsyslog的管理
2.1 系統日志術語
1.2 實驗
1.日志介紹
1.1 什么是日志
網絡設備、系統及服務程序等,在運作時都會產生一個叫log的事件記錄;每一行日志都記載著日期、時間、使用者及動作等相關操作的描述
日志記錄的內容包括:
-
歷史事件:時間,地點,人物,事件
-
日志級別:事件的關鍵性程度,Loglevel
1.2 Linux系統使用的兩種系統日志服務
sysklogd 系統日志服務
sysklogd是在centos5之前的版本中使用的系統日志服務
Sysklogd 日志記載 器由兩個守護進程(klogd syslogd)和一個配置文件(syslog.conf)組成。klogd 不運用 配置文件,它負責截獲內核消息,它既能夠 獨立運用 也能夠 作為 syslogd 的客戶端運行。syslogd 默認運用 /etc/syslog.conf 作為配置文件,它負責截獲使用 程序消息,還能夠 截獲 klogd 向其轉發的內核消息。支撐 internet/unix domain sockets 的特征 使得這兩個工具能夠 用于記載 本地和遠程的日志
簡單來說,syslogd負責記錄應用日志,klogd負責記錄內核日志
rsyslog 系統日志服務
rsyslog是CentOS 6以后版本的系統管理服務:它提供了高性能,出色的安全性和模塊化設計。盡管rsyslog最初是常規的syslogd,但發展成為一種瑞士軍刀式的記錄工具,能夠接受來自各種來源的輸入,并將其轉換,然后輸出到不同的目的地
rsyslog 特性
-
多線程
-
UDP, TCP, SSL, TLS, RELP
-
MySQL, PGSQL, Oracle實現日志存儲
-
強大的過濾器,可實現過濾記錄日志信息中任意部分
-
自定義輸出格式
-
適用于企業級中繼
1.3 ELK
ELK:由Elasticsearch, Logstash, Kibana三個軟件組成
-
非關系型分布式數據庫基于apache軟件基金會jakarta項目組的項目lucene
-
Elasticsearch是個開源分布式搜索引擎,可以處理大規模日志數據,比如:Nginx、Tomcat、系統日志等功能
-
Logstash對日志進行收集、分析,過濾,并將其存儲供以后使用
-
Kibana 可以提供的日志分析友好的 Web 界面
2.rsyslog的管理
2.1 系統日志術語
facility:設施,從功能或程序上對日志進行歸類
常用的facility:lpr: 打印相關的日志auth:認證相關的日志user:用戶相關的日志cron:計劃任務相關的日志kern:內核相關的日志mail:郵件相關的日志mark:標記相關的日志news:新聞相關的日志uucp:文件copy相關的日志daemon:系統服務相關的日志authpri: 授權相關的日志security:安全相關的日志Priority 優先級別,從低到高排序
| debug (LOG_DEBUG) | 一般的調試信息說明 |
| info (LOG_INFO) | 基本的通知信息 |
| notice (LOG_NOTICE) | 普通信息,但是有一定的重要性 |
| warning(LOG_WARNING) | 警吿信息,但是還不會影響到服務或系統的運行 |
| error(LOG_ERR) | 錯誤信息, 一般達到err等級的信息已經可以影響到服務成系統的運行了 |
| crit (LOG_CRIT) | 臨界狀況信思,比err等級還要嚴? |
| alert (LOG_ALERT) | 狀態信息,比crit等級還要嚴重,必須立即采取行動 |
| emerg (LOG_EMERG) | 疼痛等級信息,系統已經無法使用了 |
| * | 代表所有日志等級。比如,“authpriv.*”代表amhpriv認證信息服務產生的日志,所有的日志等級都記錄 |
1.2 實驗
單獨設置ssh日志
首先進入/etc/ssh/sshd_config 目錄下修改配置文件
加入自定義的local6
?然后再/etc/rsyslog.conf文件的第76行添加自己的文件位置
使用ssh命令重新登錄一下,就可以看到目錄中出現了ssh.log文件
?
?
遠程日志功能
遠程日志功能就是將一臺服務器上的日志文件,傳輸到另一臺服務器上
首先我們需要進入 /etc/rsyslog.conf 文件中開啟19 20兩行,以開啟接收方的傳輸端口
使用ss命令可以查看端口是否開啟
?之后我們修改發送端 rsyslog的配置文件,兩個@代表tcp協議(一個@代表udp)
?注意,在使用網絡命令之前,我們需要關閉防火墻,修改完配置文件之后,需要重啟服務
完成之后,我們使用logger命令在日志文件中添加測試字段
?之后我們來到接收方,使用tail命令來參看一下/var/log/messages文件
?可以看到這里出現了剛剛輸入的測試字段,試驗成功!
?
總結
以上是生活随笔為你收集整理的Linux系统中的日志服务管理的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【能力地图】芯片验证篇
- 下一篇: Unix/Linux 中shell命令