Portál AbcLinuxu, 5. června 2024 20:53


Dotaz: rsyslog - logování do databáze mimo localhost události

Petr Maleček avatar 3.9.2020 10:58 Petr Maleček | skóre: 28 | Plzeň - Bolevec
rsyslog - logování do databáze mimo localhost události
Přečteno: 230×
Odpovědět | Admin
Ahoj, řeším tu problém, potřebuji vytvořit logovací server, na který budou logovat všechna zařízení v naší síti. Zvolil jsem tedy rsyslog, napojil na databázi, to vše funguje. Jen mám problém v tom, že se do databáze vkládají i události z localhostu, které tam nepotřebuji/nechci.

Lze nějak zajistit, aby logování lokálních událostí probíhalo do souboru a logování událostí ze vzdálených zařízení vkládat čistě do databáze?

Vytvořil jsem tohle "pravidlo":
-rsyslog-server
*.warning;*.error;*.critical    :oomysql:10.1.31.39,rsyslog,rsyslog,heslododb
& stop
kde název serveru je rsyslog-server (i tak se hlásí v databázi), takže jsem očekával, že toto pravidlo bude fungovat pro všechny krom localhostu. Aktuálně se mi stále loguje vše, včetně localhostu.

Nějaké popíchnutí, jakým směrem se vydat? :-)

Děkuji.
LinMuck, WinFuck :-P

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

3.9.2020 12:12 z_sk | skóre: 34 | blog: analyzy
Rozbalit Rozbalit vše Re: rsyslog - logování do databáze mimo localhost události
Odpovědět | | Sbalit | Link | Blokovat | Admin
https://serverfault.com/questions/955012/rsyslog-separate-local-and-remote-logs
debian.plus@protonmail.com
Řešení 1× (Petr Maleček (tazatel))
Petr Maleček avatar 3.9.2020 12:50 Petr Maleček | skóre: 28 | Plzeň - Bolevec
Rozbalit Rozbalit vše Re: rsyslog - logování do databáze mimo localhost události
Díky za nakopnutí, nakonec jsem to vyřešil trošku jinak, skrze šablony:
# module load
$ModLoad ommysql

# templates
$template LogToFile,"/var/log/messages"
$template LogToSQL,"insert into SystemEvents (Message, Facility, FromHost, Priority, DeviceReportedTime, ReceivedAt, InfoUnitID, SysLogTag) values ('%msg%', %syslogfacility%, '%HOSTNAME%', %syslogpriority%, '%timereported:::date-mysql%', '%timegenerated:::date-mysql%', %iut%, '%syslogtag%')",sql

# rules
if $hostname == "rsyslog-server" then {
    *.* ?LogToFile
}
else {
    *.* >10.1.31.XXX,rsyslog,rsyslog,hesloserveru;LogToSQL
}

LinMuck, WinFuck :-P

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.