seqcli
L'application de ligne de commande du client Seq. Prend en charge la journalisation ( seqcli log
), la recherche ( search
), la queue ( tail
), les requêtes ( query
) et l'ingestion de fichiers journaux JSON ou en texte brut ( ingest
), et bien plus encore.
Le programme d'installation Seq pour Windows inclut seqcli
. Sinon, téléchargez la version correspondant à votre système d'exploitation. Ou, si dotnet
est installé, seqcli
peut être installé en tant qu'outil global en utilisant :
dotnet tool install --global seqcli
Pour définir une URL de serveur et une clé API par défaut, exécutez :
seqcli config -k connection.serverUrl -v https://your-seq-server
seqcli config -k connection.apiKey -v your-api-key
La clé API sera stockée dans votre fichier de configuration SeqCli.json
; sous Windows, celui-ci est crypté à l'aide de DPAPI ; sur Mac/Linux, la clé est actuellement stockée en texte brut. Au lieu de stocker la clé API dans la configuration, elle peut être transmise à chaque commande via l'argument --apikey=
.
seqcli
est également disponible en tant que conteneur Docker sous datalust/seqcli
:
docker run --rm datalust/seqcli:latest []
Pour vous connecter à Seq dans un conteneur Docker sur la machine locale, utilisez l'adresse IP de la machine (et non localhost) ou spécifiez la mise en réseau de l'hôte Docker avec --net host
.
Utilisez les réseaux et les volumes Docker pour rendre les fichiers locaux et autres conteneurs accessibles à seqcli
dans son conteneur.
Chaque valeur de paramètre peut être remplacée au moment de l'exécution en spécifiant une variable d'environnement de la forme SEQCLI_
, où contient un élément pour chaque segment en pointillés du nom du paramètre, séparé par des traits de soulignement.
Par exemple, le paramètre connection.serverUrl
peut être remplacé par la variable SEQCLI_CONNECTION_SERVERURL
.
Si vous automatisez la configuration de Seq, il est probable que vous n'ayez pas encore de clé API à utiliser pour seqcli
. Lors de la configuration initiale du serveur Seq, vous pouvez spécifier firstRun.adminUsername
et firstRun.adminPasswordHash
(ou les variables d'environnement équivalentes SEQ_FIRSTRUN_ADMINUSERNAME
et SEQ_FIRSTRUN_ADMINPASSWORDHASH
) pour définir un nom d'utilisateur et un mot de passe initiaux pour le compte administrateur. Vous pouvez les utiliser pour créer une clé API, puis utiliser le jeton de clé API avec les commandes seqcli
restantes.
La commande seqcli apikey create
accepte --connect-username
et --connect-password-stdin
et imprime le nouveau jeton de clé API sur STDOUT
(la syntaxe PowerShell est utilisée ci-dessous) :
$user = "admin"
$pw = "thepassword"
$token = (
echo $pw |
seqcli apikey create `
-t CLI `
--permissions="Read,Write,Project,Organization,System" `
--connect-username $user --connect-password-stdin
)
Voir CONTRIBUTING.md
.
Lors de la connexion avec une clé API, les opérations autorisées sont déterminées par les autorisations attribuées à cette clé API.
Pour déterminer l'autorisation requise pour une commande, vérifiez la colonne « Demande d'autorisation » de l'opération API du serveur équivalente. Par exemple, la commande apikey create
utilise le point de terminaison POST api/apikeys
, qui nécessite l'autorisation Write
.
Toutes les commandes seqcli
suivent le même modèle :
seqcli []
La liste complète des commandes prises en charge peut être consultée en exécutant :
seqcli help
Pour afficher les informations d'utilisation d'une commande spécifique, exécutez seqcli help
, par exemple :
seqcli help apikey create
Cela fonctionne également pour les groupes de commandes ; pour lister toutes les sous-commandes apikey
, exécutez :
seqcli help apikey
apikey
apikey create
— Créez une clé API pour l'automatisation ou l'ingestion.apikey list
— Répertorie les clés API disponibles.apikey remove
— Supprimez une clé API du serveur.apikey update
— Mettez à jour une clé API existante.app
app define
— Générez une définition d'application pour un plug-in .NET [SeqApp]
.app install
: installez un package d'application.app list
— Répertorie les packages d'applications installés.app run
— Hébergez un plug-in .NET [SeqApp]
.app uninstall
: désinstallez un package d'application.app update
: mettez à jour un package d'application installé.appinstance
appinstance create
— Créez une instance d'une application installée.appinstance list
— Répertorie les instances des applications installées.appinstance remove
— Supprimez une instance d'application du serveur.appinstance update
— Mettez à jour une instance d'application existante.bench
— Mesurez les performances des requêtes.config
— Afficher et définir les champs dans le fichier SeqCli.json
; exécuter sans argument pour lister tous les champs.dashboard
dashboard list
— Répertoriez les tableaux de bord.dashboard remove
— Supprimez un tableau de bord du serveur.dashboard render
— Produisez un ensemble de résultats CSV ou JSON à partir d'un graphique de tableau de bord.expressionindex
expressionindex create
— Crée un index d'expression.expressionindex list
— Répertorie les index d’expression.expressionindex remove
— Supprime un index d'expression du serveur.feed
feed create
— Créez un flux NuGet.feed list
— Répertorie les flux NuGet.feed remove
— Supprimez un flux NuGet du serveur.feed update
— Mettez à jour un flux NuGet existant.help
— Afficher des informations sur les commandes disponibles.index
index list
— Répertorie les index.index suppress
— Supprime un index.ingest
— Envoyez les événements du journal à partir d'un fichier ou STDIN
.license apply
— Appliquez une licence au serveur Seq.log
— Envoyez un événement de journal structuré au serveur.node
node demote
— Commencer la rétrogradation du nœud leader actuel.node health
— Sondez le point de terminaison /health
d'un nœud Seq et imprimez le code d'état HTTP renvoyé, ou « Inaccessible » si le point de terminaison n'a pas pu être interrogé.node list
— Répertoriez les nœuds du cluster Seq.print
— Imprimez joliment les événements au format CLEF/JSON, à partir d'un fichier ou STDIN
.profile
profile create
— Créez ou remplacez un profil de connexion.profile list
— Répertorie les profils de connexion.profile remove
— Supprime un profil de connexion.query
— Exécutez une requête SQL et recevez les résultats au format CSV.retention
retention create
— Créez une stratégie de rétention.retention list
— Répertoriez les politiques de rétention.retention remove
— Supprimez une stratégie de rétention du serveur.retention update
: mettez à jour une stratégie de rétention existante.sample
sample ingest
: enregistrez des exemples d'événements dans une instance Seq.sample setup
: configurez une instance Seq avec des exemples de tableaux de bord, de signaux, d'utilisateurs, etc.search
— Récupérez les événements du journal qui correspondent à un filtre donné.setting
setting clear
— Supprimez un paramètre de serveur configurable au moment de l'exécution.setting names
— Imprimez les noms de tous les paramètres pris en charge.setting set
— Modifiez un paramètre de serveur configurable au moment de l'exécution.setting show
— Imprime la valeur actuelle d'un paramètre de serveur configurable à l'exécution.signal
signal create
— Crée un signal.signal import
— Importez des signaux au format JSON délimité par des nouvelles lignes.signal list
— Répertorie les signaux disponibles.signal remove
— Supprime un signal du serveur.signal update
— Mettre à jour un signal existant.tail
— Diffusez les événements du journal correspondant à un filtre.template
template export
— Exportez des entités dans des fichiers modèles.template import
— Importez des entités à partir de fichiers modèles.user
user create
— Créer un utilisateur.user list
— Répertoriez les utilisateurs.user remove
— Supprime un utilisateur du serveur.user update
— Mettre à jour un utilisateur existant.version
— Imprime la version actuelle de l'exécutable.workspace
workspace create
— Créez un espace de travail.workspace list
— Répertorie les espaces de travail disponibles.workspace remove
— Supprimez un espace de travail du serveur.workspace update
— Mettez à jour un espace de travail existant.apikey create
Créez une clé API pour l'automatisation ou l'ingestion.
Exemple:
seqcli apikey create -t 'Test API Key' -p Environment=Test
Option | Description |
---|---|
-t , --title=VALUE | Un titre pour la clé API |
--token=VALUE | Un jeton de clé API pré-attribué ; par défaut, un nouveau jeton sera généré et écrit dans STDOUT |
-p , --property=NAME=VALUE | Spécifiez les propriétés nom/valeur, par exemple -p Customer=C123 -p Environment=Production |
--filter=VALUE | Un filtre à appliquer aux événements entrants |
--minimum-level=VALUE | Le niveau/gravité minimum de l'événement à accepter ; la valeur par défaut est d'accepter tous les événements |
--use-server-timestamps | Supprimer les horodatages fournis par le client et utiliser les valeurs d'horloge du serveur |
--permissions=VALUE | Une liste d'autorisations séparées par des virgules à déléguer à la clé API ; les autorisations valides sont Ingest (par défaut), Read , Write , Project et System |
--connect-username=VALUE | Un nom d'utilisateur avec lequel se connecter, utile principalement lors de la configuration de la première clé API ; les serveurs avec un abonnement 'Individuel' n'autorisent qu'une seule requête simultanée avec cette option |
--connect-password=VALUE | Lorsque connect-username est spécifié, un mot de passe correspondant |
--connect-password-stdin | Lorsque connect-username est spécifié, lisez le mot de passe correspondant depuis STDIN |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
apikey list
Répertoriez les clés API disponibles.
Exemple:
seqcli apikey list
Option | Description |
---|---|
-t , --title=VALUE | Le titre de la ou des clés API à lister |
-i , --id=VALUE | L'identifiant d'une seule clé API à répertorier |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
apikey remove
Supprimez une clé API du serveur.
Exemple:
seqcli apikey remove -t 'Test API Key'
Option | Description |
---|---|
-t , --title=VALUE | Le titre de la ou des clés API à supprimer |
-i , --id=VALUE | L'identifiant d'une seule clé API à supprimer |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
apikey update
Mettez à jour une clé API existante.
Exemple:
seqcli apikey update --json '{...}'
Option | Description |
---|---|
--json=VALUE | La clé API mise à jour au format JSON ; cela peut être produit en utilisant seqcli apikey list --json |
--json-stdin | Lire la clé API mise à jour au format JSON depuis STDIN |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
app define
Générez une définition d'application pour un plug-in .NET [SeqApp]
.
Exemple:
seqcli app define -d "./bin/Debug/netstandard2.2"
Option | Description |
---|---|
-d , --directory=VALUE | Le répertoire contenant les assemblys .NET Standard ; par défaut le répertoire courant |
--type=VALUE | Le nom du type de plug-in [SeqApp] ; par défaut, l'analyse des assemblys pour un seul type marqué avec cet attribut |
--indented | Formater la définition sur plusieurs lignes avec indentation |
app install
Installez un package d'application.
Exemple:
seqcli app install --package-id 'Seq.App.JsonArchive'
Option | Description |
---|---|
--package-id=VALUE | L'identifiant du package de l'application à installer |
--version=VALUE | La version du package à installer ; la valeur par défaut est d'installer la dernière version |
--feed-id=VALUE | L’identifiant du flux NuGet à partir duquel installer le package ; peut être omis si un seul flux est configuré |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
app list
Répertoriez les packages d’applications installés.
Exemple:
seqcli app list
Option | Description |
---|---|
--package-id=VALUE | L'identifiant du package de la ou des applications à répertorier |
-i , --id=VALUE | L'identifiant d'une seule application à répertorier |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
app run
Hébergez un plug-in .NET [SeqApp]
.
Exemple:
seqcli tail --json | seqcli app run -d "./bin/Debug/netstandard2.2" -p [email protected]
Option | Description |
---|---|
-d , --directory=VALUE | Le répertoire contenant les assemblys .NET Standard ; par défaut le répertoire courant |
--type=VALUE | Le nom du type de plug-in [SeqApp] ; par défaut, l'analyse des assemblys pour un seul type marqué avec cet attribut |
-p , --property=NAME=VALUE | Spécifiez les paramètres de nom/valeur pour l'application, par exemple -p [email protected] -p Subject="Alert!" |
--storage=VALUE | Un répertoire dans lequel les données spécifiques à l'application peuvent être stockées ; par défaut le répertoire courant |
-s , --server=VALUE | L'URL du serveur Seq, utilisée uniquement pour la configuration de l'application (aucune connexion n'est établie avec le serveur) ; par défaut, la valeur connection.serverUrl sera utilisée |
--server-instance=VALUE | Le nom d'instance du serveur Seq, utilisé uniquement pour la configuration de l'application ; par défaut, aucun nom d'instance |
-t , --title=VALUE | Le titre de l'instance d'application, utilisé uniquement pour la configuration de l'application ; par défaut, il s'agit d'un titre d'espace réservé. |
--id=VALUE | L'identifiant de l'instance d'application, utilisé uniquement pour la configuration de l'application ; par défaut, il s'agit d'un identifiant d'espace réservé. |
--read-env | Lisez la configuration et les paramètres de l'application à partir des variables d'environnement, comme spécifié dans https://docs.datalust.co/docs/seq-apps-in-other-linguals ; ignore toutes les options sauf --directory et --type |
app uninstall
Désinstallez un package d’application.
Exemple:
seqcli app uninstall --package-id 'Seq.App.JsonArchive'
Option | Description |
---|---|
--package-id=VALUE | L'identifiant du package d'application à désinstaller |
-i , --id=VALUE | L'identifiant d'un seul package d'application à désinstaller |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
app update
Mettez à jour un package d’application installé.
Exemple:
seqcli app update -n 'HTML Email'
Option | Description |
---|---|
-i , --id=VALUE | L'identifiant d'une seule application installée à mettre à jour |
-n , --name=VALUE | Le nom de l'application installée à mettre à jour |
--all | Mettez à jour toutes les applications installées ; non compatible avec -i ou -n |
--version=VALUE | La version du package vers laquelle mettre à jour ; la valeur par défaut est de mettre à jour vers la dernière version dans le flux associé |
--force | Mettez à jour l'application même si la version cible est déjà installée |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
appinstance create
Créez une instance d'une application installée.
Exemple:
seqcli appinstance create -t 'Email Ops' --app hostedapp-314159 -p [email protected]
Option | Description |
---|---|
-t , --title=VALUE | Un titre pour l'instance d'application |
--app=VALUE | L'identifiant du package d'application installé à instancier |
-p , --property=NAME=VALUE | Spécifiez les paramètres de nom/valeur pour l'application, par exemple -p [email protected] -p Subject="Alert!" |
--stream[=VALUE] | Diffusez les événements entrants sur cette instance d'application au fur et à mesure de leur ingestion ; accepte éventuellement une expression de signal limitant les événements à diffuser, par exemple signal-1,signal-2 |
--overridable=VALUE | Spécifiez les noms de paramètres qui peuvent être remplacés par les utilisateurs lors de l'appel de l'application |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
appinstance list
Répertoriez les instances des applications installées.
Exemple:
seqcli appinstance list
Option | Description |
---|---|
-t , --title=VALUE | Le titre de la ou des instances d'application à répertorier |
-i , --id=VALUE | L'identifiant d'une seule instance d'application à répertorier |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
appinstance remove
Supprimez une instance d'application du serveur.
Exemple:
seqcli appinstance remove -t 'Email Ops'
Option | Description |
---|---|
-t , --title=VALUE | Le titre de la ou des instances d'application à supprimer |
-i , --id=VALUE | L'identifiant d'une seule instance d'application à supprimer |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
appinstance update
Mettez à jour une instance d'application existante.
Exemple:
seqcli appinstance update --json '{...}'
Option | Description |
---|---|
--json=VALUE | L'instance d'application mise à jour au format JSON ; cela peut être produit en utilisant seqcli appinstance list --json |
--json-stdin | Lire l'instance d'application mise à jour au format JSON à partir de STDIN |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
bench
Mesurez les performances des requêtes.
Option | Description |
---|---|
-r , --runs=VALUE | Le nombre d'exécutions à exécuter ; la valeur par défaut est 10 |
-c , --cases=VALUE | Un fichier JSON contenant l'ensemble des cas à exécuter. La valeur par défaut est un ensemble standard de cas. |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
--start=VALUE | Date/heure ISO 8601 à partir de laquelle effectuer la requête |
--end=VALUE | Date/heure ISO 8601 à rechercher |
--reporting-server=VALUE | L'adresse d'un serveur Seq auquel envoyer les résultats du banc d'essai |
--reporting-apikey=VALUE | La clé API à utiliser lors de la connexion au serveur de reporting |
--description=VALUE | Description facultative du test au banc |
--with-ingestion | Le benchmark devrait-il inclure l'envoi d'événements à Seq |
--with-queries | Le benchmark devrait-il inclure l'interrogation de Seq |
config
Afficher et définir les champs dans le fichier SeqCli.json
; exécuter sans argument pour lister tous les champs.
Option | Description |
---|---|
-k , --key=VALUE | Le champ, par exemple connection.serverUrl |
-v , --value=VALUE | La valeur du champ ; si non spécifié, la commande imprimera la valeur actuelle |
-c , --clear | Dégagez le terrain |
dashboard list
Répertorier les tableaux de bord.
Exemple:
seqcli dashboard list
Option | Description |
---|---|
-t , --title=VALUE | Le titre du ou des tableaux de bord à lister |
-i , --id=VALUE | L'identifiant d'un seul tableau de bord à lister |
-o , --owner=VALUE | L'identifiant de l'utilisateur pour lequel répertorier les tableaux de bord ; par défaut, les tableaux de bord partagés sont répertoriés |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
dashboard remove
Supprimez un tableau de bord du serveur.
Exemple:
seqcli dashboard remove -i dashboard-159
Option | Description |
---|---|
-t , --title=VALUE | Le titre du ou des tableaux de bord à supprimer |
-i , --id=VALUE | L'identifiant d'un seul tableau de bord à supprimer |
-o , --owner=VALUE | L'identifiant de l'utilisateur pour lequel supprimer les tableaux de bord ; par défaut, les tableaux de bord partagés sont supprimés |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
dashboard render
Produisez un ensemble de résultats CSV ou JSON à partir d'un tableau de bord.
Exemple:
seqcli dashboard render -i dashboard-159 -c 'Response Time (ms)' --last 7d --by 1h
Option | Description |
---|---|
-i , --id=VALUE | L'identifiant d'un seul tableau de bord à restituer |
-c , --chart=VALUE | Le titre d'un graphique sur le tableau de bord à restituer |
--last=VALUE | Une durée pendant laquelle le graphique doit être rendu, par exemple 7d ; celui-ci sera aligné sur une limite d'intervalle ; soit --last ou --start et --end doivent être spécifiés |
--by=VALUE | L'intervalle de temps pour les données du graphique, sous forme de durée, par exemple 1h |
--start=VALUE | Date/heure ISO 8601 à partir de laquelle effectuer la requête |
--end=VALUE | Date/heure ISO 8601 à rechercher |
--signal=VALUE | Une expression de signal ou une liste d'identifiants de signaux croisés à appliquer, par exemple signal-1,signal-2 |
--timeout=VALUE | Le délai d'exécution en millisecondes |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
expressionindex create
Créez un index d'expression.
Exemple:
seqcli expressionindex create --expression "ServerName"
Option | Description |
---|---|
-e , --expression=VALUE | L'expression à indexer |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
expressionindex list
Répertoriez les index d’expression.
Exemple:
seqcli expressionindex list
Option | Description |
---|---|
-i , --id=VALUE | L'identifiant d'un index d'expression unique à lister |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
expressionindex remove
Supprimez un index d'expression du serveur.
Exemple:
seqcli expressionindex -i expressionindex-2529
Option | Description |
---|---|
-i , --id=VALUE | L'identifiant d'un index d'expression à supprimer |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
feed create
Créez un flux NuGet.
Exemple:
seqcli feed create -n 'CI' --location="https://f.feedz.io/example/ci" -u Seq --password-stdin
Option | Description |
---|---|
-n , --name=VALUE | Un nom unique pour le flux |
-l , --location=VALUE | L'emplacement du flux ; il peut s'agir d'une URL de flux NuGet v2 ou v3, ou d'un chemin de système de fichiers local sur le serveur Seq |
-u , --username=VALUE | Le nom d'utilisateur Seq doit être fourni lors de la connexion au flux, si une authentification est requise |
-p , --password=VALUE | Un mot de passe du flux, si une authentification est requise ; notez que --password-stdin est plus sécurisé |
--password-stdin | Lire le mot de passe du flux depuis STDIN |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
feed list
Répertoriez les flux NuGet.
Exemple:
seqcli feed list
Option | Description |
---|---|
-n , --name=VALUE | Le nom du flux à lister |
-i , --id=VALUE | L'identifiant d'un seul flux à lister |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
feed remove
Supprimez un flux NuGet du serveur.
Exemple:
seqcli feed remove -n CI
Option | Description |
---|---|
-n , --name=VALUE | Le nom du flux à supprimer |
-i , --id=VALUE | L'identifiant d'un seul flux à supprimer |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
feed update
Mettez à jour un flux NuGet existant.
Exemple:
seqcli feed update --json '{...}'
Option | Description |
---|---|
--json=VALUE | Le flux NuGet mis à jour au format JSON ; cela peut être produit en utilisant seqcli feed list --json |
--json-stdin | Lire le flux NuGet mis à jour au format JSON à partir de STDIN |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
help
Afficher des informations sur les commandes disponibles.
Exemple:
seqcli help search
Option | Description |
---|---|
-m , --markdown | Générer une démarque à utiliser dans la documentation |
index list
Liste des index.
Exemple:
seqcli index list
Option | Description |
---|---|
-i , --id=VALUE | L'identifiant d'un seul index à lister |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
index suppress
Supprimer un index.
Exemple:
seqcli index suppress -i index-2191448f1d9b4f22bd32c6edef752748
Option | Description |
---|---|
-i , --id=VALUE | L'identifiant d'un index à supprimer |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
ingest
Envoyer les événements du journal à partir d'un fichier ou STDIN
.
Exemple:
seqcli ingest -i log-*.txt --json --filter="@Level <> 'Debug'" -p Environment=Test
Option | Description |
---|---|
-i , --input=VALUE | Fichier(s) à ingérer, y compris le caractère générique * ; s'il n'est pas spécifié, STDIN sera utilisé |
--invalid-data=VALUE | Spécifiez comment les données non valides sont traitées : fail (par défaut) ou ignore |
-p , --property=NAME=VALUE | Spécifiez les propriétés nom/valeur, par exemple -p Customer=C123 -p Environment=Production |
-x , --extract=VALUE | Un modèle d'extraction à appliquer aux journaux en texte brut (ignoré lorsque --json est spécifié) |
--json | Lire les événements au format JSON (la valeur par défaut suppose du texte brut) |
-f , --filter=VALUE | Filtrer l'expression pour sélectionner un sous-ensemble d'événements |
-m , --message=VALUE | Un message à associer aux événements ingérés ; La syntaxe https://messagetemplates.org est prise en charge |
-l , --level=VALUE | Le niveau ou la gravité à associer aux événements ingérés ; cela remplacera toutes les informations de niveau présentes dans les événements eux-mêmes |
--send-failure=VALUE | Spécifiez comment les échecs de connexion sont gérés : fail (par défaut), retry , continue ou ignore |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
--batch-size=VALUE | Le nombre maximum d'événements à envoyer dans chaque demande au point de terminaison d'ingestion ; si non spécifié, une valeur de 100 sera utilisée |
license apply
Appliquez une licence au serveur Seq.
Exemple:
seqcli license apply --certificate="license.txt"
Option | Description |
---|---|
-c , --certificate=VALUE | Dossier de certificat ; le fichier doit être du texte UTF-8 |
--certificate-stdin | Lire le certificat de licence de STDIN |
--automatically-refresh | Si la licence concerne un abonnement, consultez périodiquement datalust.co et actualisez automatiquement le certificat lorsque l'abonnement est modifié ou renouvelé. |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
log
Envoyez un événement de journal structuré au serveur.
Exemple:
seqcli log -m 'Hello, {Name}!' -p Name=World -p App=Test
Option | Description |
---|---|
-m , --message=VALUE | Un message à associer à l'événement (la valeur par défaut est de n'envoyer aucun message) ; La syntaxe https://messagetemplates.org est prise en charge |
-l , --level=VALUE | Le niveau ou la gravité de l'événement (la valeur par défaut est Information ) |
-t , --timestamp=VALUE | L'horodatage de l'événement au format ISO-8601 (l'horodatage UTC actuel sera utilisé par défaut) |
-x , --exception=VALUE | Informations supplémentaires sur les exceptions ou les erreurs à envoyer, le cas échéant |
-p , --property=NAME=VALUE | Spécifiez les propriétés nom/valeur, par exemple -p Customer=C123 -p Environment=Production |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
node demote
Commencez la rétrogradation du nœud leader actuel.
Exemple:
seqcli node demote --verbose --wait
Option | Description |
---|---|
--wait | Attendez que le leader soit rétrogradé avant de sortir |
-y , --confirm | Répondez [oui] lorsque vous êtes invité à continuer |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
node health
Sondez le point de terminaison /health
d'un nœud Seq et imprimez le code d'état HTTP renvoyé, ou « Inaccessible » si le point de terminaison n'a pas pu être interrogé.
Exemple:
seqcli node health -s https://seq-2.example.com
Option | Description |
---|---|
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
node list
Répertoriez les nœuds du cluster Seq.
Exemple:
seqcli node list --json
Option | Description |
---|---|
-n , --name=VALUE | Le nom du nœud de cluster à lister |
-i , --id=VALUE | L'identifiant d'un seul nœud de cluster à répertorier |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur ; par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser ; par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey seront utilisées |
print
Joli-imprimer les événements au format CLEF/JSON, à partir d'un fichier ou STDIN
.
Exemple:
seqcli print -i log-20201028.clef
Option | Description |
---|---|
-i , --input=VALUE | Fichier CLEF à lire, incluant le caractère générique * ; s'il n'est pas spécifié, STDIN sera utilisé |
-f , --filter=VALUE | Filtrer l'expression pour sélectionner un sous-ensemble d'événements |
--template=VALUE | Spécifiez un modèle de sortie pour contrôler le formatage du texte brut |
--invalid-data=VALUE | Spécifiez comment les données non valides sont traitées : fail (par défaut) ou ignore |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
profile create
Créez ou remplacez un profil de connexion.
Exemple:
seqcli profile create -n Production -s https://seq.example.com -a th15ISanAPIk3y
Option | Description |
---|---|
-n , --name=VALUE | Le nom du profil de connexion |
-s , --server=VALUE | L'URL du serveur Seq |
-a , --apikey=VALUE | La clé API à utiliser lors de la connexion au serveur, si nécessaire |
profile list
Répertoriez les profils de connexion.
Exemple:
seqcli profile list
profile remove
Supprimez un profil de connexion.
Exemple:
seqcli profile remove -n Production
Option | Description |
---|---|
-n , --name=VALUE | Le nom du profil de connexion à supprimer |
query
Exécutez une requête SQL et recevez les résultats au format CSV.
Exemple:
seqcli query -q "select count(*) from stream group by @Level" --start="2018-02-28T13:00Z"
Option | Description |
---|---|
-q , --query=VALUE | La requête à exécuter |
--start=VALUE | Date/heure ISO 8601 à partir de laquelle effectuer la requête |
--end=VALUE | Date/heure ISO 8601 à rechercher |
--signal=VALUE | Une expression de signal ou une liste d'identifiants de signaux croisés à appliquer, par exemple signal-1,signal-2 |
--timeout=VALUE | Le délai d'exécution en millisecondes |
--json | Imprimer la sortie en JSON délimité par des nouvelles lignes (la valeur par défaut est le texte brut) |
--no-color | Ne pas coloriser la sortie du texte |
--force-color | Forcer la sortie redirigée à avoir une couleur ANSI (sauf si --no-color est également spécifié) |
-s , --server=VALUE | L'URL du serveur Seq ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
retention create
Créer une politique de rétention.
Exemple:
seqcli retention create --after 30d --delete-all-events
Option | Description |
---|---|
--after=VALUE | Une durée après quoi la politique supprimera les événements, par exemple 7d |
--delete-all-events | La politique doit supprimer tous les événements (actuellement la seule option prise en charge) |
--delete=VALUE | Diffuser des événements entrants sur cette instance d'application lorsqu'ils sont ingérés; Accepte éventuellement une expression du signal limitant les événements qui doivent être diffusés |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
retention list
Politiques de rétention de liste.
Exemple:
seqcli retention list
Option | Description |
---|---|
-i , --id=VALUE | L'identification d'une seule politique de rétention à lister |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
retention remove
Supprimez une stratégie de rétention du serveur.
Exemple:
seqcli retention remove -i retentionpolicy-17
Option | Description |
---|---|
-i , --id=VALUE | L'identification d'une seule politique de rétention à supprimer |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
retention update
Mettez à jour une politique de rétention existante.
Exemple:
seqcli retention update --json '{...}'
Option | Description |
---|---|
--json=VALUE | La politique de rétention mise à jour au format JSON; Cela peut être produit à l'aide seqcli retention list --json |
--json-stdin | Lisez la politique de rétention mise à jour comme JSON de STDIN |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
sample ingest
Log Exemple d'événements dans une instance SEQ.
Exemple:
seqcli sample ingest
Option | Description |
---|---|
-y , --confirm | Réponse [y] es lorsque vous êtes invité à continuer |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
--quiet | Ne faites pas écho aux événements ingérés à STDOUT |
--batch-size=VALUE | Le nombre maximum d'événements à envoyer dans chaque demande au point de terminaison d'ingestion; Si non spécifié, une valeur de 100 sera utilisée |
sample setup
Configurez une instance SEQ avec des exemples de tableaux de bord, des signaux, des utilisateurs, etc.
Exemple:
seqcli sample setup
Option | Description |
---|---|
-y , --confirm | Réponse [y] es lorsque vous êtes invité à continuer |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
search
Récupérez les événements de journal qui correspondent à un filtre donné.
Exemple:
seqcli search -f "@Exception like '%TimeoutException%'" -c 30
Option | Description |
---|---|
-f , --filter=VALUE | Un filtre à appliquer à la recherche, par exemple Host = 'xmpweb-01.example.com' |
-c , --count=VALUE | Le nombre maximum d'événements à récupérer; La valeur par défaut est 1 |
--start=VALUE | ISO 8601 Date / heure de l'interrogation à partir de |
--end=VALUE | ISO 8601 Date / heure de l'interrogation à |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
--signal=VALUE | Une expression de signal ou une liste d'ID de signal intersectés à appliquer, par exemple signal-1,signal-2 |
--request-timeout=VALUE | Le temps a permis de récupérer chaque page des événements, en millisecondes; La valeur par défaut est 100000 |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
setting clear
Effacer un paramètre de serveur configurable de l'exécution.
Option | Description |
---|---|
-n , --name=VALUE | Le nom de paramètre, par exemple OpenIdConnectClientSecret |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
setting names
Imprimez les noms de tous les paramètres pris en charge.
setting set
Modifiez un paramètre de serveur configurable d'exécution.
Option | Description |
---|---|
-n , --name=VALUE | Le nom de paramètre, par exemple OpenIdConnectClientSecret |
-v , --value=VALUE | La valeur de réglage, séparée des virgules si plusieurs valeurs sont acceptées |
--value-stdin | Lisez la valeur de STDIN |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
setting show
Imprimez la valeur actuelle d'un paramètre de serveur configurable de l'exécution.
Option | Description |
---|---|
-n , --name=VALUE | Le nom de paramètre, par exemple OpenIdConnectClientSecret |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
signal create
Créer un signal.
Exemple:
seqcli signal create -t 'Exceptions' -f "@Exception is not null"
Option | Description |
---|---|
-t , --title=VALUE | Un titre pour le signal |
--description=VALUE | Une description du signal |
-f , --filter=VALUE | Filtre à associer au signal |
-c , --column=VALUE | Colonne à associer au signal; Cet argument peut être utilisé plusieurs fois |
--group=VALUE | Un nom de groupe explicite à associer au signal; La valeur par défaut est de déduire le groupe du filtre |
--no-group | Spécifiez qu'aucun groupe ne doit être déduit; La valeur par défaut est de déduire le groupe du filtre |
--protected | Spécifiez que le signal n'est modifiable que par les administrateurs |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
signal import
Importer des signaux au format JSON dédié à Newline.
Exemple:
seqcli signal import -i ./Exceptions.json
Option | Description |
---|---|
--merge | Mettre à jour les signaux qui ont des ID correspondant à ceux des données importées; La valeur par défaut est de toujours créer de nouveaux signaux |
-i , --input=VALUE | Fichier à importer; Si cela n'est pas spécifié, STDIN sera utilisé |
-o , --owner=VALUE | L'ID de l'utilisateur pour importer des signaux pour; Par défaut, les signaux partagés sont importants |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
signal list
Liste des signaux disponibles.
Exemple:
seqcli signal list
Option | Description |
---|---|
-t , --title=VALUE | Le titre du ou des signaux à lister |
-i , --id=VALUE | L'ID d'un seul signal à lister |
-o , --owner=VALUE | L'ID de l'utilisateur pour répertorier les signaux pour; Par défaut, les signaux partagés sont listD |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
signal remove
Supprimez un signal du serveur.
Exemple:
seqcli signal remove -t 'Test Signal'
Option | Description |
---|---|
-t , --title=VALUE | Le titre du ou des signaux pour supprimer |
-i , --id=VALUE | L'ID d'un seul signal à supprimer |
-o , --owner=VALUE | L'ID de l'utilisateur pour supprimer les signaux pour; Par défaut, les signaux partagés sont supprimés |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
signal update
Mettez à jour un signal existant.
Exemple:
seqcli signal update --json '{...}'
Option | Description |
---|---|
--json=VALUE | Le signal mis à jour au format JSON; Cela peut être produit à l'aide seqcli signal list --json |
--json-stdin | Lisez le signal mis à jour comme JSON de STDIN |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
tail
Stream Log Events correspondant à un filtre.
Option | Description |
---|---|
-f , --filter=VALUE | Un filtre côté serveur facultatif à s'appliquer au flux, par exemple @Level = 'Error' |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
--signal=VALUE | Une expression de signal ou une liste d'ID de signal intersectés à appliquer, par exemple signal-1,signal-2 |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
template export
Exporter des entités dans des fichiers de modèle.
Exemple:
seqcli template export -o ./Templates
Option | Description |
---|---|
-o , --output=VALUE | Le répertoire dans lequel écrire des fichiers de modèle; Le répertoire doit exister; Tous les fichiers existants avec des noms correspondant aux modèles exportés seront écrasés; La valeur par défaut est . |
-i , --include=VALUE | L'ID d'un signal, d'un tableau de bord, d'une requête enregistrée, d'un espace de travail ou d'une politique de rétention à l'exportation; Cet argument peut être spécifié plusieurs fois; La valeur par défaut est d'exporter toutes les entités partagées |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
template import
Importez des entités à partir de fichiers de modèle.
Exemple:
seqcli template import -i ./Templates
Option | Description |
---|---|
-i , --input=VALUE | Le répertoire à partir duquel lire l'ensemble des fichiers .template ; La valeur par défaut est . |
--state=VALUE | Le chemin d'accès d'un fichier qui persistera un mappage des noms de modèle aux ID des entités créées sur le serveur cible, en évitant les doublons lorsque plusieurs importations sont effectuées; Par défaut, import.state dans le répertoire d'entrée sera utilisé |
--merge | Pour les modèles sans entrées dans le fichier .state , vérifiez d'abord les entités existantes avec des noms ou des titres correspondants; ne soutient pas la fusion des politiques de rétention |
-g , --arg=NAME=VALUE | Arguments de modèle, par exemple -g ownerId=user-314159 |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
user create
Créer un utilisateur.
Exemple:
seqcli user create -n alice -d 'Alice Example' -r 'User (read/write)' --password-stdin
Option | Description |
---|---|
-n , --name=VALUE | Un nom d'utilisateur unique pour l'utilisateur |
-d , --display-name=VALUE | Un nom long pour aider à identifier l'utilisateur |
-f , --filter=VALUE | Un filtre de vue qui limite les événements visibles pour l'utilisateur |
-r , --role=VALUE | Le titre d'un rôle qui accorde les autorisations des utilisateurs sur le serveur; Si cela n'est pas spécifié, le nouveau rôle d'utilisateur par défaut sera attribué |
-e , --email=VALUE | L'adresse e-mail de l'utilisateur (permet une image Gravatar pour l'utilisateur) |
-p , --password=VALUE | Un mot de passe initial pour l'utilisateur, si l'authentification du nom d'utilisateur / mot de passe est utilisée; Notez que --password-stdin est plus sécurisé |
--password-stdin | Lisez le mot de passe initial pour l'utilisateur de STDIN , si l'authentification du nom d'utilisateur / mot de passe est utilisée |
--no-password-change | Ne forcez pas l'utilisateur à modifier son mot de passe lors de la connexion suivante |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
user list
Liste des utilisateurs.
Exemple:
seqcli user list
Option | Description |
---|---|
-n , --name=VALUE | Le nom d'utilisateur de l'utilisateur à lister |
-i , --id=VALUE | L'ID d'un seul utilisateur à lister |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
user remove
Supprimer un utilisateur du serveur.
Exemple:
seqcli user remove -n alice
Option | Description |
---|---|
-n , --name=VALUE | Le nom d'utilisateur de l'utilisateur pour supprimer |
-i , --id=VALUE | L'ID d'un seul utilisateur à supprimer |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
user update
Mettez à jour un utilisateur existant.
Exemple:
seqcli user update --json '{...}'
Option | Description |
---|---|
--json=VALUE | L'utilisateur mis à jour au format JSON; Cela peut être produit à l'aide seqcli user list --json |
--json-stdin | Lisez l'utilisateur mis à jour comme JSON de STDIN |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
version
Imprimez la version exécutable actuelle.
workspace create
Créer un espace de travail.
Exemple:
seqcli workspace create -t 'My Workspace' -c signal-314159 -c dashboard-628318
Option | Description |
---|---|
-t , --title=VALUE | Un titre pour l'espace de travail |
--description=VALUE | Une description de l'espace de travail |
-c , --content=VALUE | L'ID d'un tableau de bord, d'un signal ou d'une requête enregistrée à inclure dans l'espace de travail |
--protected | Spécifiez que l'espace de travail n'est modifiable que par les administrateurs |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
workspace list
Liste des espaces de travail disponibles.
Exemple:
seqcli workspace list
Option | Description |
---|---|
-t , --title=VALUE | Le titre de l'espace de travail à lister |
-i , --id=VALUE | L'ID d'un seul espace de travail à lister |
-o , --owner=VALUE | L'ID de l'utilisateur pour répertorier les espaces de travail pour; Par défaut, les espaces de travail partagés sont listD |
--json | Imprimer la sortie dans JSON dédié à Newline (la valeur par défaut est un texte brut) |
--no-color | Ne colorez pas la sortie du texte |
--force-color | Force Rediriged Output pour avoir une couleur ANSI (sauf si --no-color est également spécifiée) |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
workspace remove
Supprimer un espace de travail du serveur.
Exemple:
seqcli workspace remove -t 'My Workspace'
Option | Description |
---|---|
-t , --title=VALUE | Le titre de l'espace de travail pour supprimer |
-i , --id=VALUE | L'ID d'un seul espace de travail à supprimer |
-o , --owner=VALUE | L'ID de l'utilisateur pour supprimer les espaces de travail pour; Par défaut, les espaces de travail partagés sont supprimés |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
workspace update
Mettez à jour un espace de travail existant.
Exemple:
seqcli workspace update --json '{...}'
Option | Description |
---|---|
--json=VALUE | L'espace de travail mis à jour au format JSON; Cela peut être produit à l'aide seqcli workspace list --json |
--json-stdin | Lisez l'espace de travail mis à jour comme JSON de STDIN |
-s , --server=VALUE | L'URL du serveur SEQ; Par défaut, la valeur de configuration connection.serverUrl sera utilisée |
-a , --apikey=VALUE | La touche API à utiliser lors de la connexion au serveur; Par défaut, la valeur de configuration connection.apiKey sera utilisée |
--profile=VALUE | Un profil de connexion à utiliser; Par défaut, les valeurs de configuration connection.serverUrl et connection.apiKey |
La commande seqcli ingest
peut être utilisée pour analyser les journaux de texte brut dans des événements de journal structurés.
seqcli ingest -x " {@t:timestamp} [{@l:level}] {@m:*}{:n}{@x:*} "
L'argument -x
ci-dessus est un modèle d'extraction qui analysera les événements comme:
2018-02-21 13:29:00.123 +10:00 [ERR] The operation failed
System.DivideByZeroException: Attempt to divide by zero
at SomeClass.SomeMethod()
Les modèles d'extraction ont une syntaxe simple de haut niveau:
Hello, world!
correspondra aux déclarations de journalisation qui sont constituées de cette salutation uniquement,{curly braces}
est une expression de correspondance qui identifie une partie de l'événement à extraire, et{{
correspondra au texte littéral {
et }}
correspond à }
.Les expressions de correspondance ont la forme:
{name:matcher}
Le nom et le correspondant sont facultatifs, mais l'un ou l'autre doit être spécifié. Par conséquent, {@t:timestamp}
spécifie un nom de @t
et de la valeur timestamp
, {IPAddress}
spécifie uniquement un nom, et {:n}
une valeur uniquement (dans ce cas, le matchur Newline intégré).
Le nom est le nom de la propriété à extraire; Il y a quatre noms de propriété intégrés qui bénéficient d'une manipulation spéciale:
@t
- l'horodatage de l'événement@m
- le message textuel associé à l'événement@l
- le niveau de l'événement@x
- L'exception ou le passage du retour associé à l'événement D'autres noms de propriétés sont joints à la charge utile de l'événement, donc {Elapsed:dec}
extraire une propriété appelée Elapsed
, en utilisant le matchur décimal dec
.
Les expressions de correspondance sans nom sont consommées à partir de l'entrée, mais ne sont pas ajoutées à la charge utile de l'événement.
Les matchs identifient les morceaux de l'événement d'entrée.
Différents correspondants sont nécessaires pour qu'un morceau de texte comme 200OK
puisse être séparé en propriétés distinctes, c'est-à-dire {StatusCode:nat}{Status:alpha}
. Ici, le Matcher nat
(Number Number) contraint également le résultat en une valeur numérique, de sorte qu'il est attaché à la charge utile de l'événement numériquement comme 200
au lieu de le texte "200"
.
Il y a trois types de Matchs:
alpha
et nat
sont des matchs nommés intégrés.*
, **
et SO-ON, sont des correspondants de contenu non sordides ; Ceux-ci correspondront à n'importe quel texte jusqu'à ce que l'élément de modèle suivant correspond ( *
), les deux éléments suivants correspondent, et ainsi. Nous avons vu cela en action avec les éléments {@m:*}{:n}
dans l'exemple - le message est tout le texte jusqu'à la prochaine nouvelle ligne.=
, comme {Phone:={:nat}-{:nat}-{:nat}}
. Cela extraitra des morceaux de texte comme 123-456-7890
dans la propriété Phone
.Correspondant | Description | Exemple |
---|---|---|
* , ** , ... | Contenu non facilité | |
alpha | Une ou plusieurs lettres | Abc |
alphanum | Une ou plusieurs lettres ou chiffres | a1b2 |
dec | Un numéro décimal | 12.345 |
ident | Un identifiant de style C | countOfMatches |
int | Un entier | -123 |
iso8601dt | Une date d'heure ISO-8601 | 2020-01-28T13:50:01.123 |
level | Un nom de niveau forestier | INF |
line | Tout contenu unique | one line! |
n | Un caractère ou une séquence de nouvelles lignes | |
nat | Un nombre non négatif | 123 |
s | Un ou plusieurs caractères d'espace ou d'onglet | |
serilogdt | Une datetime dans le format de journalisation du fichier Serilog par défaut | 2020-01-28 13:50:01.123 +10:00 |
syslogdt | Une datetime au format syslog | Dec 8 09:12:13 |
t | Un seul caractère d'onglet | |
timestamp | Une datetime dans n'importe quel format reconnu | |
token | Toute séquence de caractères non blancs | 1+x$3 |
trailingident | Contenu multiligne avec des lignes de fuite en retrait | |
unixdt | Un format DateTime au format Unix Time Soutenir les secondes (10 chiffres) ou les millisecondes (12 chiffres) | 1608694199.999 |
w3cdt | Une paire de date / heure du format de journal W3C | 2019-04-02 05:18:01 |
Les modèles d'extraction sont traités de gauche à droite. Lorsque le premier motif non correspondant est rencontré, l'extraction s'arrête; Tout texte restant qui ne peut pas être apparié sera attaché à l'événement résultant dans une propriété @unmatched
.
Les événements multi-lignes sont gérés en recherchant des lignes qui commencent par le premier élément du motif d'extraction à utiliser. Cela fonctionne bien si la première ligne de chaque événement commence par quelque chose de sans ambiguïté comme un horodatage iso8601dt
; Si les lignes commencent par une syntaxe moins spécifique, les premiers éléments du modèle d'extraction peuvent être regroupés pour identifier le début des événements plus précisément:
{:=[{@t} {@l}]} {@m:*}
Ici, le texte littéral [
, un jeton d'horodatage, l'espace adjacent
, le niveau et la fermeture ]
sont tous regroupés afin qu'ils constituent un seul élément de motif logique pour identifier le début des événements.
Lorsque les journaux sont diffusés dans seqcli ingest
en temps réel, une date limite de 10 ms est appliquée, dans laquelle les lignes de fuite qui composent l'événement doivent être reçues.
journalctl -f -n 0 |
seqcli ingest -x " {@t:syslogdt} {host} {ident:*}: {@m:*}{:n} " --invalid-data=ignore
/var/log/syslog
tail -c 0 -F /var/log/syslog |
seqcli ingest -x " {@t:syslogdt} {host} {ident:*}: {@m:*}{:n} "
Cet exemple ingère des fichiers journaux dans le format:
# Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent)
cs(Referer) sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
Le modèle d'extraction est enveloppé dans l'exemple à des fins d'affichage et doit apparaître tout dans un argument de chaîne lorsqu'il est invoqué.
seqcli ingest -i http.log --invalid-data=ignore -x " {@t:w3cdt} {ServerIP} {@m:={Method} {RequestPath}}
{Query} {Port:nat} {Username} {ClientIP} {UserAgent} {Referer} {StatusCode:nat} {Substatus:nat}
{Win32Status:nat} {ResponseBytes:nat} {RequestBytes:nat} {Elapsed}{:n} "
Un motif imbriqué {@m:=
est utilisé pour collecter une sous-chaîne de la ligne de journal pour l'affichage comme message de l'événement.
La famille de commandes seqcli * update
pour effectuer des mises à jour arbitraires de nombreux types d'entités complexes.
Les commandes update
, comme seqcli signal update
indiqué dans l'exemple ci-dessous, reçoivent une représentation JSON mise à jour d'une entité via STDIN
.
Cela fonctionne particulièrement bien avec des outils comme jq
et des coquilles modernes avec le support natif JSON, comme PowerShell:
PS > $warnings = (seqcli signal list -i signal-m33302 --json | ConvertFrom-Json)
PS > $warnings.Title
Warnings
PS > $warnings.Title = "Alarms"
PS > (echo $warnings | ConvertTo-Json) | seqcli signal update --json-stdin
PS > seqcli signal list -i signal-m33302 --json
{"Title": "Alarms", "Description": "Automatically created", "Filters": [{"De...