Surveillance d'Elasticsearch

Le capteur « Elasticsearch » est automatiquement déployé et installé une fois que vous avez installé l'agent « Instana ».

Remarque : le capteur « Elasticsearch » ne prend pas en charge la surveillance de l'adresse OpenSearch. Pour plus d'informations sur la surveillance de l' AWS, consultez la page OpenSearch, intitulée « Surveillance du service Amazon OpenSearch ».

Informations de support

Pour vous assurer que le capteur d' Elasticsearch s est compatible avec votre configuration actuelle, consultez les sections d'informations d'assistance suivantes :

Systèmes d'exploitation pris en charge

Les systèmes d'exploitation pris en charge par le capteur « Elasticsearch » correspondent aux exigences de l'agent hôte. Vous pouvez les consulter dans la section « Systèmes d'exploitation pris en charge » de chaque agent hôte, par exemple dans la section « Systèmes d'exploitation pris en charge » pour Unix.

Versions prises en charge et politique d'assistance

Le capteur prend en charge les versions d' Elasticsearch allant de la version 0.17.0 à la version 8.17.1.

Le tableau suivant présente la dernière version prise en charge et la politique d'assistance :

Technologie Politique de support Dernière version technologique Dernière version prise en charge
Elasticsearch 8 45 jours 9.3.3 8.19.14

Pour plus d'informations sur la politique d'assistance, consultez la section « Stratégie d'assistance pour les capteurs ».

Remarque : les droits de sécurité introduits dans la version 8.17 d' Elasticsearch, ainsi que dans les versions ultérieures, peuvent avoir une incidence sur les outils d'instrumentation tiers, notamment sur la connexion de l'agent Instana au service Elasticsearch JVM. Si vous activez la surveillance sur ces versions, vous pourriez rencontrer des problèmes de stabilité ou de performances, même si ceux-ci sont rares. Pour exclure les nœuds concernés de la surveillance, utilisez la surveillance sélective.

Configuration

Instana surveille automatiquement jusqu'à 1000 index et collecte les 5 métriques les plus importantes par index. Pour activer la surveillance d'index approfondie qui collecte 20 métriques par index pour un maximum de 200 index, vous devez spécifier indicesRegex dans le fichier de configuration de l'agent <agent_install_dir>/etc/instana/configuration.yaml comme suit:

com.instana.plugin.elasticsearch:
  enabled: true
  indicesRegex: '<INSERT_INDEX_REGEX_HERE>' # eg. 'env-prod.*'
  poll_rate: 1 # values are in seconds. Default value is 1 second.
 
Remarque : si aucun intervalle de sondage n'est spécifié, l'intervalle par défaut est de 1 seconde.

Configuration de la fréquence d'interrogation

Remarque : les capteurs Instana, Elasticsearch, 1.1.79 et les versions ultérieures permettent de configurer la fréquence d'interrogation afin de réduire le volume de données collectées. Cette fonctionnalité est prise en charge sur le backend Instana auto-hébergé à partir de la version 311.

Vous pouvez configurer la fréquence à laquelle l' Instana interroge Elasticsearch pour collecter des données et des métriques en utilisant le poll_rate paramètre dans le fichier de configuration.yaml l'agent, comme le montre l'exemple suivant :

com.instana.plugin.elasticsearch:
  poll_rate: 1 # values are in seconds. Default value is 1 second.
Remarque : si aucun intervalle de sondage n'est spécifié, l'intervalle par défaut est de 1 seconde.

Collecte des métriques

Pour afficher les métriques, procédez comme suit:

  • Dans le menu de navigation de l'interface utilisateur d' Instana, sélectionnez « Infrastructure ».
  • Cliquez sur un hôte surveillé spécifique sur lequel Elasticsearch est installé.

Vous pouvez voir le tableau de bord hôte avec les métriques de performance, les données de configuration et les signatures de santé suivantes.

Au niveau du noeud

Données de configuration

  • Version
  • Cluster
  • Statut d'intégrité
  • Nom du noeud
  • Type de noeud
  • Le noeud est le noeud maître
  • Le noeud est éligible en tant que maître
  • Transport
  • HTTP
  • Répertoire du journal
  • Fragments
  • Index

Métriques de performance

Point de données Description Granularité
Latence des requêtes Le temps d'attente de requête est collecté à partir de NodeIndicesStats#SearchStats. 1 seconde
Nombre de requêtes Le nombre de requêtes par seconde est collecté à partir de NodeIndicesStats#SearchStats. 1 seconde
Documents globaux Le nombre total de documents est collecté à partir de DocsStats#count. 1 seconde
Documents ajoutés Le nombre total d'opérations d'indexation est collecté à partir de IndexingStats#indexCount. 1 seconde
Documents supprimés Le nombre d'opérations de suppression exécutées est collecté à partir de IndexingStats#deleteCount. 1 seconde
Fragments actifs Le nombre de fragments actifs est collecté à partir de IndexRoutingTable#ShardRouting. 1 seconde
Fragments principaux actifs Le nombre de fragments principaux actifs est collecté à partir de IndexRoutingTable#ShardRouting. 1 seconde
Nombre d'actualisations Le nombre d'actualisations exécutées par seconde est collecté à partir de NodeIndicesStats#RefreshStats. 1 seconde
Temps d'actualisation La durée totale des fusions exécutées est collectée à partir de NodeIndicesStats#RefreshStats. 1 seconde
Nombre de vidages Le nombre total de vidages exécutés par seconde est collecté à partir de NodeIndicesStats#FlushStats. 1 seconde
Temps de vidage La durée totale des fusions exécutées est collectée à partir de NodeIndicesStats#FlushStats. 1 seconde
Métriques d'index Le nombre de documents, le nombre de suppressions et la taille par index sont collectés à partir de IndexStats#DocsStats. 1 seconde
Segments Lucene Le nombre de segments est collecté à partir de NodeIndicesStats#SegmentsStats#count. 1 seconde
Unités d'exécution actives Les unités d'exécution de type Search, Index, Bulk, Merge, Flush, Get, Management, Refresh sont collectées à partir de ThreadPoolStats.Stats#active. 1 seconde
Unités d'exécution mises en file d'attente Les unités d'exécution de type Search, Index, Bulk, Merge, Flush, Get, Management, Refresh sont collectées à partir de ThreadPoolStats.Stats#queue. 1 seconde
Unités d'exécution rejetées Les unités d'exécution de type Search, Index, Bulk, Get sont collectées à partir de ThreadPoolStats.Stats#rejected. 1 seconde
Données envoyées La taille des paquets TX envoyés par le noeud lors de la communication de cluster interne est collectée à partir de TransportStats#tx_size 1 seconde
Données reçues La taille des paquets RX reçus par le noeud lors de la communication de cluster interne est collectée à partir de TransportStats#rx_size 1 seconde

Métriques d'index

Point de données Description Granularité
Nombre total de requêtes Le nombre total d'opérations de requête est collecté à partir de SearchStats.Stats#queryTotal 1 seconde
Requêtes en cours Le nombre d'opérations de requête en cours d'exécution est collecté à partir de SearchStats.Stats#queryCurrent 1 seconde
Nombre total d'extractions Le nombre total d'opérations d'extraction est collecté à partir de SearchStats.Stats#fetchCount 1 seconde
Extractions en cours Le nombre d'opérations d'extraction en cours d'exécution est collecté à partir de SearchStats.Stats#fetchCurrent 1 seconde
Délai de la requête Le temps en millisecondes consacré à l'exécution des opérations de requête est collecté à partir de SearchStats.Stats#queryTimeInMillis 1 seconde
Temps d'extraction Le temps, en millisecondes, consacré à l'exécution des opérations d'extraction est collecté à partir de SearchStats.Stats#fetchTimeInMillis 1 seconde
Expulsions du cache des requêtes Le nombre d'expulsions du cache de requêtes est collecté à partir de QueryCacheStats#evictions 1 seconde
Expulsions du cache des demandes Le nombre de demandes d'expulsion de cache est collecté à partir de RequestCacheStats#evictions 1 seconde
Demandes Get Le nombre total de demandes Get est collecté à partir de GetStats#count 1 seconde
Temps des demandes Get Le temps en millisecondes consacré aux demandes Get est collecté à partir de GetStats#timeInMillis 1 seconde
Demandes d'obtention ayant échoué Le nombre de demandes Get ayant échoué est collecté à partir de GetStats#missingCount 1 seconde
Heure des demandes d'obtention ayant échoué Le temps, en millisecondes, passé sur les demandes d'obtention ayant échoué est collecté à partir de GetStats#missingTimeInMillis 1 seconde
Echec des opérations d'indexation Le nombre d'opérations d'indexation ayant échoué est collecté à partir de IndexingStats#indexFailedCount 1 seconde
Nombre de fusions actives Le nombre actuel de fusions exécutées est collecté à partir de MergeStats#current 1 seconde
Taille totale des fusions La taille totale des fusions exécutées est collectée à partir de MergeStats#totalSizeInBytes 1 seconde
Durée totale des fusions La durée totale des fusions exécutées est collectée à partir de MergeStats#totalTimeInMillis 1 seconde

Les métriques d'index mentionnées dans la section Métriques d'index sont activées pour les index configurés via une expression régulière indicesRegex dans la configuration de l'agent.

Signatures d'intégrité

Chaque détecteur dispose d'une base de connaissances organisée de signatures de santé qui sont évaluées en continu par rapport aux métriques entrantes et qui sont utilisées pour signaler des problèmes ou des incidents qui dépendent de l'impact sur l'utilisateur.

Les événements intégrés déclenchent des problèmes ou des incidents en fonction de signatures d'état de santé défaillantes sur des entités, tandis que les événements personnalisés déclenchent des problèmes ou des incidents en fonction des seuils d'une métrique spécifique à une entité donnée.

Pour plus d'informations sur les événements générés pour le noeud Elasticsearch , voir Référence des événements intégrés.

Au niveau du cluster

Données de configuration

  • Nom
  • Statut d'intégrité
  • Noeuds, Maîtres

Métriques de performance

Point de données Description Granularité
Latence des requêtes Le temps d'attente de requête est calculé comme le temps d'attente de requête maximal de tous les noeuds. 1 seconde
Nombre de requêtes Le nombre de requêtes est calculé comme la somme du nombre de requêtes pour tous les noeuds. 1 seconde
Documents globaux Les documents globaux sont calculés comme la somme des documents globaux pour tous les noeuds. 1 seconde
Documents ajoutés Somme des documents ajoutés pour tous les noeuds. 1 seconde
Documents supprimés Somme des documents supprimés pour tous les noeuds. 1 seconde
Index Nombre d'index 1 seconde
Fragments Les principaux actifs, actifs, en cours d'initialisation, en cours de réattribution, non affectés sont collectés à partir de ClusterHealth. 1 seconde
Taille ClusterState Taille du ClusterState. 1 seconde