Mesures personnalisées JMX

Pour définir les indicateurs d' JMX s à surveiller, modifiez le fichier de configuration.yaml l'agent comme indiqué dans l'exemple suivant :

com.instana.plugin.java:
  jmx:
    # JMX is NOT hot-reloaded and needs to be set before a JVM is discovered.
    # Supported attribute types are Number and Boolean
    # delta calculation is only supported for Number
    - object_name: 'java.lang:type=Compilation'
      metrics:
        - attributes: 'TotalCompilationTime'
          type: 'delta' # delta will report the change to the previous second
    - object_name: 'java.lang:type=ClassLoading'
      metrics:
        - attributes: 'LoadedClassCount'
          type: 'absolute' # absolute will report the value as-is

Cet configuration.yaml exemple présente deux types de métriques :

  • delta est utilisé pour les valeurs qui augmentent avec le temps, comme les compteurs, où le changement relatif est jugé intéressant.
  • absolute permet d'afficher la valeur réelle pour chaque accès à la métrique.

L'attribut spécifié doit être Number (ou l'une de ses sous-classes comme Integer ou Double) ou un attribut String représentant un nombre.

Dans le tableau de bord de la machine virtuelle Java, les métriques JMX sont affichées sous Métriques JMX personnalisées.

Le object_name peut contenir des motifs avec caractères génériques, comme indiqué dans la documentation d' Java disponible à l'adresse ObjectName API. Voici un exemple de configuration avec des motifs génériques :

com.instana.plugin.java:
  jmx:
    - object_name: 'kafka.*:type=*-metrics,client-id=*,*'
      metrics:
        - attributes: 'incoming-byte-rate'
          type: 'absolute'
        - attributes: 'incoming-byte-total'
          type: 'absolute'
        - attributes: 'outgoing-byte-rate'
          type: 'absolute'
        - attributes: 'outgoing-byte-total'
          type: 'absolute'