Câu hỏi bộ lọc rsyslog theo thẻ


Tôi muốn tạo một tập tin cấu hình rsyslogd lọc syslog cho thẻ cụ thể và xuất ra thẻ này cho một tập tin cụ thể.

Tôi tạo một tập tin quy tắc theo /etc/rsyslog.d

# Log kernel generated UFW log messages to file
:syslogtag, isequal, "ABC" /var/log/ABC.log

# Uncomment the following to stop logging anything that matches the last rule.
# Doing this will stop logging kernel generated UFW log messages to the file
# normally containing kern.* messages (eg, /var/log/kern.log)
#& ~

Các tập tin được tạo ra, tuy nhiên các tin nhắn với thẻ ABC vẫn đi đến syslog tập tin. Làm thế nào để tôi làm điều đó một cách chính xác?


4
2017-07-11 08:39


gốc


Hãy chắc chắn rằng /etc/rsyslog.conf contains> $ IncludeConfig /etc/rsyslog.d/* Nếu không thêm nó, không có nó, dịch vụ sẽ không đọc cấu hình được thêm vào thư mục /etc/rsyslog.d/. Nếu đó là hiện tại thì hãy thử thêm quy tắc trực tiếp vào rsyslog.conf tập tin. - Bruno Pereira
nó đã chứa nó rồi. Tôi nghĩ rằng tôi có một vấn đề với quy tắc tôi tuyên bố, không phải là sự không bao gồm nó. (tệp được tạo) - Mellowcandle
Đúng, bạn đúng về điều đó. - Bruno Pereira


Các câu trả lời:


Tệp quy tắc của bạn sẽ trông giống như sau:

:syslogtag, isequal, "ABC:" /var/log/ABC.log

Thẻ syslogtag chứa một : và nên được đính kèm trong "".

Ngoài ra, tên tệp phải là trước 50-default.conf theo thứ tự bảng chữ cái (ví dụ 30-ABC.conf).

Lưu ý rằng tệp /var/log/ABC.log nên được ghi bởi người dùng 'syslog'.

Nguồn: làm thế nào để filer rsyslog tin nhắn bằng thẻ.


4
2017-07-11 12:03