Puncte:0

Problemă cu rsyslog care creează mai multe fișiere jurnal de la un comutator Cisco la distanță

drapel cn

Deci, aici este configurația noastră

Server: server rsyslog - CentOS 7

Client: Cisco Catalyst C6880-X-LE

/etc/rsyslog.conf de pe serverul CentOS 7:

$ModLoad imuxsock # oferă suport pentru înregistrarea în sistem local (de exemplu, prin comanda logger)
$ModLoad imjurnal # oferă acces la jurnalul systemd

$template TmplAuth, „/var/log/client_logs/%HOSTNAME%/%PROGRAMNAME%.log”
$template TmplMsg, „/var/log/client_logs/%HOSTNAME%/%PROGRAMNAME%.log”
authpriv.* ?TmplAuth
*.info;mail.none;authpriv.none;cron.none ?TmplMsg
$ModLoad imudp
$UDPServerRun 514
$ModLoad imtcp
$InputTCPServerRun 514
$WorkDirectory /var/lib/rsyslog
$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat
$IncludeConfig /etc/rsyslog.d/*.conf
$OmitLocalLogging activat
$IMJournalStateFile imjournal.state
*.info;mail.none;authpriv.none;cron.none /var/log/messages
authpriv.* /var/log/secure
mail.* -/var/log/maillog
cron.* /var/log/cron
*.emerg :omusrmsg:*
uucp,news.crit /var/log/spooler
local7.* /var/log/boot.log

Din anumite motive în /var/log/client_logs folder, jurnalele Cisco creează un nou fișier .log de fiecare dată când este generat un nou mesaj de jurnal pe comutator. Acest lucru, evident, nu este ideal și vreau ca rsyslog să pună toate jurnalele într-un singur fișier și plănuiesc să las logrotate să se ocupe de crearea unui nou fișier jurnal în fiecare zi.

Iată un exemplu de ceea ce văd în /var/log/client_logs director

-rw------- 1 rădăcină rădăcină 184 Oct 13 14:30 156598.log
-rw------- 1 rădăcină rădăcină 164 Oct 13 14:30 156599.log
-rw------- 1 rădăcină rădăcină 186 Oct 13 14:30 156600.log
-rw------- 1 rădăcină rădăcină 162 Oct 13 14:30 156601.log
-rw------- 1 rădăcină rădăcină 184 Oct 13 14:30 156602.log
-rw------- 1 rădăcină rădăcină 164 Oct 13 14:35 156603.log
-rw------- 1 rădăcină rădăcină 186 Oct 13 14:35 156604.log
-rw------- 1 rădăcină rădăcină 162 Oct 13 14:35 156605.log
-rw------- 1 rădăcină rădăcină 184 Oct 13 14:35 156606.log
-rw------- 1 rădăcină rădăcină 164 Oct 13 14:35 156607.log
-rw------- 1 rădăcină rădăcină 186 Oct 13 14:35 156608.log
-rw------- 1 rădăcină rădăcină 162 Oct 13 14:35 156609.log
-rw------- 1 rădăcină rădăcină 184 Oct 13 14:35 156610.log
-rw------- 1 rădăcină rădăcină 162 Oct 13 14:39 156611.log
-rw------- 1 rădăcină rădăcină 164 Oct 13 14:41 156612.log
-rw------- 1 rădăcină rădăcină 186 Oct 13 14:41 156613.log
-rw------- 1 rădăcină rădăcină 162 Oct 13 14:41 156614.log
-rw------- 1 rădăcină rădăcină 184 Oct 13 14:41 156615.log

Și acest lucru continuă pentru totdeauna, având în vedere că se creează un .log pentru fiecare mesaj nou trimis de la comutatorul Cisco. Iată un exemplu de conținut al unuia dintre aceste fișiere jurnal

2021-10-13T14:41:10.866435-07:00 X 156613: X-Switch: .Oct 13 13:40:44 PST: %LINEPROTO-SW1-5-UPDOWN: Protocol de linie pe interfața GigabitEthernet1915/1/0/1911 , a schimbat starea în jos

Nu sunt sigur dacă problema este cu configurația de pe comutatorul Cisco sau configurația mea rsyslog, dar am mai făcut acest lucru înainte și nu am avut niciodată probleme cu crearea de noi fișiere .log pentru fiecare mesaj trimis către server.

Iată configurația de pe partea switch-ului Cisco

Switch1#show run | include logare
înregistrarea informațiilor despre utilizator
logging reîncărcare depanare
starea legăturii evenimentului de înregistrare implicită
înregistrarea numelui de gazdă ID-ul originii
gazdă de înregistrare 10.1.1.1
 logare sincronă
 logare sincronă

FYI gazdă de logare declarația este adresa IP a serverului CentOS 7 rsyslog. Toate celelalte jurnale care sunt capturate de la alte gazde sunt în regulă și nu creează noi fișiere .log pentru fiecare mesaj primit, dar celelalte sisteme care trimit jurnalele nu sunt switch-uri Cisco, toate sunt diferite variante de Linux (în primul rând CentOS și RHEL).

Aveți idee de ce rsyslog creează noi fișiere .log pentru fiecare mesaj pe care îl primește de la acest comutator Cisco Catalyst?

Puncte:1
drapel vn

Urmează un exemplu de mesaj:

2021-10-13T14:41:10.866435-07:00 X 156613: X-Switch: .Oct 13 13:40:44 PST: %LINEPROTO-SW1-5-UPDOWN: Protocol de linie pe interfața GigabitEthernet1915/1/0/1911 , a schimbat starea în jos

Se pare că PROGRAMNAME indică numărul care este incrementat cu unul cu fiecare mesaj, în acest caz specific 156613:

$template TmplAuth, „/var/log/client_logs/%HOSTNAME%/%PROGRAMNAME%.log”

Deci configurația de mai sus pare corectă. Cauza principală este probabil PROGRAMNAME care este incrementată în mesaj.

Richie086 avatar
drapel cn
Foarte frumos! care a făcut smecheria. Bine ați venit la Stack Exchange!

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.