Un agent est une couche logicielle légère installée par les ingénieurs sur un hôte (tout système ou appareil devant être surveillé), qui collecte les données de télémétrie pertinentes sur l’état du système. Ce processus d’installation des agents sur les hôtes est appelé instrumentation. Grâce aux principales solutions de surveillance de l’infrastructure actuelles, les agents peuvent utiliser des capteurs pour découvrir les composants en amont et en aval de la pile d’infrastructure après la configuration.
Une fois que tout est entièrement instrumenté, chaque agent commence à collecter un large éventail d’indicateurs qui reflètent le comportement et l’état de l’infrastructure. Ces indicateurs peuvent inclure l’utilisation du processeur et de la mémoire, la bande passante réseau, l’utilisation de l’espace disque, les temps de réponse, les taux d’erreur, le nombre de transactions, etc. Idéalement, la plateforme de surveillance des performances capture en permanence ces données en temps réel à des intervalles d’une seconde sans échantillonnage. Ce type de granularité constitue l’un des principaux avantages de la collecte basée sur des agents, qui facilite l’identification et la résolution des problèmes dès qu’ils surviennent.
La collecte basée sur des agents permet également une surveillance proactive. En définissant des seuils qui déclenchent des alertes lorsque l’utilisation du processeur dépasse un certain pourcentage, les administrateurs peuvent anticiper les problèmes de performance potentiels. Les alertes peuvent être envoyées par e-mail, SMS ou intégrées dans des systèmes de notification comme Slack ou PagerDuty.
Le principal avantage des agents est que la collecte de données est beaucoup plus riche. De plus, des tâches telles que les diagnostics et la résolution des problèmes peuvent être automatisées. En revanche, les agents consomment des ressources système telles que les cycles du processeur, la mémoire et la bande passante réseau pour collecter et transmettre les données de surveillance. Cela peut avoir un léger impact sur les performances du système si la surveillance consomme beaucoup de ressources ou si un système a des ressources limitées.