Комментарии 28
Если очень популярные прикладные продукты — то в /var/log/app/
Если не очень популярные, или еще не уверены — в app/log/
/var/log/'название вашего приложения'/и т.д.
~/.my_app/log/
Компилируем, запускаем
#include <syslog.h>
int main() {
syslog(LOG_USER | LOG_EMERG,"hello_syslog_emergency");
syslog(LOG_USER | LOG_ALERT,"hello_syslog_alerts");
syslog(LOG_USER | LOG_CRIT,"hello_syslog_critical");
syslog(LOG_USER | LOG_ERR,"hello_syslog_errors");
syslog(LOG_USER | LOG_WARNING,"hello_syslog_warning");
syslog(LOG_USER | LOG_NOTICE,"hello_syslog_notice");
syslog(LOG_USER | LOG_INFO,"hello_syslog_info");
syslog(LOG_USER | LOG_DEBUG,"hello_syslog_debug");
}
запускаем
journald
нажимаем End, любуемся
Неотключенные, сэр… И /var/spool/abrtd, если мне не изменяет память.
P.S. коллеги, не забывайте настраивать logrotate. Это правда очень важно, когда надо быстро разобрать инцидент.
Причину kernel palic можно узнать двумя способами:
- увидеть на консоли, если запретить перезагрузку после kernel panic (sysctl kernel.panic=0)
- настроить отправку сообщения по сети на какой-нибудь сервер (гуглить netconsole)
При втором способе ядро посылает предсмертное сообщение по udp на указанный вами адрес.
На сервере-источнике нужно будет подгрузить модуль ядра с нужными параметрами.
А на сервере-приемнике нужно заранее запустить что-нибудь, постоянно слушающее udp порт.
Самый простой вариант — nc в режиме сервера (nc -u -l 6666).
Более надежный — настроить syslog сервер слушать в raw режиме udp порт и записывать все, что туда
приходит.
tail -f /var/log/syslog | ccze -A
Также для этих целей сгодится редактор vim
Простите, vim для просмотра логов?
А если у Вас лог в несколько гигабайт(про ротацию логов не стоит сейчас пожалуйста). Вы все еще используете vim для просмотра логов? Тогда мы идем к вам…
Лог файлы Linux по порядку