新聞中心
如果你的數(shù)據(jù)中心全是 linux 服務(wù)器,而你就是系統(tǒng)管理員。那么你的其中一項(xiàng)工作內(nèi)容就是查看服務(wù)器的日志文件。但是,如果你在大量的機(jī)器上去查看日志文件,那么意味著你需要挨個(gè)去登入到機(jī)器中來(lái)閱讀日志文件。如果你管理的機(jī)器很多,僅這項(xiàng)工作就可以花費(fèi)你一天的時(shí)間。

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了湘東免費(fèi)建站歡迎大家使用!
另外的選擇是,你可以配置一臺(tái)單獨(dú)的 Linux 機(jī)器去收集這些日志。這將使你的每日工作更加高效。要實(shí)現(xiàn)這個(gè)目的,有很多的不同系統(tǒng)可供你選擇,而 syslog-ng 就是其中之一。
syslog-ng 的不足是文檔并不容易梳理。但是,我已經(jīng)解決了這個(gè)問(wèn)題,我可以通過(guò)這種方法馬上進(jìn)行安裝和配置 syslog-ng。下面我將在 Ubuntu Server 16.04 上示范這兩種方法:
- UBUNTUSERVERVM 的 IP 地址是 192.168.1.118 ,將配置為日志收集器
- UBUNTUSERVERVM2 將配置為一個(gè)客戶端,發(fā)送日志文件到收集器
現(xiàn)在我們來(lái)開始安裝和配置。
安裝
安裝很簡(jiǎn)單。為了盡可能容易,我將從標(biāo)準(zhǔn)倉(cāng)庫(kù)安裝。打開一個(gè)終端窗口,運(yùn)行如下命令:
sudo apt install syslog-ng
你必須在收集器和客戶端的機(jī)器上都要運(yùn)行上面的命令。安裝完成之后,你將開始配置。
配置收集器
現(xiàn)在,我們開始日志收集器的配置。它的配置文件是 /etc/syslog-ng/syslog-ng.conf。syslog-ng 安裝完成時(shí)就已經(jīng)包含了一個(gè)配置文件。我們不使用這個(gè)默認(rèn)的配置文件,可以使用 mv /etc/syslog-ng/syslog-ng.conf /etc/syslog-ng/syslog-ng.conf.BAK 將這個(gè)自帶的默認(rèn)配置文件重命名?,F(xiàn)在使用 sudo nano /etc/syslog/syslog-ng.conf 命令創(chuàng)建一個(gè)新的配置文件。在這個(gè)文件中添加如下的行:
@version: 3.5
@include "scl.conf"
@include "`scl-root`/system/tty10.conf"
options {
time-reap(30);
mark-freq(10);
keep-hostname(yes);
};
source s_local { system(); internal(); };
source s_network {
syslog(transport(tcp) port(514));
};
destination d_local {
file("/var/log/syslog-ng/messages_${HOST}"); };
destination d_logs {
file(
"/var/log/syslog-ng/logs.txt"
owner("root")
group("root")
perm(0777)
); };
log { source(s_local); source(s_network); destination(d_logs); };
需要注意的是,syslog-ng 使用 514 端口,你需要確保在你的網(wǎng)絡(luò)上它可以被訪問(wèn)。
保存并關(guān)閉這個(gè)文件。上面的配置將轉(zhuǎn)存期望的日志文件(由 system() 和 internal() 指出)到 /var/log/syslog-ng/logs.txt 中。因此,你需要使用如下的命令去創(chuàng)建所需的目錄和文件:
sudo mkdir /var/log/syslog-ng
sudo touch /var/log/syslog-ng/logs.txt
使用如下的命令啟動(dòng)和啟用 syslog-ng:
sudo systemctl start syslog-ng
sudo systemctl enable syslog-ng
配置客戶端
我們將在客戶端上做同樣的事情(移動(dòng)默認(rèn)配置文件并創(chuàng)建新配置文件)。拷貝下列文本到新的客戶端配置文件中:
@version: 3.5
@include "scl.conf"
@include "`scl-root`/system/tty10.conf"
source s_local { system(); internal(); };
destination d_syslog_tcp {
syslog("192.168.1.118" transport("tcp") port(514)); };
log { source(s_local);destination(d_syslog_tcp); };
請(qǐng)注意:請(qǐng)將 IP 地址修改為收集器的 IP 地址。
保存和關(guān)閉這個(gè)文件。與在配置為收集器的機(jī)器上一樣的方法啟動(dòng)和啟用 syslog-ng。
查看日志文件
回到你的配置為收集器的服務(wù)器上,運(yùn)行這個(gè)命令 sudo tail -f /var/log/syslog-ng/logs.txt。你將看到包含了收集器和客戶端的日志條目的輸出(圖 A)。
恭喜你!syslog-ng 已經(jīng)正常工作了。你現(xiàn)在可以登入到你的收集器上查看本地機(jī)器和遠(yuǎn)程客戶端的日志了。如果你的數(shù)據(jù)中心有很多 Linux 服務(wù)器,在每臺(tái)服務(wù)器上都安裝上 syslog-ng 并配置它們作為客戶端發(fā)送日志到收集器,這樣你就不需要登入到每個(gè)機(jī)器去查看它們的日志了。
新聞標(biāo)題:如何使用syslog-ng從遠(yuǎn)程Linux機(jī)器上收集日志
標(biāo)題網(wǎng)址:http://www.dlmjj.cn/article/dpijsic.html


咨詢
建站咨詢
