用 syslog ng 記錄外部裝置日誌

2021-04-27 04:21:56 字數 1028 閱讀 3454

環境:

ubuntu server 8.04

原因:以前用系統自帶的 syslog 記錄外部裝置日誌,有以下缺陷

1、由於每日生成多個日誌檔案,日誌檔名中不能包含日期,提取十分不便。

2、裝置以 local7 傳送過來的日誌在 syslog 和 messages 中亦記錄,採取遮蔽措施後,雖然不記錄了,但 syslog 和 messages 亦不再記錄本機產生的日誌。

方法:1、安裝 syslog-ng

sudo apt-get install syslog-ng

在安裝時,會提示刪除 syslog 和 klog,沒有關係,同意即可。

2、修改 syslog-ng 配置檔案

/etc/syslog-ng/syslog-ng.conf

在 sources 段中加入

# nsisg1000 source

source s_nsisg1000 ;

在 destinations 段中加入指令,按照年月日生成資料夾方便管理。按照小時生成日誌檔案,防止日誌檔案大小超過檔案系統的限制。

destination df_nsisg1000 ;

在 logs 段中加入,一定要放在 log 段的最前面,否則如果裝置日誌符合其它 log 條件的話,會記錄在其它日誌檔案中,並且不再向下個 log 條件傳遞,將導致裝置日誌變相丟失。

# nsisg1000

log ;

修改完後,重新啟動 syslog-ng

sudo /etc/init.d/syslog-ng restart

3、壓縮和刪除日誌

在 /etc/cron.daily 中建立計畫檔案 nsisg1000

sudo touch nsisg1000

sudo chmod 755 nsisg1000

內容如下:

#! /bin/sh

gzip /var/log/nsisg1000/`date -d yesterday +%y.%m.%d`/*.log

它會把前一天的日誌檔案壓縮並刪除壓縮前的巨大日誌檔案。

掛載外部裝置

可以掛載光碟 硬碟 磁帶 光碟映象檔案等 1 掛在光碟機 建立乙個目錄用來進行掛載 mkdir mnt cdrom 將裝置 dev cdrom 掛載到該掛載點 mnt cdrom 上 mount t iso9660 o ro dev cdrom mnt cdrom 2 掛載光碟映象檔案 iso 檔案...

主機和外部裝置的資訊交換

主機和外設的連線方式 1.輻射式 不易擴充套件 現在 2 匯流排式 3 通道式 並行能力提高 直接程式傳送方式 用i o指令變成實現資訊傳送。1 外設狀態 空閒,工作,結束。優缺點 硬體開銷小 實時處理能力差,並行程度低。cpu效率要求不高的場合,或診斷 除錯過程中。微程式時序安排 同步控制,用同一...

使用WCF構建沙箱模型虛擬外部裝置

專案背景 在多系統整合的專案中,有許多資料時即從第三方獲得的,而且可能是即時資料。筆者在相關專案中,通過構建沙箱模型,來虛擬第三方傳送給目標系統的裝置 軟體系統或硬體裝置 關於沙箱 本系統中的沙箱,使用wcf服務構建乙個推送資料的模型。在這個模型中我們將推送資料的服務虛擬化成推送裝置 比如說定位裝置...