La collecte incrémentielle traditionnelle des journaux ne permet pas de récupérer les fichiers statiques existants en une seule exécution. La collecte ponctuelle vous permet de déployer des configurations de collecte en masse vers un groupe de machines via la console ou l'API, de collecter le contenu des fichiers statiques spécifiés une seule fois et d'arrêter automatiquement la tâche une fois terminée.
Applicabilité
LoongCollector version 3.3 ou ultérieure.
LoongCollector prend en charge la collecte sur hôte sous Linux et Windows, mais pas la collecte dans des conteneurs.
Configuration de la collecte
Preparation: Créez un projet et un Logstore. Un projet isole les journaux provenant de différents services. Un Logstore stocke les journaux.
Configurer un groupe de machines (installer LoongCollector): Installez LoongCollector en fonction du type de votre serveur et ajoutez-le à un groupe de machines. Utilisez le groupe de machines pour gérer les nœuds de collecte, distribuer les configurations et surveiller l'état des serveurs.
-
Créer et configurer une règle de collecte de fichiers ponctuelle:
Global and input configuration : Nommez la configuration de collecte et spécifiez la source et la portée des journaux.
-
Log processing and structuring: Configurez les paramètres de traitement en fonction du format de vos journaux.
Journaux multilignes : Gère les entrées de journal qui s'étendent sur plusieurs lignes, telles que les traces de pile Java ou les traces d'erreur Python. Utilisez une expression régulière de début de ligne pour identifier le début de chaque entrée de journal, en fusionnant les lignes suivantes en un seul enregistrement.
Analyse structurée : Configurez un plug-in d'analyse (tel que le mode regex, délimiteur ou NGINX) pour analyser les chaînes brutes en paires clé-valeur structurées. Cela vous permet d'interroger et d'analyser chaque champ indépendamment.
Log filtering: Configurez les listes de blocage de collecte et les règles de filtrage de contenu pour sélectionner uniquement les journaux pertinents, ce qui réduit la transmission et le stockage de données redondantes.
Log categorization: Configurez les rubriques de journal pour catégoriser de manière flexible les journaux provenant de différents services, serveurs ou chemins source.
Query and analysis configuration: L'index en texte intégral est activé par défaut et prend en charge les recherches par mot-clé. Pour les champs structurés, activez un index de champ afin d'améliorer l'efficacité de la recherche et de prendre en charge les requêtes et analyses précises.
Verify collection results: Une fois la configuration terminée, vérifiez que les journaux sont bien collectés. Si vous rencontrez des problèmes tels que des journaux non collectés, des échecs de heartbeat ou des erreurs d'analyse, consultez la section FAQ.
Prérequis
Créez un projet et un LogStore pour gérer et stocker vos journaux avant de les collecter. Si vous disposez déjà de ces ressources, ignorez cette étape et passez à la section Configurer un groupe de machines (installer LoongCollector).
Créer un projet
Créer un LogStore
Étape 1 : Configurer un groupe de machines
Installez LoongCollector sur vos serveurs et ajoutez-les à un groupe de machines.
Ces étapes d'installation s'appliquent uniquement si la source des journaux est une instance ECS située dans le même compte Alibaba Cloud et la même région que le projet Simple Log Service.
Si votre instance ECS et votre projet ne se trouvent pas dans le même compte ou la même région, ou si votre source de journaux est un serveur sur site, consultez la rubrique Installer et configurer LoongCollector.
Procédure :
Sur la page Logstores
, cliquez sur
à côté du nom du logstore cible pour le développer.Cliquez sur . Dans l'onglet One-time Logtail Configuration, cliquez sur Add Logtail Configuration.
Dans la boîte de dialogue Quick Data Import, cliquez sur Integrate Now sur la carte One-Time File Collection - Host.
-
Sur la page Machine Group Configurations, configurez les paramètres suivants :
Scenario : Servers
Installation Environment : ECS
-
Select Machine Group : Sélectionnez une action en fonction de l'état de LoongCollector et du groupe de machines sur le serveur cible :
Si LoongCollector est installé et a été ajouté à un groupe de machines, sélectionnez-le dans la liste Source Machine Group et ajoutez-le à la liste Applied Machine Group. Vous n'avez pas besoin d'en créer un nouveau.
-
Si LoongCollector n'est pas installé, cliquez sur Create Machine Group :
Les étapes suivantes décrivent le processus en un clic pour installer LoongCollector et créer un groupe de machines.
Le système répertorie automatiquement les instances ECS situées dans la même région que le projet. Sélectionnez une ou plusieurs instances à partir desquelles vous souhaitez collecter des journaux.
Cliquez sur Install and Create Machine Group. Le système installe automatiquement LoongCollector sur les instances ECS sélectionnées.
Saisissez un Name pour le groupe de machines et cliquez sur OK.
RemarqueSi l'installation échoue ou reste en attente, vérifiez que l'instance ECS se trouve dans la même région que le projet.
Pour ajouter un serveur avec LoongCollector déjà installé à un groupe de machines existant, consultez la rubrique Comment ajouter un serveur à un groupe de machines existant ?
-
Vérifier l'état du heartbeat : Cliquez sur Next. Lorsque la section Heartbeat Status of Machine Group apparaît, vérifiez le Heartbeat. Si l'état est OK, le groupe de machines est correctement connecté. Cliquez sur Next pour accéder à la page de configuration Logtail.
Si l'état est FAIL, l'établissement du heartbeat initial peut prendre un certain temps. Attendez environ deux minutes, puis actualisez l'état du heartbeat. Si l'état est toujours FAIL après l'actualisation, consultez la section Échec de la connexion heartbeat du groupe de machines pour poursuivre le dépannage.
Étape 2 : Configurer une règle de collecte de fichiers ponctuelle
Après avoir installé LoongCollector et configuré le groupe de machines, accédez à la page Logtail Configurations pour définir les règles de collecte et de traitement des journaux.
1. Configurations globales et configurations d'entrée
Définissez le nom de la configuration de collecte et spécifiez la source et la portée de la collecte des journaux.
Global Configurations :
-
Configuration Name : Spécifiez un nom personnalisé pour la configuration de collecte. Le nom doit être unique au sein du projet et ne peut pas être modifié après la création. Les règles de nommage sont les suivantes :
Ne peut contenir que des lettres minuscules, des chiffres, des traits d'union (-) et des traits de soulignement (_).
Doit commencer et se terminer par une lettre minuscule ou un chiffre.
-
Execution Timeout : La valeur par défaut est de 600 s (10 minutes) et le délai d'expiration peut être défini entre 600 et 604 800 secondes (10 minutes à 7 jours). Si une tâche de collecte dépasse ce délai d'expiration, elle est arrêtée de force et les données restantes ne sont pas collectées.
ImportantRemarque sur les mises à jour de configuration : Lorsque vous mettez à jour une configuration, sa période de validité est réinitialisée. Pour éviter une double exécution des tâches ou un rapport de données inattendu, assurez-vous que la portée du groupe de machines est correcte et que le temps d'exécution de la tâche précédente n'a pas dépassé le Execution Timeout.
-
Force rerun on update : Désactivé par défaut.
-
Désactivé :
Lorsque vous mettez à jour les paramètres de configuration de collecte autres que Execution Timeout ou Input Configurations, le système reprend la progression actuelle de la collecte au lieu de redémarrer la tâche. Cela garantit une collecte ininterrompue.
Si vous modifiez le Execution Timeout ou les Input Configurations, le système réexécute la tâche de collecte.
Activé : Lorsque vous mettez à jour la configuration de collecte, la tâche redémarre de force. Cela garantit que toutes les données sont traitées et rapportées selon les derniers paramètres. Remarque : Les données collectées avant la mise à jour ne sont pas supprimées. Pour effacer les données précédemment collectées, consultez la rubrique Suppression douce dans Simple Log Service.
-
Input Configurations :
Type : One-time File Collection (LoongCollector 3.3+ required).
-
File Path : Le chemin à partir duquel les journaux sont collectés.
RemarqueLoongCollector détermine la liste des fichiers à collecter et leur taille lorsqu'il récupère la configuration. Il ne collecte pas les nouveaux fichiers ni le contenu ajouté aux fichiers existants après ce point.
Linux : Le chemin doit commencer par une barre oblique (
/). Par exemple,/data/mylogs/**/*.logcollecte tous les fichiers avec l'extension.logdans tous les sous-répertoires de/data/mylogs.Windows : Le chemin doit commencer par une lettre de lecteur. Par exemple,
C:\Program Files\Intel\**\*.Log.
Maximum Directory Monitoring Depth : La profondeur maximale de répertoire que le caractère générique
**dans le File Path peut correspondre. La valeur par défaut est 0, ce qui signifie que seul le répertoire actuel est surveillé.
2. Traitement et structuration des journaux
Configurez les règles de traitement des journaux pour convertir les journaux bruts non structurés en données structurées interrogeables. Commencez par Add Log Sample pour obtenir de meilleurs résultats.
Dans la zone Processor Configurations de la page Logtail Configurations, cliquez sur Add Sample Log et saisissez le contenu de votre journal. Le système utilise cet exemple pour identifier le format du journal et vous aide à générer une expression régulière et des règles d'analyse, ce qui simplifie le processus de configuration.
Scénario 1 : Traitement des journaux multilignes
Une entrée de journal, telle qu'une trace de pile d'exception Java ou un objet JSON, s'étend souvent sur plusieurs lignes. Par défaut, chaque ligne est traitée comme un enregistrement distinct, ce qui fragmente les entrées multilignes. Pour éviter cela, activez le mode multiligne et configurez une expression régulière de début de ligne pour fusionner les lignes consécutives en une seule entrée de journal.
Exemple :
|
Journal brut |
Mode par défaut |
Mode multiligne |
|
Dans les résultats de la requête, chaque entrée de journal contient des métadonnées dupliquées telles que l'adresse IP |
Dans la console Simple Log Service, un journal d'exception Java contenant l'erreur |
Procédure : Dans la zone Processor Configurations de la page Logtail Configurations, activez le Multi-line Mode :
-
Type : Sélectionnez Custom ou Multi-line JSON.
-
Custom : Utilisez cette option pour les journaux dont le format est incohérent. Vous devez configurer une Regex to Match First Line pour identifier le début de chaque entrée de journal.
-
Regex to Match First Line : Vous pouvez générer cette expression automatiquement ou la saisir manuellement. L'expression régulière doit correspondre à une ligne complète de données. Par exemple, l'expression pour le journal d'exemple est
\[\d+-\d+-\w+:\d+:\d+,\d+]\s\[\w+]\s.*.Pour générer automatiquement l'expression, cliquez sur Generate, sélectionnez le contenu du journal souhaité dans la zone de texte Log Sample, puis cliquez sur Generate Regular Expression.
Pour saisir manuellement l'expression, cliquez sur Manually Enter Regular Expression, fournissez votre expression, puis cliquez sur Validate.
-
Multi-line JSON : Si vos journaux bruts sont au format JSON standard, Simple Log Service gère automatiquement les sauts de ligne au sein d'une seule entrée de journal JSON.
-
-
Processing Method If Splitting Fails :
Discard : Si un bloc de texte ne correspond pas à la règle de début de ligne, il est ignoré.
Retain Single Line : Le texte qui ne correspond pas à la règle est plutôt traité en mode ligne unique, chaque ligne étant traitée comme un journal distinct.
Scénario 2 : Traitement des journaux structurés
L'interrogation et l'analyse de journaux non structurés ou semi-structurés, tels que les journaux d'accès NGINX ou la sortie d'application, peuvent être inefficaces. Simple Log Service fournit des plug-ins de traitement des données qui convertissent les journaux bruts en données structurées pour l'analyse, la surveillance et les alertes.
Exemple :
|
Journal brut |
Journal structuré |
|
|
Procédure : Dans la zone Processor Configurations de la page Logtail Configurations :
Ajouter un plug-in de processeur : Cliquez sur Add Processor et configurez un plug-in tel que regex, délimiteur ou analyse JSON en fonction du format de votre journal. Cet exemple utilise un journal NGINX et sélectionne .
-
NGINX Log Configuration : Copiez l'intégralité de la définition
log_formatdepuis le fichier de configuration de votre serveur NGINX (nginx.conf) et collez-la dans cette zone de texte.Exemple :
log_format main '$remote_addr - $remote_user [$time_local] "$request" ''$request_time $request_length ''$status $body_bytes_sent "$http_referer" ''"$http_user_agent"';ImportantLa définition du format ici doit correspondre exactement au format utilisé pour générer le journal sur votre serveur. Sinon, l'analyse échouera.
-
Paramètres courants : Les paramètres suivants sont communs à plusieurs plug-ins de processeur de données et ont la même fonction.
Original field : Spécifie le champ source à analyser. La valeur par défaut est
content, qui correspond à l'ensemble de l'entrée de journal collectée.Retain original field if parsing fails : Recommandé. Si le plug-in ne parvient pas à analyser un journal, par exemple en raison d'une incompatibilité de format, cette option conserve le contenu du journal d'origine dans le champ d'origine spécifié.
Retain original field if parsing succeeds : Cette option conserve le contenu du journal d'origine même après une analyse réussie.
3. Filtrage des journaux
La collecte de grands volumes de journaux à faible valeur ajoutée ou non pertinents, tels que les entrées DEBUG ou INFO, gaspille de l'espace de stockage, augmente les coûts, réduit l'efficacité des requêtes et présente des risques de fuite de données. Utilisez des règles de filtrage fines pour ne collecter que les journaux dont vous avez besoin.
Filtrage du contenu
Filtrez les journaux en fonction du contenu des champs, par exemple en ne collectant que les journaux dont le niveau level est WARNING ou ERROR.
Exemple :
|
Journaux bruts |
Collecter uniquement les journaux |
|
|
Procédure : Dans la zone Processor Configurations de la page Logtail Configurations :
Cliquez sur Add Processor et sélectionnez :
Field Name : champ de journal sur lequel appliquer le filtre.
Field Value : expression régulière utilisée pour le filtrage. Seule la correspondance texte intégral est prise en charge ; la correspondance partielle par mot-clé n'est pas disponible.
Liste noire de collecte
Utilisez une liste noire pour exclure des répertoires ou des fichiers spécifiques afin d'éviter le téléchargement de journaux non pertinents ou sensibles.
Procédure : Sur la page Logtail Configurations , accédez à la zone , activez l'option Collection Blacklist , puis cliquez sur Add .
La correspondance exacte et la correspondance avec caractères génériques sont prises en charge pour les répertoires et les noms de fichiers. Les seuls caractères génériques pris en charge sont l'astérisque (*) et le point d'interrogation (?).
-
File Path Blacklist : chemins de fichiers à ignorer. Exemples :
/home/admin/private*.log: ignore tous les fichiers du répertoire/home/admin/qui commencent parprivateet se terminent par.loglors de la collecte./home/admin/private*/*_inner.log: ignore les fichiers se terminant par_inner.logsitués dans des répertoires commençant parprivateau sein du répertoire/home/admin/.
-
File Blacklist : noms de fichiers à ignorer lors de la collecte. Exemple :
app_inner.log: ignore tous les fichiers nommésapp_inner.loglors de la collecte.
-
Directory Blacklist : les chemins de répertoire ne doivent pas se terminer par une barre oblique (
/). Exemples :/home/admin/dir1/: la liste noire de répertoires n'a aucun effet./home/admin/dir*: lors de la collecte, ignore les fichiers de tous les sous-répertoires de/home/admin/dont les noms commencent pardir./home/admin/*/dir: ignore tous les fichiers de tout sous-répertoire de deuxième niveau nommédirsous le répertoire/home/admin/. Par exemple, les fichiers du répertoire/home/admin/a/dirsont ignorés, mais ceux du répertoire/home/admin/a/b/dirsont collectés.
4. Catégoriser les journaux
Lorsque les journaux de plusieurs applications ou instances partagent le même format mais ont des chemins différents, tels que /apps/app-A/run.log et /apps/app-B/run.log , il peut être difficile de distinguer leurs sources après la collecte. Configurez un topic de journal pour différencier les journaux provenant de diverses applications, services ou chemins, afin d'effectuer des requêtes précises dans une destination de stockage unifiée.
Procédure : Dans la zone , sélectionnez une méthode de génération de topic. Les types suivants sont pris en charge :
Topic du groupe de machines : lorsque vous appliquez une configuration de collecte à plusieurs groupes de machines, LoongCollector utilise automatiquement le nom du groupe de machines du serveur comme valeur pour le champ
__topic__. Cette méthode est utile pour catégoriser les journaux par hôte.Custom : utilisez le format
customized://<custom-topic-name>, par exemplecustomized://app-login. Cette méthode convient aux topics statiques avec des identifiants métier fixes.-
Extraction du chemin de fichier : extrait les informations clés du chemin complet d'un fichier journal pour étiqueter dynamiquement la source du journal. Cette approche est utile lorsque plusieurs utilisateurs ou applications partagent le même nom de fichier journal mais résident dans des chemins différents. Par exemple, lorsque plusieurs utilisateurs ou services écrivent des journaux dans des répertoires de premier niveau différents mais utilisent le même chemin de sous-répertoire et le même nom de fichier, vous ne pouvez pas distinguer la source par le seul nom de fichier :
/data/logs ├── userA │ └── serviceA │ └── service.log ├── userB │ └── serviceA │ └── service.log └── userC └── serviceA └── service.logDans ce cas, vous pouvez configurer l'extraction du chemin de fichier et utiliser une expression régulière pour extraire les informations clés du chemin complet. Le résultat correspondant est ensuite téléchargé vers le Logstore en tant que topic de journal.
Règles d'extraction du chemin de fichier
Lorsque vous configurez l'expression régulière, le système détermine automatiquement le format du champ de sortie en fonction du nombre et des noms des groupes de capture. Les règles sont les suivantes :
Dans une expression régulière pour un chemin de fichier, vous devez échapper les barres obliques (
/).Type de groupe de capture
Cas d'utilisation
Champ généré
Exemple d'expression régulière
Chemin correspondant (exemple)
Champ généré (exemple)
Groupe de capture unique (un seul
(.*?))Lorsqu'une seule dimension suffit pour distinguer les sources, comme le nom d'utilisateur ou l'environnement.
Génère le champ
__topic__.\/logs\/(.*?)\/app\.log/logs/userA/app.log__topic__: userAPlusieurs groupes de capture - Non nommés (plusieurs
(.*?))Lorsque plusieurs dimensions sont nécessaires pour distinguer les sources, sans exigence d'étiquettes sémantiques.
Génère le champ de tag
__tag__:__topic_{i}__, où{i}est l'index du groupe de capture.\/logs\/(.*?)\/(.*?)\/app\.log/logs/userA/svcA/app.log__tag__:__topic_1__:userA;__tag__:__topic_2__:svcAPlusieurs groupes de capture nommés (utilisation de
(?P<name>.*?)Lorsque plusieurs dimensions sont nécessaires pour distinguer les sources et que vous souhaitez des noms de champs clairs et significatifs pour faciliter les requêtes et l'analyse.
Génère le champ de tag
__tag__:{name}\/logs\/(?P<user>.*?)\/(?P<service>.*?)\/app\.log/logs/userA/svcA/app.log__tag__:user:userA;__tag__:service:svcA
Étape 3 : Requête et analyse
Une fois le traitement des journaux et la configuration des plug-ins terminés, cliquez sur Next pour accéder à la page Query and Analysis Configurations .
L'index plein texte est activé par défaut et prend en charge la recherche par mot-clé sur le contenu brut des journaux.
Pour effectuer des requêtes par champ, une fois que l'option Preview Data a chargé les données, cliquez sur Automatic Index Generation . Log Service génère alors un index de champ basé sur la première entrée de l'aperçu.
Une fois la configuration terminée, cliquez sur Next pour finaliser le processus de collecte.
Étape 4 : Vérifier les résultats de la collecte
Une fois la configuration appliquée, sur la page de requête et d'analyse du Logstore cible, cliquez sur Search & Analyze pour afficher les données des journaux.
FAQ
Cycle de vie de la collecte ponctuelle
Après la création d'une configuration de collecte ponctuelle, elle suit le cycle de vie ci-dessous :
Fenêtre de distribution de la configuration : LoongCollector (Logtail) peut récupérer la configuration dans les 5 minutes suivant sa création. Après ce délai, les nouvelles instances LoongCollector (Logtail) ne peuvent plus obtenir cette configuration.
Suppression automatique de la configuration : Log Service supprime automatiquement la configuration 7 jours après sa création.
Exécution de la tâche : la tâche de collecte doit être terminée dans le délai d'exécution imparti. Si la tâche dépasse ce délai, le système l'arrête de force.
Collecte ponctuelle vs collecte de fichiers héritée
La méthode de collecte de fichiers historiques héritée n'est plus recommandée. Par rapport à cette méthode, qui nécessitait la création manuelle de fichiers de configuration sur chaque serveur, la collecte ponctuelle de fichiers améliore l'efficacité de la configuration, la fiabilité et l'observabilité. Le tableau suivant fournit une comparaison détaillée :
|
Élément de comparaison |
Méthode héritée |
Collecte ponctuelle de fichiers |
|
Méthode de configuration |
Créer un fichier |
Créer une configuration dans la console ou via l'API et la déployer par lots sur un groupe de machines. |
|
Correspondance de fichiers |
Saisir manuellement les chemins et noms de fichiers. |
Propose une configuration simplifiée similaire à |
|
Surveillance de la progression |
Aucun rapport d'état ni journal local. |
Utilise un point de contrôle pour suivre la progression de la collecte, avec une granularité allant jusqu'à l'offset actuel de chaque fichier. |
|
Fiabilité |
Faible. S'exécute en tant que processus séparé sans contrôles de ressources ni mécanisme de point de contrôle. |
Élevée. Utilise la gestion standard des ressources au niveau du pipeline, prend en charge le contrôle de flux pour éviter d'impacter les autres tâches de collecte et permet la reprise après interruption. |
|
Flexibilité |
Faible. Vous devez utiliser une configuration de collecte existante. |
Élevée. Vous pouvez orchestrer la configuration de collecte et la modifier pendant la tâche. |
Échec du heartbeat du groupe de machines
-
Vérifiez l'ID utilisateur. Si votre serveur n'est pas une instance ECS, ou si votre instance ECS et votre Project appartiennent à des comptes Alibaba Cloud différents, vérifiez si le fichier d'ID utilisateur correct existe dans le répertoire spécifié. S'il n'existe pas, créez-le manuellement à l'aide de l'une des commandes suivantes.
Linux : exécutez la commande
cd /etc/ilogtail/users/ && touch <uid>pour créer un fichier d'identifiant utilisateur.Windows : accédez au répertoire
C:\LogtailData\users\et créez un fichier vide nommé<uid>.
-
Vérifiez l'identifiant du groupe de machines : si vous avez utilisé un identifiant défini par l'utilisateur lors de la création du groupe de machines, vérifiez si le fichier
user_defined_idexiste dans le répertoire spécifié. Si c'est le cas, vérifiez si le contenu du fichier correspond à l'identifiant défini par l'utilisateur configuré pour le groupe de machines.-
Linux :
# Configure the user-defined identifier. If the directory does not exist, create it manually. echo "user-defined-1" > /etc/ilogtail/user_defined_id Windows : créez un fichier
user_defined_iddans le répertoireC:\LogtailDataet écrivez-y l'identifiant défini par l'utilisateur. (Si le répertoire n'existe pas, créez-le manuellement.)
-
Si l'ID utilisateur et l'identifiant du groupe de machines sont corrects, consultez la rubrique Dépannage des problèmes de groupe de machines LoongCollector (Logtail) pour les étapes de dépannage.
Ajout d'un serveur à un groupe de machines
Pour ajouter un nouveau serveur, tel qu'une instance ECS nouvellement déployée ou un serveur auto-géré, à un groupe de machines existant, associez-le au groupe afin que la configuration de collecte soit automatiquement appliquée.
Si un serveur est ajouté à un groupe de machines plus de 5 minutes après la création de la configuration de collecte ponctuelle, il ne recevra pas la configuration. Consultez le compte à rebours en haut de la page de configuration de collecte pour voir le temps restant.
Prérequis
Un groupe de machines existant.
LoongCollector (Logtail) est installé sur le nouveau serveur.
Procédure
-
Consultez l'identifiant du groupe de machines cible.
Dans le Project cible, cliquez sur

puis sur dans le volet de navigation de gauche.Sur la page Machine Groups, cliquez sur le nom du groupe de machines cible.
Sur la page de configuration du groupe de machines, consultez l'identifiant du groupe de machines.
-
Effectuez l'une des actions suivantes en fonction du type d'identifiant.
RemarqueUn seul groupe de machines ne peut pas contenir à la fois des serveurs Linux et Windows. Ne configurez pas le même identifiant défini par l'utilisateur sur des serveurs Linux et Windows. Pour configurer plusieurs identifiants définis par l'utilisateur sur un seul serveur, séparez-les par un saut de ligne.
-
Type 1 : L'identifiant du groupe de machines est une adresse IP
-
Sur le serveur, exécutez la commande suivante pour ouvrir le fichier
app_info.jsonet consulter la valeurip.cat /usr/local/ilogtail/app_info.json Sur la page de configuration du groupe de machines cible, cliquez sur Modify et saisissez l'adresse IP du serveur. Si vous disposez de plusieurs adresses IP, séparez-les par des sauts de ligne.
-
Une fois la configuration terminée, cliquez sur Save et confirmez l'état du heartbeat. Si l'état est OK, le serveur applique automatiquement la configuration de collecte du groupe de machines.
Si l'état du heartbeat est FAIL, consultez la rubrique Échec du heartbeat du groupe de machines pour les instructions de dépannage.
-
-
Type 2 : L'identifiant du groupe de machines est un identifiant défini par l'utilisateur
Selon le système d'exploitation, écrivez la chaîne d'identifiant défini par l'utilisateur correspondant au groupe de machines cible dans le fichier spécifié :
Si le répertoire n'existe pas, créez-le manuellement. Le chemin et le nom du fichier sont fixés par Log Service et ne peuvent pas être personnalisés.
Linux : écrivez une chaîne personnalisée dans le fichier
/etc/ilogtail/user_defined_id.Windows : écrivez une chaîne personnalisée dans
C:\LogtailData\user_defined_id.
-
Annexe : Plugins de traitement natifs
Analyse par expression régulière
Extrayez les champs des journaux à l'aide d'expressions régulières et analysez les journaux sous forme de paires clé-valeur. Chaque champ peut faire l'objet de requêtes et d'analyses indépendantes.
Exemple :
Journal brut sans aucun traitement | Utilisation du plugin d'analyse par expression régulière |
| |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, cliquez sur Add Processor et sélectionnez :
-
Regular Expression : Utilisée pour faire correspondre les journaux. Vous pouvez la générer automatiquement ou la saisir manuellement :
-
Génération automatique :
Cliquez sur Generate Regex Automatically.
Dans le champ Log Sample, sélectionnez le contenu du journal à extraire.
Cliquez sur Generate Regex.
Saisie manuelle : Enter Regex Manually en fonction du format du journal.
Une fois la configuration terminée, cliquez sur Validate pour vérifier si l'expression régulière peut analyser correctement le contenu du journal.
-
Extracted Field : Définissez le nom de champ correspondant (Key) pour le contenu du journal extrait (Value).
Pour plus d'informations sur les autres paramètres, consultez les descriptions générales des paramètres dans la section Scénario 2 : Journaux structurés.
Analyse par délimiteur
Structurez le contenu du journal à l'aide d'un séparateur, qui l'analyse en plusieurs paires clé-valeur. Prend en charge les séparateurs à un ou plusieurs caractères.
Exemple :
Journal brut sans aucun traitement | Séparation des champs par le caractère spécifié |
| |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, cliquez sur Add Processor et sélectionnez :
-
Delimiter : Spécifiez le caractère utilisé pour séparer le contenu du journal.
Exemple : Pour un fichier CSV, sélectionnez Custom et saisissez une virgule (,).
Quote : Lorsqu'une valeur de champ contient le séparateur, vous devez spécifier un guillemet pour entourer le champ afin d'éviter une séparation incorrecte.
-
Extracted Field : Définissez le nom de champ correspondant (Key) pour chaque colonne dans l'ordre de séparation. Les règles sont les suivantes :
Les noms de champ ne peuvent contenir que des lettres, des chiffres et des traits de soulignement (_).
Doivent commencer par une lettre ou un trait de soulignement (_).
Longueur maximale : 128 octets.
Pour plus d'informations sur les autres paramètres, consultez les descriptions générales des paramètres dans la section Scénario 2 : Journaux structurés.
Analyse JSON
Structure un journal JSON de type objet, qui l'analyse en paires clé-valeur.
Exemple :
Journal brut sans aucun traitement | Extraction automatique des paires clé-valeur JSON standard |
| |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, cliquez sur Add Processor et sélectionnez :
Original Field : La valeur par défaut est content. Ce champ est utilisé pour stocker le contenu brut du journal à analyser.
Pour plus d'informations sur les autres paramètres, consultez les descriptions générales des paramètres dans la section Scénario 2 : Journaux structurés.
Analyse JSON imbriqué
Analyse les journaux JSON imbriqués en paires clé-valeur en spécifiant la profondeur d'expansion.
Exemple :
Journal brut sans aucun traitement | Profondeur d'expansion : 0, utilisation de la profondeur d'expansion comme préfixe | Profondeur d'expansion : 1, utilisation de la profondeur d'expansion comme préfixe |
| | |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, cliquez sur Add Processor et sélectionnez :
Original Field : Le nom du champ source à développer, par exemple
content.JSON Expansion Depth : Le niveau d'expansion de l'objet JSON. 0 signifie entièrement développé (par défaut), 1 signifie le niveau actuel, et ainsi de suite.
Character to Concatenate Expanded Keys : Le séparateur pour les noms de champ lors de l'expansion JSON. La valeur par défaut est un trait de soulignement _.
Name Prefix of Expanded Keys : Spécifiez le préfixe pour les noms de champ après l'expansion JSON.
-
Expand Array : Activez cette option pour développer un tableau en paires clé-valeur avec des index.
Exemple :
{"k":["a","b"]}se développe en{"k[0]":"a","k[1]":"b"}.Pour renommer les champs développés, par exemple de prefix_s_key_k1 à new_field_name, vous pouvez ajouter ensuite un plugin Rename Fields pour effectuer le mappage.
Pour plus d'informations sur les autres paramètres, consultez les descriptions générales des paramètres dans la section Scénario 2 : Journaux structurés.
Analyse de tableau JSON
Utilisez la fonction json_extract pour extraire des objets JSON d'un tableau JSON.
Exemple :
Journal brut sans aucun traitement | Extraire la structure du tableau JSON |
| |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, basculez la Processing Method sur SPL, configurez l'instruction SPL et utilisez la fonction json_extract pour extraire des objets JSON du tableau JSON.
Exemple : Extrayez les éléments du tableau JSON dans le champ de journal content et stockez les résultats dans les nouveaux champs json1 et json2.
* | extend json1 = json_extract(content, '$[0]'), json2 = json_extract(content, '$[1]')
Analyse des journaux Apache
Structure le contenu du journal en fonction de la définition dans le fichier de configuration des journaux Apache, qui l'analyse en plusieurs paires clé-valeur.
Exemple :
Journal brut sans aucun traitement | Analyse au format de journal Apache Common |
| |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, cliquez sur Add Processor et sélectionnez :
Log Format : combined.
-
APACHE LogFormat Configuration : Le système remplit automatiquement la configuration en fonction du Log Format.
ImportantAssurez-vous de vérifier le contenu rempli automatiquement pour vous assurer qu'il est exactement identique au LogFormat défini dans le fichier de configuration Apache de votre serveur, qui se trouve généralement à l'emplacement /etc/apache2/apache2.conf.
Pour plus d'informations sur les autres paramètres, consultez les descriptions générales des paramètres dans la section Scénario 2 : Journaux structurés.
Analyse des journaux IIS
Structure le contenu du journal en fonction de la définition du format de journal IIS, qui l'analyse en plusieurs paires clé-valeur.
Exemple de comparaison :
Journal brut | Adaptation au format spécifique du serveur Microsoft IIS |
| |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, cliquez sur Add Processor et sélectionnez :
-
Log Format : Sélectionnez le format de journal utilisé par vos journaux IIS.
IIS : Format de fichier journal IIS.
NCSA : Format de journal commun NCSA.
W3C : Format de fichier journal étendu W3C.
-
IIS Configuration Fields : Lorsque vous sélectionnez IIS ou NCSA, Simple Log Service définit par défaut le champ de configuration IIS. Lorsque vous sélectionnez W3C, définissez-le sur le contenu du paramètre
logExtFileFlagsdans votre fichier de configuration IIS. Par exemple :logExtFileFlags="Date, Time, ClientIP, UserName, SiteName, ComputerName, ServerIP, Method, UriStem, UriQuery, HttpStatus, Win32Status, BytesSent, BytesRecv, TimeTaken, ServerPort, UserAgent, Cookie, Referer, ProtocolVersion, Host, HttpSubStatus"
Pour plus d'informations sur les autres paramètres, consultez les descriptions générales des paramètres dans la section Scénario 2 : Journaux structurés.
Masquage des données
Masquez les données sensibles dans les journaux.
Exemple :
Journal brut sans aucun traitement | Résultat du masquage |
| |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, cliquez sur Add Processor et sélectionnez :
Original Field : Le champ source contenant le contenu du journal avant l'analyse.
-
Data Masking Method :
const : Remplace le contenu sensible par la chaîne spécifiée.
md5 : Remplace le contenu sensible par son hachage MD5 correspondant.
Replacement String : Lorsque vous sélectionnez const pour la Data Masking Method, vous devez saisir une chaîne pour remplacer le contenu sensible.
Content Expression that Precedes Replaced Content : Utilisé pour trouver le contenu sensible. Configurez à l'aide de la syntaxe RE2.
Content Expression to Match Replaced Content : L'expression pour le contenu sensible. Configurez à l'aide de la syntaxe RE2.
Analyse temporelle
Analyse le champ temporel dans le journal et définit le résultat de l'analyse comme champ __time__ du journal.
Exemple :
Journal brut sans aucun traitement | Analyse temporelle |
| Dans la vue des détails du journal SLS, le journal JSON est correctement analysé en champs structurés. Chaque champ ( |
Procédure : Sur la page Logtail Configuration, dans la zone Processor Configurations, cliquez sur Add Processor et sélectionnez :
Original Field : Le champ source contenant le contenu du journal avant l'analyse.
Time Format : Définissez le format temporel correspondant en fonction du contenu temporel dans le journal.
Time Zone : Sélectionnez le fuseau horaire du champ temporel du journal. Par défaut, le fuseau horaire de la machine est utilisé, c'est-à-dire le fuseau horaire de l'environnement où le processus LoongCollector (Logtail) s'exécute.