Aller au contenu

Bundle de logs

Le bundle de logs est un fichier unique qui rassemble les logs et l'état de la plateforme, destiné à l'équipe support DigDash : quand elle doit comprendre un incident, c'est ce fichier qu'elle demande. Il se produit depuis l'onglet Logs (Paramètres, réservé aux administrateurs de plateforme), avec le bouton Exporter le bundle de logs — sans ligne de commande ni accès au cluster.

Onglet Logs et bouton Exporter le bundle de logs

Un fichier pour l'équipe support DigDash, et pour elle seule

Le fichier est chiffré : seule l'équipe support DigDash peut l'ouvrir. Personne d'autre ne peut en lire le contenu, pas même un administrateur de la plateforme. Il n'est donc pas exploitable autrement, et ne s'envoie qu'à elle.

Lancer un export

Exporter le bundle de logs ouvre la fenêtre Exporter un bundle de logs. Elle demande deux choses — ce que le bundle doit contenir, et sur quelle période — puis Exporter lance la collecte. Exporter reste grisé tant que rien n'est coché.

À l'ouverture, la fenêtre peut afficher Lecture du cluster : namespaces, applications et leur état… : elle interroge la plateforme pour savoir ce qui peut être coché. Sur une grande plateforme, cela peut prendre jusqu'à une minute. Si un export est déjà en cours ou prêt, son suivi s'affiche sans attendre.

Choix du périmètre et de la période

Périmètre

Bloc Ce qu'il apporte au bundle
DigDash DataStack System L'état du cluster, le Control Panel et les namespaces système : tout ce que DigDash a livré avec la plateforme. Coché à l'ouverture ; se prend ou se laisse en entier. Le lien N namespaces système liste les namespaces concernés.
Namespaces et applications Les namespaces gérés dans le Control Panel et leurs applications. Cocher un namespace le prend en entier ; le chevron à sa gauche déplie ses applications, pour n'en cocher que certaines. Tout sélectionner et Tout désélectionner agissent sur tous les namespaces.

Le support indique en général quoi cocher. À défaut, garder DigDash DataStack System et ajouter l'application ou le namespace touché par l'incident donne un bundle utile sans être inutilement gros.

Replié, un namespace indique combien d'applications il contient, combien sont cochées, et combien sont à l'arrêt. Déplié, chaque application porte son état :

État Signification
En marche Tout ce que l'application doit faire tourner est prêt.
Dégradée Une partie de l'application n'est pas prête : démarrage en cours, pod en erreur…
À l'arrêt L'application est arrêtée. Elle n'a aucun pod, donc aucun log : cochée, elle n'apporte au bundle que son état.

Applications ou états non affichés

Quand la liste des applications d'un namespace ne peut pas être lue, le namespace reste proposé, à prendre en entier (Applications non listées). Quand c'est leur état qui ne peut pas l'être, les applications s'affichent sans état.

Fenêtre temporelle

