Transformez vos journaux personnalisés en tables interrogeables.
Certains journaux sont générés par des logiciels que seule votre entreprise utilise. Indiquez une seule fois où commence un enregistrement, quelle grammaire il utilise, où se trouve l’horodatage et comment s’appellent les colonnes : vous obtenez une table comme une autre.
Utilisez les résultats dans Excel, Google Sheets, les outils d'IA et vos applications via l'API REST Database.
Tous les types de connecteurs sont disponibles avec le forfait gratuit. Commencez avec 2 sources de données et 1 agent.
Lisez, organisez et interrogez les données sur votre machine.
Requêtes en lecture seule · connexion sortanteLes fichiers sources restent en place. Vos outils reçoivent les résultats des requêtes.
Query Streams lit n’importe quel journal texte, y compris ceux générés par des logiciels que seule votre entreprise utilise, et transforme le dossier en une table SQL dynamique, accessible depuis Microsoft Excel, Google Sheets, les assistants d’IA via MCP, l’API REST et Power BI. Vous décrivez le format une seule fois — délimitation des enregistrements, grammaire, horodatage, colonnes et rotation — puis l’agent conserve cette description telle quelle. Six grammaires sont disponibles : délimité, clé = valeur, grok, lignes JSON, directive d’en-tête #Fields et largeur fixe. Les lignes non reconnues par la description sont conservées sous forme de lignes brutes au lieu d’être supprimées : un format inattendu ne vous coûte donc rien.
- Six grammaires, décrites une seule fois
- Les lignes non reconnues sont conservées, jamais supprimées
- Aucune donnée envoyée ailleurs pour être interprétée
Connectez vos journaux personnalisés avec les paramètres appropriés.
Maintenez la connexion sur le Network Agent. Voici les paramètres propres aux journaux personnalisés.
- Dossier
- N’importe quel dossier de journaux texte — sur un disque local ou un partage réseau saisi au format \\server\share (jamais une lettre de lecteur réseau ; sous Linux ou Mac, il doit d’abord être monté) ; les sous-dossiers sont inclus, et les modèles d’inclusion et d’exclusion sont pris en charge.
- Grammaires
- Délimité, clé = valeur, grok, lignes JSON, directive d’en-tête #Fields et largeur fixe
- Limite du record
- À vous de choisir : une ligne par enregistrement ou un motif, un nombre fixe, une ligne vide ou un marqueur ; ainsi, les enregistrements multilignes restent entiers
- Horodatages
- La position et le format sont décrits ; si la ligne ne précise pas l’année, celle-ci peut être déduite de la date de modification du fichier ou de son nom
- Rotation
- Dix modèles de rotation nommés, plus les fichiers simples sans rotation ; les archives compressées sont lues sur place
- Lignes non reconnues
- Conservées telles quelles dans events_raw_lines, jamais supprimées
- Identifiants
- Aucun — il n’y a pas de serveur ; l’agent lit les fichiers sur place.
C’est le seul profil de journal que vous pouvez modifier, et c’est voulu : nous verrouillons tous les autres pour empêcher toute dérive. En contrepartie, une description personnalisée ne peut pas être validée à l’avance comme un profil fourni avec le produit. C’est là qu’intervient l’aperçu : il applique votre description à vos propres fichiers et affiche les lignes avant toute validation.
Conçu pour le fonctionnement des journaux personnalisés.
Les cinq éléments d’un format
Un profil verrouillé définit ces éléments pour vous. Le profil personnalisé vous permet de tous les définir : ils constituent la description complète. Il n’y a rien d’autre à configurer et rien de caché.
- Délimitation des enregistrements — l’endroit où un enregistrement se termine et où le suivant commence ; c’est ce qui permet de conserver une trace de pile multiligne sur une seule ligne.
- Grammaire — délimité, clé = valeur, grok, lignes JSON, directive d’en-tête #Fields ou largeur fixe.
- Horodatage — son emplacement et son format, y compris l’origine de l’année lorsque la ligne ne la précise pas.
- Colonnes — le nom et le type de chaque champ, afin que les nombres soient triés comme des nombres et que les dates servent de critères de filtrage comme des dates.
- Modèle de croissance — la manière dont le fichier grossit et effectue sa rotation, afin que l’archive d’hier et le fichier actif d’aujourd’hui forment une seule table.
-- Quels que soient les noms donnés aux colonnes, ceci n’est que du SQL
SELECT file_name, severity, COUNT(*) AS lines
FROM fileset.events
WHERE severity IN ('WARN','ERROR')
GROUP BY file_name, severity
ORDER BY lines DESCEssayez d’abord les profils intégrés
Tester la connexion compare ce qu’il trouve aux profils fournis et vous propose le plus proche. Il s’agit d’une correspondance d’empreintes, pas d’un modèle qui lit vos journaux : aucune donnée de vos fichiers n’est envoyée ailleurs pour être interprétée. Si un profil intégré convient, utilisez-le : un profil verrouillé demande moins d’entretien qu’une description personnalisée. Créez votre propre description si aucun ne convient, ou demandez-nous d’ajouter un profil intégré si vous préférez.
Les formats et le comportement, en détail.
Ouvrez la référence dont vous avez besoin pour les journaux personnalisés.
S'il s'agit d'un fichier texte, il peut s'agir d'un tableau.
S'il s'agit d'un fichier texte, il peut s'agir d'un tableau.
Trois fichiers aux formats sans rapport entre eux : l’un généré par une application métier, l’autre par un traitement par lots, le troisième par une machine dont personne ne s’occupe depuis 2011. Décrivez chacun une seule fois, et les colonnes que vous avez nommées sont celles que vous pouvez interroger. Aucun collecteur à exécuter, aucun index à gérer, aucune seconde copie des données.
Rotations, archives compressées et fichiers relus : tout est pris en charge
SELECTIONNER nom_de_fichier, gravité,
compter(*) AS lignes
DE ensembles de fichiers.événements
OÙ gravité IN ('AVERTIR','ERREUR')
GROUPE PAR nom_de_fichier, gravité
ORDER BY lignes DESCIl y a un gravité colonne parce que vous avez dit qu'il y en avait une
Chiffres donnés à titre indicatif — ils illustrent la forme du résultat, pas un benchmark
Six façons d'exprimer la signification d'une phrase
Six façons d'exprimer la signification d'une phrase
Presque tous les journaux de bord textuels jamais rédigés suivent l'une de ces six formes. Trouvez la vôtre ci-dessous ; l'exemple de ligne vous permettra généralement de la déterminer plus rapidement que la lecture de la description.
Grammaires que vous pouvez choisir
6 grammaires- Indiquez le séparateur : virgule, tabulation, point-virgule, barre verticale ou tout autre séparateur utilisé par le fichier
- Les champs entre guillemets sont respectés ; une virgule à l’intérieur d’un message reste donc à l’intérieur.
- Une ligne d'en-tête peut nommer les colonnes pour vous, au lieu de les saisir manuellement.
- Vous pouvez définir le séparateur décimal pour les fichiers où il s'agit d'une virgule.
- Les clés de la ligne deviennent les colonnes : inutile de les redéfinir
- Les deux séparateurs vous appartiennent : ce qui se trouve entre la clé et la valeur, et entre les paires.
- Un préfixe précédant les paires — horodatage, balise — peut être ignoré
- Fréquent dans les journaux d'applications et de machines qui ont été écrits pour être analysés
- Les captures nommées deviennent des colonnes : la solution de repli quand rien d’autre ne convient
- Les bibliothèques de modèles sous-jacentes aux profils intégrés sont là pour emprunter à
- Plusieurs motifs peuvent être essayés successivement, pour un fichier contenant plusieurs formes de lignes.
- La valeur par défaut initiale : un
messagecolonne, puis vous la rétrécissez
- Les champs deviennent des colonnes, et vous choisissez celles que vous souhaitez réellement conserver.
- Un objet imbriqué est conservé intact au format JSON plutôt que d'être aplati ou supprimé.
- L’enveloppe d’un environnement d’exécution de conteneur peut être retirée pour interroger l’enregistrement interne
- Ce que la plupart des bibliothèques de journalisation modernes écrivent lorsqu'on leur demande d'être structurées
- Une ligne en haut indique les champs, et les colonnes suivent.
- Le format étendu du W3C, et tout ce qui a repris l'idée
- Vous nommez la directive, il n'est donc pas nécessaire de l'épeler.
#Champs - Rien à synchroniser : le fichier est la source de la liste des colonnes
- Attribuez à chaque colonne un nom, un début et une longueur : aucun séparateur n’est nécessaire
- La bonne réponse pour les fichiers où un champ peut contenir le délimiteur
- Cependant, que font encore les ordinateurs centraux, les contrôleurs et de nombreux équipements industriels ?
- Le remplissage est supprimé, de sorte qu'une valeur n'apparaît pas entourée d'espaces.
Créer vous-même la description est la solution la plus rapide. S’il s’agit d’un format utilisé par beaucoup de personnes, nous préférons le proposer comme profil intégré, verrouillé par l’Agent pour tout le monde. Le connecteur renvoie directement vers une demande, et le profil est ajouté lors d’une mise à jour de l’Agent.
Décrivez-le une seule fois, utilisez-le partout où vous travaillez
Décrivez-le une seule fois, Utilisez-le partout où vous courez
Une description fait partie du connecteur, pas d’une machine. Les cinq mêmes composants qui lisent le fichier d’audit au siège le lisent aussi à l’usine et dans une deuxième région — et chaque site exécute un Network Agent qui lit les fichiers là où ils se trouvent et se connecte à Query Streams. Du point de vue de votre pare-feu, il s’agit d’une connexion sortante ordinaire : rien à ouvrir et aucun VPN à mettre en place.
Trois connexions sortantes, un seul endroit pour les interroger — aucun port entrant, aucun VPN, aucun changement au pare-feu
Vous nommez l'identité
Chaque ligne indique d’où elle provient. Par défaut, il s’agit du nom du fichier. Si la machine ou le site figure dans un champ de la ligne — ou dans une partie du nom de fichier — vous pouvez utiliser cette valeur comme étiquette et regrouper les lignes selon celle-ci.
nom du fichier · une colonne · une partie du nom de fichier
Rien à ouvrir
L’Agent établit une seule connexion sortante chiffrée ; la requête envoyée et les lignes reçues transitent toutes deux par cette connexion. Aucun port entrant, aucun VPN, aucune modification du pare-feu à demander — et aucun démon collecteur supplémentaire à installer sur un serveur qui en exécute déjà un.
une seule connexion, dans les deux sens
Une requête à travers les régions
Chaque source dans un requête fédérée nomme son propre Agent, afin qu’une seule instruction puisse placer un journal personnalisé à côté de la base de données qui l’explique — le fichier de commandes à côté de la commande à laquelle il se rapporte. Inclus dans les offres Business et Enterprise.
1 journal + 1 base de données → 1 jeu de résultats
Rédigé une seule fois, pas par site
La description d'un format est une opération ponctuelle. Un deuxième dossier de même structure constitue un deuxième connecteur avec la même description ; son déploiement vers un autre emplacement relève donc d'une simple configuration et non d'une nouvelle investigation.
1 description → tous les dossiers similaires
Les quatre questions auxquelles un fichier texte ne répondra pas
Les quatre questions auxquelles un fichier texte ne répondra pas
L'analyse de la ligne est la partie la plus facile. Il s'agit d'informations qu'un fichier journal ne fournit pas sur lui-même, et chacune d'elles est une donnée que vous indiquez plutôt qu'une supposition de notre part.
Où un disque commence et se termine
Une trace de pile correspond à un événement réparti sur vingt lignes ; la lire comme vingt événements fausse donc le décompte. Il existe six façons de marquer la limite : une ligne, un motif ouvrant un enregistrement, une ligne vide, un marqueur d’ouverture et de fermeture, une règle de continuation ou un nombre fixe.
Un enregistrement ne correspond pas toujours à une seule ligne.
L'encodage n'a pas de valeur par défaut
Ce champ est volontairement le seul à être laissé vide. Supposer qu’un fichier Latin-1 est en UTF-8 ne provoque pas d’erreur : cela altère discrètement tous les caractères accentués, et vous ne vous en rendez compte que des mois plus tard. La question est donc posée une seule fois, avant la première synchronisation, au lieu de faire une supposition.
choisi, jamais présumé
L'année où la ligne n'a plus rien
De nombreux formats affichent le mois et le jour, sans plus. Trois façons de déterminer l’année : elle figure dans la ligne, elle est déduite de la date de modification du fichier ou elle est extraite du nom de fichier — là où une archive datée la conserve généralement.
dans la ligne · à partir du fichier · à partir du nom
Rien ne compte deux fois
Chaque fichier est identifié par une empreinte de ses 4 premiers Ko, de sorte qu’un fichier renommé ou en rotation est reconnu au lieu d’être relu depuis le début. Dix modèles de rotation sont reconnus à partir du nom, ainsi que l’absence de rotation pour les fichiers qui ne font que grandir.
Hachage de préfixe de 4 Ko · fenêtre de 20 000 enregistrements
Cinq parties, et ensuite c'est une table
Cinq parties, et ensuite c'est une table
Voici tout ce que vous devez renseigner. Chaque profil intégré des autres pages de journaux se compose de ces mêmes cinq éléments, renseignés par nos soins et épinglés par l’Agent — ici, c’est à vous de les définir.
message une colonne par ligne, et l’heure de l’événement tirée de la date de modification du fichier. Cela suffit pour réussir une première synchronisation avec presque tous les fichiers. Vous pouvez ensuite affiner le résultat à partir de l’aperçu, jusqu’à obtenir les colonnes souhaitées. Chaque ligne indique également le fichier dont elle provient, et toutes les données sont placées dans une seule table, ensembles de fichiers.événements.Ce que cela ne fait pas délibérément
Ce que cela ne fait pas délibérément
Commencez par le plus important : Essayez les profils intégrés avant d'utiliser ceci.. Lancez Test connection : l’Agent vous propose le profil intégré correspondant le mieux à ce qu’il reconnaît. Un profil intégré est épinglé par l’Agent et a été testé sur de vrais fichiers, contrairement à une description que vous venez de rédiger. Ce préréglage est une solution de secours pour les formats utilisés par personne d’autre, pas le point de départ par défaut.
Aucun système ne lit vos journaux pour en déduire le format. La suggestion de correspondance la plus proche compare la structure de votre fichier aux profils fournis : il s’agit d’une correspondance de motifs avec des formats connus, pas d’un modèle qui lit vos données. Si aucun profil ne correspond, vous devez rédiger la description vous-même et vérifier le résultat dans l’aperçu.
Il ne s'agit pas d'un suivi en temps réel. Query Streams lit les fichiers tels qu'ils se trouvent sur le disque lors de l'exécution de la requête ; par conséquent, une tâche en échec apparaît sous forme de lignes et non comme un flux que vous pouvez observer. Si vous avez besoin d'alertes en moins d'une seconde sur une ligne dès son affichage, un pipeline de journalisation est l'outil approprié.
Il lit du texte, et rien que du texte. Les archives et les bases de données binaires présentes dans le dossier — .fermeture éclair, .taxi, comme un fichier journal brut, sont laissées intactes plutôt que d’être ouvertes et analysées à l’aveugle. Les rotations compressées d’un journal texte sont lues ; un conteneur contenant autre chose ne l’est pas.
La description peut être erronée, c'est pourquoi rien n'est supprimé. Une ligne dont la grammaire est incorrecte est conservée brute, accompagnée d'une explication. Ainsi, une erreur apparaît clairement et peut être vérifiée, plutôt que comme une lacune invisible. Corrigez la description et resynchronisez. Le reste suit le fonctionnement habituel : l'agent se connecte et lit les fichiers, rien n'est installé sur le serveur, aucune donnée n'est écrite et l'accès est en lecture seule.
De la connexion à des résultats utiles.
- Installez le Network Agent à un endroit où il peut accéder au dossier, puis indiquez-le au connecteur.
- Lancez d’abord Test connection. L’Agent identifie ce qu’il trouve et vous propose le profil intégré correspondant le mieux. Si l’un d’eux convient, sélectionnez-le : vous n’avez rien d’autre à décrire.
- Si aucun profil ne convient, décrivez vous-même le format : où commence un enregistrement, laquelle des six grammaires il utilise, où se trouve l’horodatage et comment nommer les colonnes.
- Choisissez le modèle de rotation et, pour les formats dont les horodatages ne précisent pas l’année, indiquez d’où elle doit provenir. La description est alors épinglée.
- Interrogez les données. La table se comporte exactement comme celle de tout autre connecteur de journaux, car le même pilote lit un format que vous avez fourni au lieu d’un format que nous avons fourni.
Exploitez les résultats de Custom Logs.
Une seule connexion alimente vos feuilles de calcul, vos applications et vos outils d’IA. Accordez l’autorisation d’exécuter une requête enregistrée ; les destinataires voient les résultats autorisés, sans accès au SQL ni aux identifiants de connexion à la source.
Pour votre équipe, vos fournisseurs et vos partenaires
Importez directement les résultats en temps réel de Custom Logs dans une feuille de calcul et actualisez-les à la demande : Excel pour ordinateur, Excel Online, Microsoft 365.
Découvrir ExcelExécutez une requête Custom Logs enregistrée depuis la barre latérale et insérez les lignes dans la feuille. Les collaborateurs avec lesquels vous la partagez peuvent l’actualiser eux-mêmes.
Découvrir Google SheetsPosez une question en langage courant. Nova connaît déjà vos tables Custom Logs, écrit et exécute le SQL, explique la réponse et la représente sous forme de graphique — sans requête à rédiger ni identifiants à transmettre.
Comment fonctionne NovaPartagez un résultat Custom Logs en direct avec qui vous voulez — collègue, fournisseur ou partenaire — sous la forme d’une grille accessible par signet, qui relance la requête pour obtenir des données à jour à chaque ouverture, sur téléphone, tablette ou ordinateur. Les destinataires voient les résultats, jamais le SQL ni les fichiers.
Fonctionnement du visualiseur de donnéesPour les applications et les systèmes
Publiez une requête Custom Logs sous forme de point de terminaison JSON authentifié, utilisable par n’importe quelle application, avec une spécification OpenAPI 3.1 et des collections Postman, Insomnia et Hoppscotch prêtes à l’emploi. Aucun port de base de données n’est ouvert.
Découvrir l’API RESTCollez le code Power Query M généré dans l’éditeur avancé de Power BI : le rapport récupère alors les résultats Custom Logs en temps réel via HTTPS — sans pilote ODBC ni ouverture de port de base de données.
Découvrir Power BISynchronisez les lignes Custom Logs dans une base Airtable selon un calendrier ou récupérez-les dans un script d’automatisation Airtable.
Découvrir AirtableAlimentez une table Baserow à partir de Custom Logs via le point de terminaison REST, que Baserow soit auto-hébergé ou dans le cloud.
Découvrir BaserowMaintenez une base SeaTable à jour avec les données Custom Logs, sans exporter de fichier ni exposer la base de données.
Découvrir SeaTableEnvoyez les résultats Custom Logs dans une grille Smartsheet afin que les plans et les rapports utilisent les données du système source, et non celles d’un export de la semaine dernière.
Découvrir SmartsheetAlimentez une application Python Anvil avec Custom Logs via le point de terminaison REST, au lieu d’intégrer des identifiants de base de données dans l’application.
Découvrir AnvilPour les outils d'IA
Donnez à un assistant IA un accès en lecture seule à Custom Logs et au schéma nécessaire pour rédiger des requêtes SQL correctes — sans identifiants dans la conversation.
Découvrir MCPLivré aux personnes
Planifiez l’exécution d’une requête Custom Logs et faites envoyer les lignes vers Slack, Discord, par e-mail ou vers un webhook signé. Vous pouvez aussi retenir le message jusqu’à ce que le nombre de lignes, un seuil ou un pourcentage de variation dépasse la limite que vous avez définie.
Fonctionnement des alertes et des rapportsAssociez Custom Logs au reste de vos données.
Rassemblez bases de données, API métier, fichiers et journaux dans une seule requête en lecture seule. Tous les connecteurs prennent en charge les requêtes fédérées.
Indiquez le nom des connexions et des tables. Query Streams gère les requêtes sur les sources et combine les résultats.
Découvrir les requêtes fédérées-- rien copié, rien fusionné, rien programmé
SELECTIONNER c.region, COUNT(*) AS commandes, SUM(i.montant_dû) AS facturé
DE customlogs.fileset.orders1 f
JOINDRE pg_crm.public.clients2 c ON c.id = f.customer_id
JOINDRE facturation.stripe.factures3 i ON i.customer = c.stripe_id
GROUPE PAR région c.
ORDER BY facturé DESC;Utilisez vos propres noms de connexions, de schémas, de tables et de colonnes.
Partagé par toute la famille de connecteurs.
Chaque connecteur de journaux vous fournit également
- events — une ligne par ligne analysée, avec son horodatage, les champs nommés par la grammaire et _source_file, qui indique le fichier d’origine.
- events_raw_lines — les lignes non reconnues par la grammaire, conservées telles quelles plutôt que supprimées. Ainsi, même un format imprévu reste exploitable pour répondre à vos questions.
- files_current et files_events — l’inventaire actuel et la piste d’audit : les éléments apparus, ceux qui ont subi une rotation, ceux qui ont disparu et ceux qui ont été mis en attente, avec le nom du fichier et la raison.
- La rotation est prise en charge, et non contournée : dix modèles de rotation nommés, plus les fichiers sans rotation, pour que le journal d’hier et son archive compressée appartiennent à la même table que celui d’aujourd’hui.
Bon à savoir
- Lecture seule, garantie : une instruction à la fois, SELECT et opérations similaires uniquement. Nous n’écrivons jamais dans vos journaux, ne les déplaçons pas, ne les faisons pas tourner et ne les tronquons pas.
- Aucune donnée n’est téléversée : les lignes sont analysées et mises en cache de manière chiffrée sur votre propre machine, à côté de l’agent. Seul le résultat d’une requête quitte votre réseau.
- Seuls les nouveaux octets sont lus : l’agent reprend là où il s’était arrêté dans chaque fichier au lieu de le relire. Ainsi, un journal très actif n’entraîne pas de surcoût chaque jour.
- Le dialecte SQL est DuckDB — le même SQL que celui que vous utiliseriez avec n’importe quel autre connecteur.
Questions sur Custom Logs
Où puis-je utiliser les résultats des requêtes Custom Logs ?
Utilisez les résultats de Custom Logs dans Excel, Google Sheets, la visionneuse de données, vos applications via l’API REST de la base de données et les outils d’IA via MCP ou Nova. Les résultats enregistrés alimentent également les destinations Automation prises en charge, les rapports et les alertes. La disponibilité des destinations et les quotas dépendent de votre forfait.
Dois-je ouvrir un port entrant pour Custom Logs ?
Non. Installez le Network Agent sur une machine qui peut accéder à Custom Logs. L’agent se connecte à Query Streams depuis l’extérieur ; aucun port entrant ni VPN n’est nécessaire. Votre source doit toutefois autoriser la machine de l’agent à s’y connecter conformément à ses propres règles d’accès.
Mes fichiers Custom Logs sont-ils téléversés ?
Le Network Agent lit les fichiers là où ils se trouvent et conserve son cache sur la machine de l’agent. Les fichiers source ne sont ni téléversés, ni déplacés, ni réécrits. Seuls les résultats de requête demandés quittent votre réseau via la connexion chiffrée sortante.
De quoi ai-je besoin pour connecter Custom Logs ?
Dossier : n’importe quel dossier contenant des journaux texte — sur un disque local ou un partage réseau indiqué sous la forme \\server\share (jamais une lettre de lecteur réseau mappé ; sous Linux ou sur Mac, le partage doit d’abord être monté) ; les sous-dossiers sont inclus, et les motifs d’inclusion et d’exclusion sont pris en charge. Grammaires : délimité, clé = valeur, grok, lignes JSON, directive d’en-tête #Fields et largeur fixe. Limites des enregistrements : à vous de les définir — une ligne par enregistrement, ou un motif, un nombre fixe, une ligne vide ou un marqueur sentinelle, afin que les enregistrements sur plusieurs lignes restent entiers. Horodatages : leur position et leur format sont décrits ; si l’année est absente de la ligne, elle peut être déduite de la date de modification du fichier ou de son nom.
Puis-je joindre Custom Logs à d’autres sources connectées ?
Oui. Les requêtes fédérées prennent en charge tous les types de connecteurs, notamment les bases de données, les API métier, les fichiers et les journaux. Indiquez le nom des connexions et des tables dans une seule requête en lecture seule. Query Streams traduit au besoin les portions destinées aux sources et combine les résultats. Découvrez le fonctionnement des requêtes fédérées.
Quand dois-je utiliser ceci plutôt qu'un profil intégré ?
Quand aucune autre option ne convient. Les profils intégrés couvrent les contrôleurs de machines, les serveurs web, les conteneurs, les frameworks d’application et les journaux système ; chacun a été créé et testé avec de vrais fichiers. Si votre journal correspond à l’un d’eux, le sélectionner demande moins de travail et a été mieux testé que de le décrire vous-même.
Effectuez un test de connexion avant de prendre votre décision. L'agent compare la structure de votre fichier aux profils fournis et vous propose le profil le plus proche qu'il reconnaît. La réponse est donc basée sur vos fichiers réels et non sur une supposition. Si le test ne donne aucun résultat, consultez la description.
Ai-je besoin de connaître les expressions régulières ?
Généralement non. Cinq des six grammaires n'ont besoin d'aucun modèle : un fichier délimité nécessite un séparateur, un fichier clé=valeur se décrit lui-même, les lignes JSON se décrivent elles-mêmes, une directive d'en-tête nomme ses propres colonnes et une largeur fixe nécessite un début et une longueur par colonne.
Grok est la sixième option et la solution de repli pour les lignes vraiment difficiles à traiter. Même dans ce cas, vous assemblez surtout des éléments nommés — un horodatage, un niveau, le reste — et les bibliothèques de motifs utilisées par les profils intégrés sont là pour vous servir de référence, plutôt que de partir d’une page blanche.
Dois-je absolument rédiger la description correctement du premier coup ?
Non, et les paramètres par défaut sont configurés pour que vous n'ayez pas à le faire. Dès l'installation, une première synchronisation réussit sur presque tous les fichiers texte : un message une colonne par ligne, l’heure de l’événement étant déterminée à partir de la date de modification du fichier. Vous obtenez ainsi une table fonctionnelle que vous pouvez consulter.
Vous pouvez ensuite affiner la configuration. L’aperçu montre l’effet de votre description sur vos propres lignes : vous pouvez ainsi extraire la gravité ou le numéro de tâche dans une colonne distincte et voir le résultat avant de valider. Modifiez-la plus tard et resynchronisez : rien n’aura été perdu entre-temps.
Mes événements s'étendent sur plusieurs lignes. Peut-il gérer une trace de pile ?
Oui, c’est le réglage dont les utilisateurs ont le plus souvent besoin. Un enregistrement ne se limite pas à une ligne : vous pouvez définir qu’un enregistrement commence dès qu’une ligne correspond à un motif — généralement un horodatage en début de ligne — et que tout ce qui suit appartient à cet enregistrement jusqu’à la prochaine correspondance.
Il existe cinq autres façons de tracer la limite si cette forme n'est pas celle-ci : une ligne vide entre les enregistrements, un marqueur d'ouverture et de fermeture, une règle définissant ce qui constitue une ligne de continuation, ou un nombre fixe de lignes. Une exception de vingt lignes apparaît alors comme une seule ligne contenant la trace complète.
Que se passe-t-il si les lignes ne comportent aucun horodatage ?
C’est le cas par défaut, et cela fonctionne. Si aucun champ n’est désigné comme champ temporel, l’heure de l’événement est déterminée à partir de la date de modification du fichier : les lignes restent donc triables et respectent toujours une période de conservation, mais leur heure est précise à l’échelle du fichier, et non de la ligne.
Si l’heure figure dans la ligne, mais est répartie sur deux champs — une colonne de date et une colonne d’heure, ce qui est courant dans les fichiers à largeur fixe et délimités —, vous pouvez indiquer les deux afin de les combiner en un seul horodatage.
Quel encodage dois-je choisir ?
L'encodage UTF-8 est la solution idéale pour la plupart des fichiers écrits ces dix dernières années. C'est le seul champ sans valeur par défaut, et c'est intentionnel : supposer que l'encodage UTF-8 sur un fichier Latin-1 ne génère pas d'erreur signifie qu'il corrompt silencieusement tous les caractères accentués, et une corruption silencieuse est bien plus problématique qu'une simple question posée.
Si vous avez un doute, l’aperçu vous le dira : un encodage incorrect se manifeste immédiatement par du texte illisible dans les lignes d’exemple. Les anciens logiciels Windows et les équipements industriels sont les raisons les plus courantes pour lesquelles la réponse n’est pas UTF-8.
Pouvez-vous simplement ajouter mon format comme format intégré ?
Contactez-nous. S’il s’agit d’un format utilisé par un nombre raisonnable de personnes — un produit commercial, un framework courant, un équipement industriel —, nous préférons de loin l’ajouter comme profil intégré plutôt que de demander à chaque client de décrire la même chose. Le connecteur contient un lien direct pour en faire la demande.
Une solution intégrée est meilleure pour vous comme pour nous : elle est validée par l’agent, testée avec des captures réelles et elle arrive sur vos serveurs avec une mise à jour de l’agent, sans qu’il soit nécessaire que quiconque touche à un connecteur.
Que deviennent les lignes qui ne correspondent pas ?
Elles sont conservées, non supprimées. Une ligne dont la grammaire ne correspond pas est conservée comme une ligne brute avec une explication, de sorte qu'une entrée étrange, un format qui a changé sous votre responsabilité ou une description encore incomplète apparaissent comme des éléments visibles et vérifiables plutôt que comme une lacune silencieuse dans vos données.
C’est ce filet de sécurité qui permet d’affiner une description en toute confiance. Vous n’avez jamais à choisir entre un analyseur strict qui élimine des données et un analyseur permissif qui vous donne un mur de texte : les lignes analysées sont typées, et tout ce qui n’a pas été analysé reste disponible à côté.
Placez Custom Logs là où le travail s’effectue.
Commencez avec l’offre Free : tous les types de connecteurs, 2 sources de données et 1 Network Agent. Ajoutez les quotas de votre offre à mesure que vos besoins évoluent.

