Tous les produits
Search
Centre de documentation

Simple Log Service:Collecte des journaux systemd

Dernière mise à jour :Aug 18, 2026

Logtail collecte les journaux systemd de Linux à partir de fichiers binaires. Créez une configuration Logtail dans la console Log Service pour collecter ces journaux.

Prérequis

Logtail 0.16.18 ou version ultérieure pour Linux est installé sur votre serveur. Installer Logtail sur un serveur Linux.

Présentation

systemd est un gestionnaire de système et de services Linux. Lorsqu'il s'exécute en tant que PID 1, il démarre et maintient les services de l'espace utilisateur et gère de manière centralisée les journaux de toutes les unités, y compris les journaux du noyau et des applications. Le fichier de configuration se trouve généralement dans /etc/systemd/journald.conf.

Remarque

Le système d'exploitation doit prendre en charge le format de journalisation journal.

Fonctionnalités

  • Logtail enregistre automatiquement les points de contrôle, ce qui permet de reprendre la collecte après un redémarrage.

  • Filtrez les journaux par unités spécifiées.

  • Collectez les journaux du noyau.

  • Analysez automatiquement les niveaux de journalisation.

  • Collectez les journaux de l'hôte dans des environnements conteneurisés tels que Docker et Kubernetes.

Cas d'utilisation

  • Surveillez les événements du noyau et déclenchez automatiquement des alertes en cas d'anomalies.

  • Collectez tous les journaux système pour un stockage à long terme afin de réduire l'utilisation de l'espace disque.

  • Collectez les journaux de sortie des logiciels (unités) pour analyse ou alerte.

  • Recherchez des mots-clés ou des entrées dans les journaux plus rapidement qu'avec journalctl.

