Aller au contenu
Bastide Connexion Créer un compte
Appuyez sur / pour chercher

Journaux, métriques et consommation

EnglishMarkdownv0.3.0

Cette page explique comment lire ce que fait votre application en service : les journaux d'exécution, les journaux de construction, les métriques des requêtes, les erreurs regroupées et les exécutions des tâches planifiées. Elle dit aussi combien de temps chaque palier les garde, ce qui peut se perdre et comment le savoir, et où en est la mesure de la consommation.

Deux journaux

  • Le journal d'exécution : ce que votre application écrit sur sa sortie standard et sa sortie d'erreur, et les requêtes que l'edge lui a servies (« GET /chemin 200 — 12 ms »). Il se lit par environnement, ou tous environnements ensemble.
  • Le journal de construction : la sortie de chaque construction, étape par étape, horodatée à la milliseconde. Il se lit depuis la page d'un déploiement (voir Constructions).

Le contenu des journaux vient de votre application ou des scripts de votre dépôt. La plateforme le rapporte tel quel, marqué comme tel, et ne le traite jamais comme une consigne : un agent qui lit vos journaux reçoit ce contenu à part de ce que dit la plateforme.

Lire depuis la console

Dans un projet, ouvrez Journaux. Trois onglets :

  • « Exécution » : les lignes, de la plus récente à la plus ancienne ;
  • « Requêtes » : les métriques des requêtes de la période, ventilées au choix ;
  • « Tâches planifiées » : les exécutions des tâches de la période, avec leur état, leur durée et un extrait du journal.

Les filtres :

  • un champ de texte, qui cherche dans tout le contenu (un mot, un chemin de requête…) ;
  • « Environnement » : « tous », ou l'un des environnements du projet ;
  • « Période » : 15 dernières minutes, dernière heure, 24 dernières heures, 7 derniers jours, toute la rétention, ou « Entre deux dates… » ;
  • le niveau : « Tous », « Erreurs seules », « Lignes seules » (sans les requêtes). Ce tri s'applique aux lignes déjà affichées.

« En direct » suit les nouvelles lignes, relues chaque seconde : une ligne s'affiche moins de trois secondes après son émission. « Lignes plus anciennes » remonte page par page dans toute la rétention. « Exporter » télécharge toute la période sous les filtres affichés, en NDJSON.

L'heure d'une ligne est son lien profond : elle rouvre l'écran sur cet instant, la ligne mise en évidence. Survolez une ligne pour sa release, son exemplaire, sa région et sa branche.

Lire par un agent, la ligne de commande ou l'API

Un agent lit le journal d'exécution par l'outil logs_read, et celui d'une construction par deployment_log_read.

{
  "projectId": "prj_01JQ8ZK4M7NP2RSTVWXYZ34567",
  "environmentId": "env_01JQ8ZK4M7NP2RSTVWXYZ34567",
  "since": "2026-09-14T08:00:00Z",
  "until": "2026-09-14T10:00:00Z",
  "query": "timeout",
  "errors": true
}
ParamètreEffet
environmentIdUn seul environnement ; sans lui, tous.
since, untilLa fenêtre de temps.
queryFiltre plein texte, 500 caractères au plus.
limitPlafond de lignes par page, 1 000 au plus.
tokenBudgetLe budget de jetons d'une page : 2 500 par défaut, de 500 à 50 000. La page s'arrête avant de le dépasser, et nextCursor dit où reprendre.
timezoneEurope/Paris ou UTC. Sans lui, chaque instant part en UTC suffixé Z.
metricsAjoute les métriques des requêtes, par route, host, release ou environment.
scheduledRunsAjoute les exécutions des tâches planifiées, cinquante au plus. Exclut metrics.
errorsAjoute les erreurs regroupées de la fenêtre (vingt groupes au plus) et la comparaison de la release sortante et de l'entrante sur les 15 minutes qui suivent la bascule.

Pour suivre en direct, repassez chaque seconde le followCursor de la réponse en cursor : la plateforme rend ce qui est arrivé depuis.