La Fenêtre temporelle borne ce qui est collecté : Dernière heure, 24 dernières heures (proposé à l'ouverture), 2 derniers jours, 3 derniers jours ou 7 derniers jours.

C'est un maximum. Chaque nœud ne conserve qu'un volume limité de logs par conteneur : un conteneur qui écrit beaucoup ne couvre parfois que quelques heures, quelle que soit la période demandée. Et les logs d'un pod disparaissent avec lui : après une mise à jour ou un redéploiement, ils ne remontent pas au-delà de la création du nouveau pod.

Suivre la collecte

Collecte en cours

La fenêtre affiche Collecte en cours… et l'avancement, en cibles traitées. La collecte dure de quelques secondes à une quinzaine de minutes, selon le périmètre.

  • La fenêtre peut être fermée : la collecte continue sur la plateforme, et le bouton Exporter le bundle de logs en retrouve le suivi.
  • Annuler l'export arrête la collecte ; rien n'est conservé.
  • Un seul export à la fois sur la plateforme. Si un autre administrateur en a lancé un, la fenêtre en affiche le suivi à la place du formulaire.

Télécharger le bundle

Bundle prêt

La collecte terminée, la fenêtre affiche Le bundle est prêt. avec :

Élément Contenu
Fichier Le nom du fichier, de la forme ds-bundle-<plateforme>-<date>-k<clé>.zip.age : la plateforme d'origine, le début de la collecte (heure UTC) et la clé de chiffrement utilisée, celle que la fenêtre affiche avant l'export (Clé de chiffrement).
Taille La taille du fichier chiffré.
Empreinte SHA-256 L'empreinte du fichier, qui permet de vérifier qu'il n'a pas été altéré.
N fichiers · N valeurs masquées Le nombre de fichiers du bundle et le nombre de valeurs sensibles masquées (voir Ce que contient le bundle).
Disponible jusqu'au… L'heure à laquelle le bundle sera supprimé de la plateforme : une heure après sa production.

Télécharger remet le fichier au navigateur, qui le contrôle d'après son empreinte avant de l'enregistrer dans les téléchargements.

Bundle téléchargé et vérifié

Message Ce qu'il s'est passé Que faire
Bundle téléchargé et vérifié. Le fichier est intact, et il a été supprimé de la plateforme. S'il n'apparaît pas dans les téléchargements du navigateur, Enregistrer à nouveau avant de fermer la fenêtre : une fois fermée, il faut relancer un export.
Bundle téléchargé. Ce navigateur n'a pas pu vérifier son intégrité… Le fichier est enregistré, mais le navigateur n'a pas pu le contrôler — c'est le cas quand le Control Panel est ouvert en HTTP et non en HTTPS. Le bundle reste sur la plateforme, une heure au plus. Comparer l'empreinte affichée à celle du fichier reçu (sha256sum sous Linux, shasum -a 256 sous macOS, Get-FileHash sous Windows), puis Supprimer de la plateforme.
Le fichier reçu ne correspond pas à l'empreinte annoncée et n'a pas été enregistré… Le fichier reçu n'est pas celui que la plateforme a produit : le transfert l'a altéré. Le bundle est toujours sur la plateforme. Relancer Télécharger.

Rien ne reste sur la plateforme

Le bundle est supprimé dès qu'il a été téléchargé et vérifié, et dans tous les cas une heure après sa production. Tant qu'il est là, la fenêtre l'affiche à tout administrateur de plateforme ; pour lancer un autre export, il faut d'abord le télécharger ou l'effacer avec Supprimer ce bundle.

Transmettre le fichier au support

Le fichier .zip.age s'envoie tel quel à l'équipe support DigDash, par le canal de support habituel. Mieux vaut ne pas le renommer : son nom dit au support de quelle plateforme il vient et quelle clé l'ouvre.

Ce que contient le bundle

Périmètre Contenu
DigDash DataStack System État des nœuds, journal de leur kubelet et de leur moteur de conteneurs ; événements du cluster ; alertes actives, alertes qui ont sonné pendant la période et règles d'alerte en erreur ; versions installées ; version, canal de mise à jour et état de la licence du Control Panel, son journal d'audit, le résultat de ses tâches sur la période (une ligne par résultat distinct, avec son nombre d'occurrences), ses dernières mises à jour ; événements, description et logs des pods des namespaces système.
Un namespace ou une application Événements et alertes du namespace ; pour chaque application, sa release Helm (nom, chart, version, statut), l'état de ses composants (réplicas, bases de données, dernier arrêt ou démarrage demandé), la description et les logs de ses pods — y compris ceux du conteneur précédent après un redémarrage — et les requêtes que la passerelle a reçues pour elle, y compris celles qu'elle n'a pu transmettre à aucune route.

N'entrent jamais dans le bundle : les secrets Kubernetes, les valeurs de configuration des applications (values Helm, contenu des ConfigMap, valeurs des variables d'environnement — seul le nom des variables est gardé), le kubeconfig, le contenu de la licence.

Dans tout le bundle, les valeurs reconnues comme sensibles sont remplacées par [REDACTED] : mots de passe, jetons, clés d'accès, en-têtes d'authentification et cookies, identifiants d'une URL, clés privées. Leur nombre est affiché avec le bundle prêt (valeurs masquées).

Le masquage est une précaution, pas une garantie

Les logs sont repris tels que les applications les ont écrits : ils peuvent contenir des données métier (noms, identifiants, requêtes). C'est la raison pour laquelle le fichier est chiffré et destiné à la seule équipe support DigDash.

Si l'export n'aboutit pas

Ce qui s'affiche Cause Que faire
Bouton grisé et Export indisponible : aucune clé de chiffrement n'est configurée sur cette plateforme… La clé de chiffrement du support n'a pas été installée avec la plateforme. Contacter le support DigDash : la clé se pose à l'installation de l'infrastructure, pas depuis le Control Panel.
Impossible de lire le périmètre exportable. La plateforme n'a pas pu interroger le cluster. Réessayer.
L'export a échoué. La collecte s'est interrompue — le message technique est affiché — ou elle est restée cinq minutes sans avancer. Nouvel export. Si l'échec se répète, réduire le périmètre et transmettre le message au support.
Cet export n'existe plus : il a été abandonné ou a expiré. L'export a été annulé pendant la collecte, depuis une autre fenêtre ou par un autre administrateur. Relancer un export.

Traçabilité

Chaque export et chaque téléchargement sont inscrits dans les logs d'audit, avec leur auteur : actions log_bundle.export et log_bundle.download.