Apparence
Uubu.fr

Les systèmes Linux, l’open source, les réseaux, l’interopérabilité, etc.
« Il vaut mieux viser la perfection et la manquer que viser l’imperfection et l’atteindre. » (Bertrand Arthur William RUSSEL)
31 mars 2016

systemd Linux boot           initialisation du système


systemd-journal-remote

systemd-journal-remote

journaux sur le réseaux

   systemd-journal-remote est une commande pour recevoir les événements journaux et les stocker dans le journal. Les flux d'entrées sont au format export. Pour le transport sur le réseau, ce flux sérialisé est généralement transporté sur HTTPS.

Sources

   Les sources peuvent être soit actives ( systemd-journal-remote demande et pousse les données), ou passives (systemd-remote-journal attend une connexion puis reçoit les événements).

   systemd-journal-remote peut lire plus d'un flux à la fois. Il seront entrelacés dans le fichier de sortie. Dans le cas de connexions actives, chaque source est un flux, et dans le cas de connexions passives, chaque connexion peut résulter en un flux séparé. Les sockets peuvent être configurés en mode "accept" (seulement une connexion), ou "listen" ( plusieurs connexions).

   Quand il n'y a plus de connexions, et plus aucune ne peut être créée, systemd-journal-remote se termine.

   Les sources actives peuvent être spécifiées de la manière suivante:

- quand - est donné comme argument positionnel, les événements sont lus depuis d'entrée standard. Les autres arguments seront traités comme noms de fichier.
--url=ADDRESS Les événements sont récupérés en utilisant HTTP depuis ADDRESS. Cet url dervrait référer à la racine d'une instance systemd-journal-gatewayd.

   Les sources passives peuvent être spécifiées de la manière suivante:

--listen-raw=ADDRESS ADDRESS doit être une adresse utilisable pour ListenStream=.
--listen-http=ADDRESS, --listen-https=ADDRESS ADDRESS doit être soit un entier négatif, auquel cas il est interprété comme le numéro de descripteur de fichier, ou une adresse utilisable par ListenStream=. Dans le premier cas, le fd doit être hérité via $LISTEN_FDS/$LISTEN_PID. Dans le second cas, un serveur HTTP ou HTTPS sera lancé sur ce port.
$LISTEN_FDS systemd-journal-remote supporte le protocole $LISTEN_FDS/$LISTEN_PID. Les sockets ouverts hérités via l'activation socket se comportent comme ceux ouverts avec --listen-raw= décris plus haut, sauf s'il sont spécifiés pour lancer un serveur http(s).

Sinks

   L'emplacement du journal de sortie peut être spécifié avec -o out --output=. Pour les sources actives, cette options est requise.

--output=FILE Fichier journal à écrire. Le nom du fichier doit se terminer par .journal. Il sera créé s'il n'existe pas.
--output=DIR Créé les fichiers journaux sous le répertoire spécifié. Le répertoire doit exister.

   Si --output n'est pas utilisé, utilise /var/log/journal/remote. Dans le cas où le fichier de sortie n'est pas spécifié, les fichiers journaux seront créés dans le répertoire séléctionné. Les fichiers seront appelés remote-‹hostname›.journal. Dans le cas de sources active, le fichier de sortie doit toujours être donné explicitement.

OPTIONS

--split-mode (none ou host). Au départ, seul un fichier journal est utilisé. Pour la suite, un fichier séparé est utilisé, basé sur le nom d'hôte. Dans le cas de sources actives, le fichier de sortie doit toujours être donné explicitement et seul none est permis.
--compress, --no-compress Compresse les données dans le journal avec xz
--seal, --no-seal Signe périodiquement les données dans le journal en utilisant FSS
--getter=PROG --option1 --option2 Programme à invoquer pour récupérer les données. Le flux d'événements doit être généré sur la sortie standard (ex: --getter='curl "-HAccept: application/vnd.fdo.journal" https://some.host:19531/', ex: --getter='wget --header="Accept: application/vnd.fdo.journal" -O- https://some.host:19531/' )

Exemples

Copier les événements journaux locaux dans un répertoire différent
journalctl -o export | systemd-journal-remote -o /tmp/dir -
Récupérer les événements depuis systemd-journal-gatewayd et les stocker dans /var/log/journal/some.host/remote-some-host.journal
systemd-journal-remote --url http://some.host:19531/