Linux rsyslog和過濾規則

2021-10-25 17:14:37 字數 1780 閱讀 7173

vim /etc/rsyslog.conf
$includeconfig /etc/rsyslog.d/*.conf
個人建議,將所有的rule都配置在該目錄下,在/etc/rsyslog.conf中不寫rule

modules :模組

global drictives :全域性設定

rules:規則

$msg

if$msg contains '%asa-' and $syslogseverity

<=

'6'then

任何rsyslog生成的日誌都可以根據需要使用模板進行格式化,要建立模板,使用如下指令

$template template_name,"text %property% more text", [option]
這裡的$template指令表明了接下來的內容定義了乙個模板,template_name是模板的名稱,接下來雙引號之間的內容為模板的內容。

這裡還有乙個 option , 它指定了模板的功能,支援選項為sql和stdsql,在使用資料庫儲存的時候會用到。
模板可以用來生成動態檔名,就如之前所述,在使用動態檔名的時候,需要在 action 中的模板名稱前增加?表明該檔名是動態生成的。

例如:

$template dynamicfile,"/var/log/test_logs/%timegenerated%-test.log"

*.* ?dynamicfile

timegenerated屬性從日誌資訊中提取出訊息的時間戳,這樣可以為每個日誌生成唯一檔名稱。

以下是一些簡單屬性的示例:

以下屬性獲取系統日誌訊息的整個訊息文字:

%msg%
以下屬性獲取系統日誌訊息的訊息文字的前兩個字元:

%msg:1:2%
以下屬性獲取系統日誌訊息的整個訊息文字,並刪除其最後乙個換行符:

%msg ::: drop-last-lf%
以下屬性獲取接收到syslog訊息時生成的時間戳的前10個字元,並根據rfc 3999日期標準對其進行格式化。

%timegenic:1:10:date-rfc3339%
#  %syslogpriority-text% : syslog priority

# %syslogfacilityt-text% : syslog facility

# %timegenerated% : timestamp when the message was received

# %hostname% : hostname

# %syslogtag% : tag

# %msg% : the message sent to syslog

所有的屬性參考:

logrotate配置檔案

logrotate的配置檔案為/etc/logrotate.conf

自定義的log rotation配置檔案在/etc/logrotate.d目錄下

Linux rsyslog 轉存至日誌伺服器

1 客戶端 vim etc rsyslog.conf 在其中新增 192.168.66.250 wqsystemctl retart rsyslog 2 服務端 vim etc rsyslog.conf 修改 modload imudp udpserverrun 514 這個是允許rsyslog後台...

Vue過濾器 區域性和全域性過濾

什麼是過濾器?用來格式化資料的乙個函式 例如 10 price 日期的格式化 vue 1.x 版本借鑑了 angular 提供 10 個過濾器,包括有 日期 小數點位數保留 貨幣 大小寫 等 vue 2.x 廢棄了這 10個過濾器,但是它提供了自定義過濾器的方式 使用方式 全域性定義過濾器 p vu...

紋理取樣和過濾

在opengl和directx裡有紋理取樣函式vector4 sampler.texture2d float s,float t 用它可以取得對應紋理座標的紋理值 然而,並不知道這個函式的具體實現是怎麼樣的.事實上從影象讀取的紋理就是乙個陣列,類似這樣 cpp view plain copy img...