@matvi-consulting/monitoring-agent-cloud
v0.2.0
Published
Pulumi components deploying the Matvi monitoring agent on AWS ECS Fargate and Azure Container Apps
Readme
monitoring-agent-cloud
Agent de monitoring Matvi pour les plateformes managées sans hôte : AWS ECS Fargate et Azure (App Service, Container Apps).
Un conteneur unique, déployé chez le client, interroge CloudWatch (YACE) ou Azure Monitor (azure-metrics-exporter) avec des droits en lecture seule, et pousse les métriques vers la push gateway Matvi. Aucun log n'est collecté.
- Image :
ghcr.io/matvi-consulting/monitoring-agent-cloud - Composants Pulumi :
@matvi-consulting/monitoring-agent-cloud, un sous-chemin par fournisseur pour n'installer que le peer utilisé :import { MatviMonitoringAws } from "@matvi-consulting/monitoring-agent-cloud/aws"(peer@pulumi/aws)import { MatviMonitoringAzure } from "@matvi-consulting/monitoring-agent-cloud/azure"(peer@pulumi/azure-native)- la racine n'exporte que la partie commune (
agentImage,agentEnvironment, ...)
- Installation : AWS, Azure
- Design : spec
Développement
./tests/run.sh # tests bats (Docker requis)
./tests/image-smoke.sh # build + vérifications de l'image
cd pulumi && npm test # tests des composantsRelease
./release.sh : tag vX.Y.Z, puis la CI publie l'image et le package npm à la même version (après les tests bats et Pulumi).
Checklist avant le premier déploiement client :
- [ ] Visibilité du package GHCR
monitoring-agent-cloudpassée en Public (GitHub → Packages → monitoring-agent-cloud → Package settings → Change visibility). Un package GHCR est privé à sa première publication : sans cela, ECS et Container Apps échouent au pull de l'image. - [ ] L'organisation npm
@matvi-consultingexiste. - [ ] L'environnement GitHub
releaseexiste (Settings → Environments). Règles conseillées : approbation requise, déploiement limité aux tagsv*. - [ ] Le package npm a un Trusted Publisher GitHub Actions :
MATVI-CONSULTING/monitoring-agent-cloud, workflowrelease.yml, environnementrelease, « Allow npm publish » coché. Aucun token npm n'est nécessaire.
