logs.stream.ecranLe journal en direct d'une application installée : les dernières lignes de son conteneur, rafraîchies toutes les 3 secondes.
Voir l'élément dans l'écran : logs/stream
Choisissez une application : l'écran affiche les dernières lignes que son conteneur a écrites, sorties standard et d'erreur mêlées, horodatées. Il les redemande toutes les 3 secondes et descend tout seul en bas de la liste.
Les lignes sont colorées d'après leur contenu :
| Couleur | Quand la ligne contient |
|---|---|
| rouge | ERROR, FATAL, CRIT, ou un code HTTP 5xx |
| ambre | WARN, WARNING, ou un code HTTP 4xx |
| vert | INFO, ou un code HTTP 2xx/3xx |
| gris clair | DEBUG, TRACE |
L'écran retient l'application choisie (dans le navigateur) et la rouvre à la visite suivante.
C'est l'outil du premier coup d'œil : « l'application démarre-t-elle ? », « que s'est-il passé à 9 h 34 ? ». Pour une recherche dans la durée, téléchargez le journal.
| Moment | Requête | Derrière |
|---|---|---|
| ouverture | GET /hub/logs |
docker_worker.list_apps (liste des applications) |
| toutes les 3 s | GET /hub/logs/api/{appId}?lines=200 |
docker logs --timestamps --tail N du conteneur |
| Telecharger | GET /hub/logs/download/{appId} |
les 10 000 dernières lignes, en texte |
Réponse de /hub/logs/api/{appId} :
{ "appId": "things",
"lines": ["2026-10-29T09:41:05.880117Z 2026-10-29 09:41:05,880 INFO [virtual-57] …"] }
Le Hub retrouve le conteneur par la colonne container_id de apps.applications.
Action docker_worker.get_logs (app_id, lines — 100 par défaut), joignable par MCP
(POST /mcp, outil docker_worker__get_logs).
Rôle SUPERADMIN, pour l'écran comme pour /hub/logs/api/**. Un journal applicatif porte
des adresses, des requêtes, parfois des jetons : la règle est stricte.
.net : GET /hub/logs a répondu 500 (« Erreur serveur »).
Le gabarit et le contrôleur ne montrent pas la cause ; elle reste à établir.{"lines": [], "error": "No container found"}.
L'écran n'affiche pas l'erreur : il dit « Aucun log. », comme pour un conteneur muet.