Получение Системного журнала передает с systemd Дугой Linux

Файлы загружаются в /var/cache/apt/archives/ вместе с другими загруженными deb пакетами. Убрать эту выполненную папку apt-get clean как корень.

25
23.09.2017, 23:16
6 ответов

Таким образом, существует что-то вроде разрыва здесь.

Systemd действительно поддерживает удаленный обмен сообщениями через systemd-journal-gateway компонент. Это сказанное эти сообщения не находится в формате системного журнала. Системный журнал (как формат) является ратифицированным spefication IETF, зарегистрированным в RFC 5424 (который удержал от использования предыдущую версию, RFC 3164).

Больше запутанности того, чтобы заставлять их играть приятно вместе документируется здесь:

http://www.freedesktop.org/wiki/Software/systemd/syslog/

и здесь (человек systemd-journald.service)

   systemd-journald is a system service that collects and stores logging data.
   It creates and maintains structured, indexed journals based on logging
   information that is received from the kernel, from user processes via the
   libc syslog(3) call, from STDOUT/STDERR of system services or via its native
   API. It will implicitly collect numerous meta data fields for each log
   messages in a secure and unfakeable way. See systemd.journal-fields(7) for
   more information about the collected meta data.

Таким образом, удостоверьтесь, что сообщения отправляются от системного-журнала-ng до STDOUT, и вещи должны закончиться в журнале.

В развитии этого немного больше я нашел это также:

https://github.com/intgr/pg_journal/blob/master/doc/pg_journal.md

Где кто-то пишет привязку от PostgreSQL до systemd для входа. В этом они в настоящее время цитируют это (по состоянию на время того файла, 2013/06), многострочные сообщения не поддерживаются в systemd, поэтому не упустите это также.

3
27.01.2020, 19:40
[1120158]Я не знаю дистрибутива Arch. У меня есть Fedora 20 (включая systemd) и я настроил его на прием удаленных сообщений syslog.[12182]IMHO, эта функциональность не связана с systemd. Сервис systemd-journald.service перемещается между программами ядра/пространства пользователя и подсистемой syslog. Он захватывает (я думаю) только локальные сообщения из этих источников в свою журнальную базу данных, а затем перенаправляет их в syslog. Смотрите, например, "man systemd-journald.service" (по крайней мере, на Fedora).[12183]В моем случае я включаю это, конфигурируя опциональный "TCP модуль-приемник syslog" в /etc/rsyslog.conf, т.е.[12184]UDP-модуль также доступен.[12185]Также необходимо добавить (r)syslog-правила, чтобы направить вывод в нужные файлы. Полную документацию смотрите: [1120735]http://www.rsyslog.com/doc/[12186]HTH.[1120169]
2
27.01.2020, 19:40

Вы можете довольно легко написать сервер системного журнала для бедняков с помощью socat . Вам просто нужен сервисный модуль вроде этого:

[Service]
Restart=on-success
ExecStart=/usr/bin/socat -u UDP-RECV:514 STDOUT

Он будет слепо отправлять все, что получено через сервисный порт syslog, в журнал systemd. Сохраните приведенное выше, скажем, /etc/systemd/system/syslog.service , а затем

# systemctl daemon-reload
# systemctl start syslog

. Затем вам просто понадобится ваш источник для отправки сообщений на UDP-порт 514 на вашем слушающем сервере.

Вы можете улучшить это, чтобы на самом деле анализировать полученные данные и форматировать их, но в этом нет необходимости, если все, что вы хотите делать, это записывать полученные данные.

( socat находится в репозитории Arch Linux Extra : pacman -S socat )

11
27.01.2020, 19:40

syslog-ng и журнал systemd

Из syslog-ng

Начиная с syslog-ng версии 3.6.1, исходный код system () по умолчанию в системах Linux, использующих systemd, использует journald в качестве стандартного источника system () .

Если вы хотите использовать файлы journald и syslog-ng, убедитесь, что действуют следующие настройки. Для systemd-journald в файле /etc/systemd/journald.conf Storage = либо установлено значение auto, либо unset (по умолчанию установлено auto), а ForwardToSyslog = установлено no или не установлено (по умолчанию no). Для /etc/syslog-ng/syslog-ng.conf вам понадобится следующий раздел исходного кода:

 source src {
   system();
   internal();
 };

Если, с другой стороны, вы не хотите сохранять журналы журнала, а только текстовые журналы syslog-ng, установите Storage = volatile и ForwardToSyslog = yes в /etc/systemd/journald.conf . Это сохранит журнал в оперативной памяти. Начиная с syslog-ng 3.6.3, syslog-ng использует journald в качестве источника system () , поэтому, если вы установите Storage = none, журнал systemd будет отбрасывать все сообщения и не пересылать их в syslog-ng. .

После изменения перезапустите демоны systemd-journald.service и syslog-ng.service .

0
27.01.2020, 19:40

Я установил syslog-ng и смог получать сообщения журнала системного журнала. Но я действительно хотел получать сообщения журнала системного журнала, а затем напишите указанное сообщение в journald. Мне не удалось найти способ настроить syslog-ng для записи сообщений удаленного системного журнала в journald.

Итак, я написал утилиту для этого.

https://github.com/advantageous/rsyslog-journald-repeater

./rsyslog-journald-repeater -h
Usage of ./rsyslog-journald-repeater:
-debug
    debug flag
-host string
    hostname to listen on (default "0.0.0.0")
-port int
    port to listen on (default 5514 on darwin, default 514 on Linux, Unix, etc.)

Файлы сборки и инструкции для тестирования, а также образцы файлов модулей systemd включены в проект. Наслаждаться!

2
27.01.2020, 19:40

Существует простое обходное решение , которое менее хакерское, чем решение @starfry, которое по-прежнему является реальным решением , так как все материалы попадут в журнал.

Вы можете просто установить подходящий сервер системного журнала с поддержкой UDP :514/TCP :514. Мой любимый — rsyslog, который есть только в AUR, а syslog-ng— в основных репозиториях. Этот демон будет просто получать события системного журнала из сети и хранить их в локальных текстовых файлах.

Точная конфигурация для чтения из сокета (s )остается на усмотрение внимательного читателя (RTFM ).

1
01.03.2020, 17:14

Теги

Похожие вопросы