Linux 下的日志服務器搭建


Linux 下的日志服務器操作

1.系統日志默認分類:

/var/log/messages             系統服務及日志,包括服務的信息,報錯等等

/var/log/secure                  系統認證信息日志

/var/log/maillog                  系統郵件服務信息

/var/log/cron                     系統定時任務信息

/var/log/boot.log                系統啟動信息

日志設備(可以理解為日志類型):

auth                                 pam產生的日志

authpriv                            ssh,ftp等登錄信息的驗證信息

cron                                 時間任務相關

kern                                 內核

lpr                                    打印

mail                                  郵件

mark(syslog)–rsyslog        服務內部的信息,時間標識

news                                新聞組

user                                 用戶程序產生的相關信息

uucp                                 unix to unix copy, unix主機之間相關的通訊

local 1~7                           自定義的日志設備

日志級別:

debug                                有調式信息的,日志信息最多

info                                    一般信息的日志,最常用

notice                                 最具有重要性的普通條件的信息

warning                              警告級別

err                                      錯誤級別,阻止某個功能或者模塊不能正常工作的信息

crit                                     嚴重級別,阻止整個系統或者整個軟件不能正常工作的信息

alert                                    需要立刻修改的信息

emerg                                 內核崩潰等嚴重信息

none                                   什么都不記錄

2. 服務器端配置:打開日志配置文件/etc/rsyslog.conf

# Provides UDP syslog reception
#$ModLoad imudp
#$UDPServerRun 514
# Provides TCP syslog reception
$ModLoad imtcp
$InputTCPServerRun 514

重啟rsyskog服務

3.客戶端配置

vim /etc/rsyslog.conf

若啟用UDP傳輸:添加如下1行

*.* @192.168.30.254:514

若啟用TCP傳輸:添加如下1行

*.* @@192.168.30.254:514

測試

服務器端檢查514端口是否正常

[root@localhost log]# lsof -i:514
COMMAND    PID USER  FD  TYPE DEVICE SIZE/OFF NODE NAME
rsyslogd 14021 root    3u  IPv4  43402      0t0  TCP *:shell (LISTEN)
rsyslogd 14021 root    4u  IPv6  43403      0t0  TCP *:shell (LISTEN)
rsyslogd 14021 root  11u  IPv4  42786      0t0  TCP 192.168.30.254:shell->192.168.30.1:59181 (ESTABLISHED)

現在客戶端已經正常連上服務端

現在在服務端查看日志,同時在客戶端進行日志測試操作

客戶端

logger "12222222222222222222222222222222222222222"

服務端:

[root@localhost log]# tail -f /var/log/messages
Jul  4 16:55:01 localhost systemd: Started Session 214 of user pcp.
Jul  4 16:55:01 localhost systemd: Starting Session 214 of user pcp.
Jul  4 16:55:02 localhost systemd: Removed slice user-995.slice.
Jul  4 16:55:02 localhost systemd: Stopping user-995.slice.
Jul  4 16:55:01 localhost systemd: Created slice user-995.slice.
Jul  4 16:55:01 localhost systemd: Starting user-995.slice.
Jul  4 16:55:01 localhost systemd: Started Session 65 of user pcp.
Jul  4 16:55:01 localhost systemd: Starting Session 65 of user pcp.
Jul  4 16:55:02 localhost systemd: Removed slice user-995.slice.
Jul  4 16:55:02 localhost systemd: Stopping user-995.slice.
Jul  4 16:55:46 localhost root: 12222222222222222222222222222222222222222

這樣一個簡單的日志服務器就搭建完成了

但是我們會發現這樣的日志會和服務器端的日志都是放在同一個文件下的,這樣會產生很多的混亂,所以我們需要將這些日志進行分類存放

所以我們需要以下幾點

1. 在/etc/rsyslog.conf中存在$IncludeConfig /etc/rsyslog.d/*.conf這么一句話,表示它會去這個目錄下讀取以.conf為后綴的所有文件

2.

:屬性, 比較操作符, “值” 保存位置

屬性包括以下內容

fromhost 哪個主機名發過來的

fromhost-ip 哪個ip發過來的

msg 從日志信息里的內容判斷

hostname 從日志中的主機名判斷

比較操作符包括以下內容

contains 包含

isequal 等於

startswith 以...開頭

原文鏈接:https://blog.csdn.net/xiayun1995/java/article/details/83962934

那我們就在日志服務器/etc/rsyslog.d/寫入一個叫192.168.30.1.conf的文件

:fromhost-ip, isequal, "192.168.30.1" /var/log/cclient/192,168.30.1.log

接下在客戶端下進行一個簡單日志操作

logger "12222222222222222222222222222222222222222"

查看服務端文件

[root@localhost cclient]# cat 192,168.30.1.log

Jul  4 17:19:18 localhost root: 12222222222222222222222222222222222222222

日志同步成功


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM