Suivez les instructions ci-dessous pour installer et configurer ce check pour un Agent exécuté sur un cluster Kubernetes. Consultez également la documentation relative aux modèles d’intégration Autodiscovery pour découvrir comment appliquer ces instructions.
Installation
Pour installer le check open_policy_agent sur votre cluster Kubernetes :
Le dashboard par défaut inclut des graphiques représentant une métrique portant sur les décisions d’OPA, à savoir open_policy_agent.decisions. Cette métrique est créée à partir des « logs de décision » d’OPA. Pour générer cette métrique et l’ajouter à cette section du dashboard, vous devez créer une nouvelle métrique générée par des logs dans Datadog.
Commencez par créer une facette pour le champ msg des logs OPA. En effet, OPA génère uniquement des métriques pour les entrées de log de type « log de décision ». Pour ce faire, sélectionnez une entrée de log provenant d’OPA, cliquez sur l’icône de réglages en regard du champ msg et sélectionnez « Create facet for @msg » :
Créez deux facettes, pour les champs input.request.kind.kind et result.response.allowed. Ces deux facettes doivent être disponibles dans les entrées de log de type « log de décision ».
Une fois les facettes créées, générez la métrique souhaitée afin de compléter le dashboard. Cliquez sur le menu Logs, puis sur Generate Metrics. Cliquez sur « Add a new metric » et remplissez le formulaire avec les données suivantes :
Configuration
Modifiez le fichier open_policy_agent/conf.yaml dans le dossier /confd que vous avez ajouté au pod de l’Agent pour commencer à recueillir vos données de performance OPA. Consultez le fichier d’exemple open_policy_agent/conf.yaml pour découvrir toutes les options de configuration disponibles.
The count of the HTTP request latencies in seconds for the OPA service Shown as second
open_policy_agent.request.duration.sum (count)
The sum of the HTTP request latencies in seconds for the OPA service Shown as second
open_policy_agent.policies (gauge)
The number of policies enabled in the OPA server
Événements
open_policy_agent n’inclut aucun événement.
Checks de service
open_policy_agent.prometheus.health Returns CRITICAL if the agent fails to connect to the Prometheus endpoint, otherwise OK. Statuses: ok, critical
open_policy_agent.health Returns CRITICAL if the agent fails to connect to the OPA health endpoint, OK if it returns 200, WARNING otherwise. Statuses: ok, warning, critical
open_policy_agent.bundles_health Returns CRITICAL if the agent fails to connect to the OPA bundles health endpoint, OK if it returns 200, WARNING otherwise. Statuses: ok, warning, critical
open_policy_agent.plugins_health Returns CRITICAL if the agent fails to connect to the OPA plugins health point, OK if it returns 200, WARNING otherwise. Statuses: ok, warning, critical