Uz mi dosly nervy a udelal jsem to jinak.
Prestal jsem se snazit zprovoznit reseni, kdy syslog-ng cte z journal,
coz, jak jsem si myslel, by melo fungovat defaultne a samo po instalaci.
Misto toho posilam zpravy z journald pres socket do syslog-ng. Je to
sice nedoporucovany zpusob [1], ale zatim vypada, ze funguje.
Nastaveni popisuji nize. Stejne by me ale zajimalo, jestli se s timto
problemem nekdo setkal a dokazal by poradit jak ho vyresit / zdebugovat.
Postupoval jsem podle [2]:
1) v /etc/syslog-ng/syslog-ng.conf nahradit source:
misto
source s_src {
system();
internal();
}
pouzit
source s_src {
systemd-syslog();
file("/proc/kmsg" program-override("kernel") flags(kernel));
internal();
}
prvni radek zajisti cteni ze socketu, kam posila data journald [1]
druhy radek cte logy kernelu [3]
treti radek cte logy samotneho syslog-ng
2) nastavit, aby se pri spusteni syslog-ng vytvoril socket pro
komunikaci journald -> syslog-ng
* jedna se o socket /run/systemd/journal/syslog definovany v
/lib/systemd/system/syslog.socket
* /etc/systemd/system/syslog.service byl symlink do
/lib/systemd/system/syslog-ng.service
* symlink jsem smazal a nakopiroval jsem
/lib/systemd/system/syslog-ng.service do
/etc/systemd/system/syslog-ng.service
* v /etc/systemd/system/ jsem udelal symlink syslog.service ->
syslog-ng.service
* v /etc/systemd/system/syslog-ng.service jsem pridal
** "Alias=syslog.service" do Install sekce
** "Requires=syslog.socket" do Unit sekce
3) pro jistotu jeste explicitne nastavit journald:
v /etc/systemd/journald.conf
Storage=persistent
ForwardToSyslog=yes
4) vytazeni zprav z journalu pro zmergovani do souboru ve /var/log podle [4]
journalctl SYSLOG_FACILITY=0 > kern.log
journalctl SYSLOG_FACILITY=1 > user.log
journalctl SYSLOG_FACILITY=2 > mail.log
journalctl SYSLOG_FACILITY=3 > daemon.log
journalctl SYSLOG_FACILITY=4 > auth.log
journalctl SYSLOG_FACILITY=9 > cron.log
5) reload
systemctl daemon-reload
systemctl restart systemd-jourlad.service
systemctl restart syslog-ng.service
[1]
https://www.balabit.com/documents/syslog-ng-ose-latest-guides/en/syslog-ng-…
[2]
https://bbs.archlinux.org/viewtopic.php?id=220492
[3]
https://www.balabit.com/documents/syslog-ng-ose-latest-guides/en/syslog-ng-…
[4]
https://unix.stackexchange.com/questions/189647/pulling-log-messages-for-a-…
Dne 20.12.2017 v 21:06 Tomáš Jelínek napsal(a):
Ahoj,
upgradoval jsem VPS z Debianu 8 na Debian 9 a po restartu jsem zjistil,
ze se mi prestalo logovat do nasledujicich souboru ve /var/log:
auth.log
cron.log
daemon.log
kern.log
mail.log
messages
syslog
Kdyz spustim 'journalctl', tak tam vsechny zpravy, ktere se puvodne
logovaly do tech souboru, vidim. Vypada to, ze logy se dostavaji do
systemd, ale uz ne do syslogu. Ja ale potrebuju logovat do tech souboru,
abych je mohl parsovat (munin, awstats, atd.).
Prosel jsem vsechny configy syslog-ng, ktere jsem nasel, a nemam tam
zadne zmeny oproti tomu, co je v balicich.
Google mi nepomohl, zkusil jsem navod
https://wiki.archlinux.org/index.php/syslog-ng#syslog-ng_and_systemd_journal
a to postupne obe dve varianty, ale nepozoroval jsem zadnou zmenu.
Ve /var/log/syslog vidim toto:
WARNING: Default value changed for the prefix() option of
systemd-journal source in syslog-ng 3.8; old_value='',
new_value='.journald.'
ale k nicemu me to nedovedlo.
Jedina vec, co se mi loguje, jsou zpravy o nastartovani a ukonceni
syslog-ng ve /var/log/syslog a /var/log/messages:
Dec 20 18:48:12 vps syslog-ng[8169]: syslog-ng shutting down;
version='3.8.1'
Dec 20 18:48:40 vps syslog-ng[8204]: syslog-ng starting up; version='3.8.1'
Prosim poradte.
Diky,
Tomas
_______________________________________________
Community-list mailing list
Community-list(a)lists.vpsfree.cz
http://lists.vpsfree.cz/listinfo/community-list