Procédure

  1. Connectez-vous à la console Simple Log Service.

  2. Dans la section Import Data, sélectionnez Custom Data Plug-in.

  3. Sélectionnez le projet et le Logstore de destination, puis cliquez sur Next.

  4. À l'étape Machine Group Configurations, configurez un groupe de machines.

    1. Configurez les paramètres Scenario et Installation Environment selon vos besoins.

      Important

      Vous devez configurer les paramètres Scenario et Installation Environment, qu'un groupe de machines soit disponible ou non. Les paramètres définis affectent les configurations ultérieures.

    2. Assurez-vous qu'un groupe de machines s'affiche dans la section Applied Server Groups, puis cliquez sur Next.

      Groupe de machines disponible

      Sélectionnez un groupe de machines dans la section Source Machine Group.

      image

      Aucun groupe de machines disponible

      Cliquez sur Create Machine Group. Dans le panneau Create Machine Group, configurez les paramètres. Vous pouvez définir le paramètre Machine Group Identifier sur IP Address ou Custom Identifier. Pour plus d'informations, consultez Créer un groupe de machines basé sur un identifiant personnalisé ou Créer un groupe de machines basé sur une adresse IP.

      Important

      Si vous appliquez un groupe de machines immédiatement après sa création, le statut heartbeat du groupe de machines peut être FAIL. Ce problème survient car le groupe de machines n'est pas connecté à Simple Log Service. Pour résoudre ce problème, cliquez sur Automatic Retry. Si le problème persiste, consultez Que faire si aucune connexion heartbeat n'est détectée sur Logtail ?

  5. Dans l'onglet Data Source Settings, définissez les paramètres Configuration Name et Plug-in Configuration, puis cliquez sur Next.

    • inputs est obligatoire et sert à configurer les paramètres de source de données pour la configuration Logtail.

      Important

      Vous ne pouvez spécifier qu'un seul type de source de données dans inputs.

    • processors est facultatif et sert à configurer les paramètres de traitement des données pour la configuration Logtail afin d'analyser les données. Vous pouvez spécifier une ou plusieurs méthodes de traitement.

      Si vos journaux ne peuvent pas être analysés uniquement avec le paramètre inputs, vous pouvez configurer des processeurs dans le champ Plug-in Configuration pour ajouter des plugins de traitement des données. Par exemple, extraire des champs, extraire l'heure du journal, masquer des données et filtrer les journaux. Pour plus d'informations, consultez Plugins Logtail pour le traitement des données.

    {
      "inputs": [
        {
          "detail": {
            "JournalPaths": [
              "/var/log/journal"
            ],
            "Kernel": true,
            "ParsePriority": true,
            "ParseSyslogFacility": true
          },
          "type": "service_journal"
        }
      ]
    }

    Paramètre

    Type

    Obligatoire

    Description

    type

    Chaîne

    Oui

    Type de source de données. Définissez-le sur service_journal.

    JournalPaths

    Tableau de chaînes

    Oui

    Chemins d'accès aux répertoires des journaux systemd. Exemple : /var/log/journal.

    SeekPosition

    Chaîne

    Non

    Position de départ initiale de la collecte. Valeurs valides : head et tail. Valeur par défaut : tail.

    • head : Collecte toutes les données de journal existantes depuis le début.

    • tail : Collecte uniquement les nouvelles données de journal générées après l'application de la configuration.

    Kernel

    Booléen

    Non

    Collecte les journaux du noyau. Par défaut : true.

    Units

    Tableau de chaînes

    Non

    Unités à partir desquelles collecter les journaux. Si vide, Logtail collecte à partir de toutes les unités.

    ParseSyslogFacility

    Booléen

    Non

    Analyse le champ facility des journaux syslog. Par défaut : false.

    ParsePriority

    Booléen

    Non

    Analyse le champ Priority. Par défaut : false.

    Lorsque la valeur est définie sur true, le champ Priority est mappé comme suit.

      "0": "emergency"
      "1": "alert"
      "2": "critical"
      "3": "error"
      "4": "warning"
      "5": "notice"
      "6": "informational"
      "7": "debug"

    UseJournalEventTime

    Booléen

    Non

    Utilise l'horodatage de l'entrée du journal comme heure du journal. Par défaut : false (utilise l'heure de collecte).

    Pour une collecte en temps réel, l'horodatage du journal et l'heure de collecte diffèrent généralement de moins de 3 secondes.

  6. Créez des index et prévisualisez les données. Puis, cliquez sur Next. Par défaut, l'indexation en texte intégral est activée dans Simple Log Service. Vous pouvez également créer manuellement des index de champ pour les journaux collectés ou cliquer sur Automatic Index Generation. Simple Log Service génère alors des index de champ. Pour plus d'informations, consultez Créer des index.

    Important

    Si vous souhaitez interroger tous les champs des journaux, nous vous recommandons d'utiliser des index en texte intégral. Si vous souhaitez interroger uniquement des champs spécifiques, nous vous recommandons d'utiliser des index de champ. Cela permet de réduire le trafic lié aux index. Si vous souhaitez analyser des champs, vous devez créer des index de champ. Votre instruction de requête doit inclure une instruction SELECT pour l'analyse.

  7. Cliquez sur Query Log. Vous êtes ensuite redirigé vers la page de requête et d'analyse de votre Logstore.

    Vous devez attendre environ 1 minute pour que les index prennent effet. Vous pouvez ensuite afficher les journaux collectés dans l'onglet Raw Logs. Pour plus d'informations sur la requête et l'analyse des journaux, consultez Démarrage rapide de la requête et de l'analyse.

Exemples

  • Exemple 1

    Collectez les journaux à partir du répertoire par défaut /var/log/journal. La configuration suivante est utilisée :

    {
      "inputs": [
        {
          "detail": {
            "JournalPaths": [
              "/var/log/journal"
            ]
          },
          "type": "service_journal"
        }
      ]
    }

    Exemple de journal :

    MESSAGE:  rejected connection from "192.168.0.250:43936" (error "EOF", ServerName "")
    PACKAGE:  embed
    PRIORITY:  6
    SYSLOG_IDENTIFIER:  etcd
    _BOOT_ID:  fe919cd1268f4721bd87b5c18afe59c3
    _CAP_EFFECTIVE:  0
    _CMDLINE:  /usr/bin/etcd --election-timeout=3000 --heartbeat-interval=500 --snapshot-count=50000 --data-dir=data.etcd --name 192.168.0.251-name-3 --client-cert-auth --trusted-ca-file=/var/lib/etcd/cert/ca.pem --cert-file=/var/lib/etcd/cert/etcd-server.pem --key-file=/var/lib/etcd/cert/etcd-server-key.pem --peer-client-cert-auth --peer-trusted-ca-file=/var/lib/etcd/cert/peer-ca.pem --peer-cert-file=/var/lib/etcd/cert/192.168.0.251-name-3.pem --peer-key-file=/var/lib/etcd/cert/192.168.0.251-name-3-key.pem --initial-advertise-peer-urls https://192.168.0.251:2380 --listen-peer-urls https://192.168.0.251:2380 --advertise-client-urls https://192.168.0.251:2379 --listen-client-urls https://192.168.0.251:2379 --initial-cluster 192.168.0.249-name-1=https://192.168.0.249:2380,192.168.0.250-name-2=https://192.168.0.250:2380,192.168.0.251-name-3=https://192.168.0.251:2380 --initial-cluster-state new --initial-cluster-token abac64c8-baab-4ae6-8412-4253d3cfb0cf
    _COMM:  etcd
    _EXE:  /opt/etcd-v3.3.8/etcd
    _GID:  995
    _HOSTNAME:  iZbp1f7y2ikfe4l8nx95amZ
    _MACHINE_ID:  f0f31005fb5a436d88e3c6cbf54e25aa
    _PID:  10926
    _SOURCE_REALTIME_TIMESTAMP:  1546854068863857
    _SYSTEMD_CGROUP:  /system.slice/etcd.service
    _SYSTEMD_SLICE:  system.slice
    _SYSTEMD_UNIT:  etcd.service
    _TRANSPORT:  journal
    _UID:  997
    __source__:  172.16.1.4
    __tag__:__hostname__:  logtail-ds-8kqb9
    __topic__:  
    _monotonic_timestamp_:  1467135144311
    _realtime_timestamp_:  1546854068864309
  • Exemple 2

    Remarque

    Limitations liées à la collecte des journaux de l'hôte depuis un conteneur :

    • Un conteneur avec une version de systemd antérieure ou égale à 247 ne peut pas collecter les journaux d'un hôte exécutant une version de systemd 249 ou ultérieure.

    • Un conteneur avec une version de systemd 249 ou ultérieure peut lire les journaux dans les anciens et les nouveaux formats.

    Dans un environnement Kubernetes, utilisez le mode DaemonSet pour collecter les journaux du système hôte. Utilisez des plugins de traitement pour ne conserver que les champs importants. Exemple de configuration :

    {
      "inputs": [
        {
          "detail": {
            "JournalPaths": [
              "/logtail_host/var/log/journal"
            ],
            "ParsePriority": true,
            "ParseSyslogFacility": true
          },
          "type": "service_journal"
        }
      ],
      "processors": [
        {
          "detail": {
            "Exclude": {
              "UNIT": "^libcontainer.*test"
            }
          },
          "type": "processor_filter_regex"
        },
        {
          "detail": {
            "Include": [
              "MESSAGE",
              "PRIORITY",
              "_EXE",
              "_PID",
              "_SYSTEMD_UNIT",
              "_realtime_timestamp_",
              "_HOSTNAME",
              "UNIT",
              "SYSLOG_FACILITY",
              "SYSLOG_IDENTIFIER"
            ]
          },
          "type": "processor_pick_key"
        }
      ]
    }

    Exemple de journal :

    MESSAGE:  rejected connection from "192.168.0.251:48914" (error "EOF", ServerName "")
    PRIORITY:  informational
    SYSLOG_IDENTIFIER:  etcd
    _EXE:  /opt/etcd-v3.3.8/etcd
    _HOSTNAME:  iZbp1i0czq3zgvxlx7u8ueZ
    _PID:  10590
    _SYSTEMD_UNIT:  etcd.service
    __source__:  172.16.0.141
    __tag__:__hostname__:  logtail-ds-dp48x
    __topic__:  
    _realtime_timestamp_:  1547975837008708

Dépannage

Si aucune donnée n'apparaît sur la page de prévisualisation ou de requête après avoir configuré Logtail pour la collecte des journaux, consultez Dépanner les échecs de collecte Logtail.