Назад | Перейти на главную страницу

Пропущенные сообщения ядра

На сервере CentOS 7.2 я пытаюсь сбросить трассировку стека ядра, используя echo t> / proc / sysrq-trigger. Некоторые трассировки стека не регистрируются. Я вижу следующую ошибку в / var / log / messages.

5 июля, 13:54:51 журнал glusterfs1: пропущено 14295 сообщений ядра.

Кажется, что некоторые записи теряются. Мне нужно найти подходящие трассировки стека с этого сервера. Подскажите, пожалуйста, что нужно сделать, чтобы не пропустить сообщения ядра.

Journald регистрирует почти все и копирует информацию в rsyslog через сокет. У этого сокета максимальная пропускная способность.

Если вам это нравится, вы можете перекомпилировать его из исходного кода, как "объяснено" здесь.

https://cgit.freedesktop.org/systemd/systemd/commit/?id=5e8b767df6e18444d5aff2987b5e5603361ed528

Но вы также можете ограничить объем данных, отправляемых через сокет, через journald.conf в / etc / systemd.

с возможностью

MaxLevelSyslog =

по умолчанию используется отладка, что означает, что все отправляется в rsyslog. Но исторически системный журнал настроен на вывод только сообщения с предупреждением и большей важностью. Таким образом, вы можете настроить journald так, чтобы в syslog отправлялись только предупреждения и журнал большей важности, это поможет практически при любой настройке. Вы по-прежнему сможете просматривать уведомления, информацию и журнал отладки с помощью команды journalctl, но до тех пор, пока вам не придется копаться в проблеме, эти журналы не имеют большого значения.

MaxLevelSyslog = предупреждение

не забудьте перезапустить службу journald после внесения любых изменений в journald.conf

systemctl перезапуск systemd-journald

Другое упомянутое решение - заставить rsyslog читать файл journald вместо того, чтобы его лавировать через сокет. Но я не нашел никакой полезной информации о том, как добиться такого поведения.

К вашему сведению: уровень системного журнала (также уважаемый journald)

0 всплывающих
1 предупреждение
2 крита
3 ошибка
4 предупреждение
5 уведомление
6 информация
7 отладка

Проблема с конфигурацией journalctl. Попробуй изменить /etc/systemd/journald.conf содержание в

[Journal]
Compress=yes
ForwardToConsole=no
ForwardToKMsg=no
ForwardToSyslog=no
ForwardToWall=no
MaxFileSec=1h
MaxRetentionSec=1month
RateLimitIntervalSec=0
RateLimitBurst=0
Seal=yes
SplitMode=uid
Storage=persistent
SyncIntervalSec=20
SystemMaxUse=1G
RuntimeMaxUse=1G

И перезапустите systemd-journald.