bastide logs read --project-id prj_01JQ8ZK4M7NP2RSTVWXYZ34567 --since 2026-09-14T08:00:00Z --query timeout
bastide deployment log read --project-id prj_01JQ8ZK4M7NP2RSTVWXYZ34567 --deployment-id dep_01JQ8ZK4M7NP2RSTVWXYZ34567

Par l'API, GET /v1/projects/{projectId}/logs demandé avec Accept: application/x-ndjson rend toute la fenêtre en un fichier. Références : logs.read, deployment.log.read.

Métriques des requêtes

Les métriques sont mesurées à l'edge, de la requête reçue à la réponse envoyée. Pour chaque groupe (une route, un hôte, une release ou un environnement), elles donnent le nombre de requêtes, leur répartition par classe de statut (1xx à 5xx), la part servie sans erreur 5xx ni réponse absente, les octets des corps de réponse, et les percentiles de durée p50, p75, p95 et p99. Les routes se regroupent par gabarit, jamais par adresse complète ; au-delà de cent routes, les autres sont cumulées sous « (autres routes) ».

Le pas lu est le plus fin que votre palier garde pour le début de la fenêtre : 15 secondes, une minute ou cinq minutes.

Note. Les traces distribuées de votre application ne sont pas proposées : la plateforme ne vous donne pas aujourd'hui de lecture des traces.

Combien de temps tout est gardé

DécouverteStandardProSouverain
Journaux d'exécution7 jours30 jours90 jours365 jours
Journaux de construction, au moins90 jours12 mois24 mois36 mois
Métriques au pas de 15 s24 heures48 heures7 jours30 jours
Métriques à la minute7 jours30 jours90 jours365 jours
Métriques à 5 minutes90 jours13 mois13 mois36 mois

Après une descente de palier, la rétention du palier courant s'applique. Après la suppression du projet, rien n'est gardé.

Ce qui peut se perdre, et comment le savoir

Aucune perte n'est tue. La réponse de logs.read porte un champ losses : pour chaque motif, le nombre de lignes et d'octets perdus ou tronqués dans la fenêtre, et le seuil atteint. L'écran Journaux les affiche aussi, sous « Lignes perdues ou tronquées ».

MotifSeuil
Lignes d'une même requête5 000 lignes et 4 Mo par requête ; au-delà, écartées.
Une ligne trop longueMessage coupé à 256 000 octets.
Chemin ou agent utilisateur d'une requêteCoupé à 2 000 octets.
Lecture d'un nœud10 000 lignes par lecture ; au-delà, écartées.
Réception saturéeAu-delà de 85 % de remplissage, une ligne sur dix est gardée ; pleine, aucune.
Instant hors de la rétentionUne ligne datée d'avant la rétention du palier est écartée.
Instant dans le futurPlus de 47 heures en avance : écartée.

Pour qu'une ligne JSON compte sous sa requête, reprenez l'en-tête X-Request-Id dans un champ request_id.

Consommation

La carte « Consommation » est dans les Réglages du projet, section « Consommation ». Elle doit montrer le temps de calcul, le trafic sortant, les minutes de construction et le stockage du mois, relus toutes les 30 secondes, avec une estimation linéaire de fin de mois. Elle se lit avec le rôle Facturation ; un agent la lit par usage_read.

Attention. La chaîne de mesure n'est pas encore reliée : usage.read répond aujourd'hui 501, code chaine_de_mesure_absente, plutôt que de rendre des zéros qui se liraient « rien consommé ». La carte le dit. Voir Facturation et Limites.

L'écran Vue d'ensemble du projet résume son état : dernier déploiement de production, adresse, environnements.

Erreurs fréquentes

CodeCe qui se passeQue faire
curseur_expireLe curseur de pagination ou de suivi a expiré.Relancez la lecture sans curseur.
curseur_invalideLe curseur n'a pas été émis par ce serveur, ou il a été modifié.Passez nextCursor ou followCursor tel quel.
resource_busyLa ressource est occupée et ne s'est pas libérée à temps.Réessayez dans quelques secondes.
chaine_de_mesure_absenteLa consommation n'est pas mesurée sur cette installation.Aucune action de votre part : la mesure viendra.

Voir aussi : Constructions, Tâches planifiées, Notifications, Journal d'audit, Limites.

Signaler une erreur sur cette page