Agent IA d'analyse de logs
Un agent IA planifié, en lecture seule, qui lit les logs d'une application et écrit un rapport de santé.
- Rôle
- Conception, développement et article technique
- Période
- août 2026 – en cours · Upsun
- Stack
- Node.js 24
- OpenCode
- LLM (Anthropic, OpenAI, Gemini)
- Upsun task containers
- Cron
- Upsun API
Contexte
Upsun a lancé les task containers : des conteneurs éphémères qui exécutent un travail ponctuel à côté de l'application, avec leurs propres ressources. Je les ai mis en valeur dans une série d'articles : d'abord pour décharger un traitement lourd déclenché par cron, puis, ici, pour faire tourner un agent IA.
Ce que j'ai construit
- Le déclenchement : un cron, uniquement en production, demande un jeton à courte durée de vie puis lance la tâche via l'API Upsun. L'application ne déclare qu'une autorisation minimale, celle de lancer cette tâche-là.
- L'agent (Node.js 24) lit les 400 dernières lignes des logs cron et applicatifs, puis lance OpenCode avec une consigne stricte : quatre sections (synthèse, tâches cron, erreurs et anomalies, recommandations) et interdiction d'inventer des lignes de log.
- Le rapport apparaît dans le fil d'activité du projet et dans un fichier Markdown horodaté.
- Le fournisseur de modèle est interchangeable (Anthropic, OpenAI, Gemini).
Sécurité, d'abord
- Lecture seule : l'agent n'a ni jeton d'API Upsun, ni accès GitHub, ni droit d'écriture sur le dépôt.
- La clé du LLM est une variable sensible injectée à l'exécution, jamais dans la configuration versionnée.
- Un conteneur isolé à profil mémoire élevé : la session LLM ne prend pas de ressources à l'application.
Défis techniques
- Faire tourner un CLI pensé pour un poste de développeur dans un conteneur éphémère au système de fichiers en lecture seule : répertoires de configuration redirigés vers un emplacement inscriptible, timeout explicite.
- Obtenir un rapport fiable : sortie structurée, consigne anti-hallucination, logs tronqués pour maîtriser le coût en tokens.
Résultat
Un modèle d'architecture réutilisable pour mettre de l'IA « en production » de façon sûre. La suite de la série ajoute la réponse autonome aux incidents.

