Surveillance des hôtes avec l' SNMP

SNMP Récepteur dans OpenTelemetry Contrib Collector prend en charge la surveillance des métriques provenant des hôtes configurés pour SNMP sur Instana. Les métriques provenant de l'hôte sur lequel l' SNMP est activé sont collectées en fonction des paramètres définis dans le fichier de configuration OpenTelemetry.

Pour configurer un collecteur OpenTelemetry SNMP, procédez comme suit :

  1. Téléchargez les derniers fichiers binaires de la version « Contrib Collector » de OpenTelemetry dans un emplacement de votre choix. Les fichiers binaires doivent être compatibles avec le système d'exploitation et l'architecture.

  2. Extrayez l'édition archivée téléchargée dans un dossier. Le dossier contient généralement les fichiers suivants:

    • Exécutable "otelcol-contrib"
    • README.md
  3. Créez un fichier de configuration, par exemple: host-snmp.yaml, à l'aide d'un exemple de fichier de configuration. Pour obtenir des exemples de fichier de configuration, voir Exemples de fichiers de configuration.

  4. Dans le fichier de configuration, utilisez l'une des options suivantes pour définir le point de terminaison Instana.
    • Envoyer les données d' OpenTelemetry s à l'agent Instana : configurez l'adresse IP de l'hôte de l'agent Instana comme indiqué dans l'exemple suivant. Pour plus d'informations, consultez la section « Envoi de données d' OpenTelemetry s à l'agent Instana ».
      exporters:
        debug:
          verbosity: detailed
        otlphttp:
          endpoint: http://x.xxx.252.66:4318 # Instana Agent details.
    • Envoyer les données d' OpenTelemetry s au backend Instana : configurez le point de terminaison du backend Instana comme indiqué dans l'exemple suivant. Pour plus d'informations, consultez la section « Envoi de données d' OpenTelemetry s vers le backend Instana ».
        exporters:
          debug:
            verbosity: detailed
          otlphttp:
            endpoint: https://otlp-blue-saas.instana.io:4318 # An example for a SaaS environment
            headers:
              x-instana-key: <your_instana_key>
              x-instana-host: ${env:HOSTNAME:-hostname}
    Pour plus d'informations sur le point de terminaison d'environnement Instana SaaS, consultez la section « Points de terminaison du backend otlp-acceptor de Instana ».
  5. Mettez à jour le nom d'hôte dans les attributs de ressource de processeur du fichier de configuration si nécessaire. Par exemple, sur un système Linux , vous pouvez trouver le nom d'hôte à l'aide de la commande suivante:

       hostname -f
     
  6. Mettez à jour l'identifiant de l'hôte dans les attributs de la ressource « processeurs » du fichier de configuration. Par exemple, sur un système Linux , vous pouvez trouver l'ID hôte à l'aide de la commande suivante:

       cat /etc/machine-id
     
  7. Démarrez OpenTelemetry Collector et exécutez otelcol-contrib avec les fichiers de configuration, comme illustré dans l'exemple suivant:

       otelcol-contrib --config host-snmp.yaml 
     

Exemple de fichiers de configuration

Vous pouvez réutiliser les exemples répertoriés pour créer des fichiers de configuration.

Surveillance de localhost

Voici un exemple de fichier de configuration permettant de surveiller les métriques de localhost sur Instana dans l'extrait de code suivant :

receivers:
  snmp:
    collection_interval: 60s
    endpoint: udp://127.0.0.1:161
    version: v1 # Version of SNMP typically v1, v2c or v3
    security_level: no_auth_no_priv2
    user: # username
    auth_type: "MD5"
    auth_password: #password
    privacy_type: #"DES"
    privacy_password: # password
    attributes:
      cpustate:
        value: state
        enum:
          - user
          - system
          - idle
          - interrupt
          - nice
          - steal
          - softirq
          - wait
      cpu:
        value: cpu
        enum:
          - cpuall
      cpuloadstate:
        value: direction
        enum:
          - Load-1
          - Load-5
          - Load-15
      diskdevice:
        value: device
        oid: ".1.3.6.1.4.1.2021.13.15.1.1.2"
      diskdirection:
        value: direction
        enum:
          - read
          - write
      memstate:
        value: state
        enum:
          - used
          - free
          - buffered
          - cached
          - slab_reclaimable
          - slab_unreclaimable
      filesystemstate:
        value: state
        enum:
          - free
          - used
          - reserved
      filesystemdevice:
        value: device
        oid: ".1.3.6.1.2.1.25.2.3.1.3"
      filesystemmountpoint:
        value: mountpoint
        oid: ".1.3.6.1.2.1.25.2.3.1.3"
      networkdirection:
        value: direction
        enum:
          - transmit
          - receive
      networkdevice:
        value: device
        oid: ".1.3.6.1.2.1.2.2.1.2"

    metrics:
      #cpu
      system.cpu.time:
        description: "CPU Time"
        unit: "s"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.11.9.0"
            attributes:
              - name: cpustate
                value: user
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.10.0"
            attributes:
              - name: cpustate
                value: system
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.11.0"
            attributes:
              - name: cpustate
                value: idle
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.51.0"
            attributes:
              - name: cpustate
                value: nice
              - name: cpu
                value: cpuall
      #cpuload
      system.cpu.load_average.1m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.10.1.6.1"
            attributes:
              - name: cpuloadstate
                value: Load-1
      system.cpu.load_average.5m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.10.1.6.2"
            attributes:
              - name: cpuloadstate
                value: Load-5
      system.cpu.load_average.15m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.10.1.6.3"
            attributes:
              - name: cpuloadstate
                value: Load-15
      #disk
      system.disk.io:
        description: "disk io"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.4.1.2021.13.15.1.1.3"
            attributes:
              - name: diskdevice
              - name: diskdirection
                value: read
          - oid: ".1.3.6.1.4.1.2021.13.15.1.1.4"
            attributes:
              - name: diskdevice
              - name: diskdirection
                value: write
      #mem
      system.memory.usage:
        description: "Memory used"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.4.6.0"
            attributes:
              - name: memstate
                value: used
      #filesystem
      system.filesystem.usage:
        description: "usage"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.25.2.3.1.6"
            attributes:
              - name: filesystemdevice
              - name: filesystemmountpoint
              - name: filesystemstate
                value: used
      #network
      system.network.dropped:
        description: "dropped"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.13"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.19"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
      system.network.errors:
        description: "error"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.14"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.20"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
      system.network.io:
        description: "io"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.10"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.16"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
      system.network.packets:
        description: "packages"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.11"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.17"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:55677
      http:
        endpoint: 0.0.0.0:55678
        cors:
          allowed_origins:
            - "http://*"
            - "https://*"              
exporters:
  debug:
    verbosity: detailed
  otlphttp:
    endpoint: http://9.112.252.66:4318 # Agent ip with 4318 port.

processors:
  batch:
  resourcedetection:
    detectors: [system]
    timeout: 2s
    override: true
    system:
      hostname_sources: ["dns", "os"]
  resource:
    attributes:
      - key: INSTANA_PLUGIN
        action: upsert
        value: "host"
      - key: host.name
        action: upsert
        value: "HostName" #Host Name
      - key: host.id
        action: upsert
        value: "HostId" #Host ID
      - key: snmp.endpoint
        action: upsert
        value: "127.0.0.1" # Host IP Address

service:
  pipelines:
    metrics:
      receivers: [snmp]
      processors: [batch,resource]
      exporters: [debug, otlphttp]
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [debug, otlphttp]
  telemetry:
    metrics:
      address: localhost:18888
      level: basic
 

Surveillance d'un hôte distant

L'extrait de code suivant présente un exemple de fichier de configuration permettant de surveiller les métriques d'un hôte distant sur Instana, avec un hôte distant tel que l'adresse IP 9.204.201.18 :

receivers:
  snmp:
    collection_interval: 60s
    endpoint: udp://9.204.201.18:161 # Remote Host IP
    version: v1 # Version of SNMP typically v1, v2c or v3
    security_level: no_auth_no_priv2
    user: # username
    auth_type: "MD5"
    auth_password: #password
    privacy_type: #"DES"
    privacy_password: # password
    attributes:
      cpustate:
        value: state
        enum:
          - user
          - system
          - idle
          - interrupt
          - nice
          - steal
          - softirq
          - wait
      cpu:
        value: cpu
        enum:
          - cpuall
      cpuloadstate:
        value: direction
        enum:
          - Load-1
          - Load-5
          - Load-15
      diskdevice:
        value: device
        oid: ".1.3.6.1.4.1.2021.13.15.1.1.2"
      diskdirection:
        value: direction
        enum:
          - read
          - write
      memstate:
        value: state
        enum:
          - used
          - free
          - buffered
          - cached
          - slab_reclaimable
          - slab_unreclaimable
      filesystemstate:
        value: state
        enum:
          - free
          - used
          - reserved
      filesystemdevice:
        value: device
        oid: ".1.3.6.1.2.1.25.2.3.1.3"
      filesystemmountpoint:
        value: mountpoint
        oid: ".1.3.6.1.2.1.25.2.3.1.3"
      networkdirection:
        value: direction
        enum:
          - transmit
          - receive
      networkdevice:
        value: device
        oid: ".1.3.6.1.2.1.2.2.1.2"

    metrics:
      #cpu
       system.cpu.time:
        description: "CPU Time"
        unit: "s"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.11.9.0"
            attributes:
              - name: cpustate
                value: user
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.10.0"
            attributes:
              - name: cpustate
                value: system
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.11.0"
            attributes:
              - name: cpustate
                value: idle
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.51.0"
            attributes:
              - name: cpustate
                value: nice
              - name: cpu
                value: cpuall
       #cpuload
       system.cpu.load_average.1m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.10.1.6.1"
            attributes:
              - name: cpuloadstate
                value: Load-1
       system.cpu.load_average.5m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
         - oid: ".1.3.6.1.4.1.2021.10.1.6.2"
           attributes:
              - name: cpuloadstate
                value: Load-5
       system.cpu.load_average.15m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
         - oid: ".1.3.6.1.4.1.2021.10.1.6.3"
           attributes:
              - name: cpuloadstate
                value: Load-15
       #disk
       system.disk.io:
        description: "disk io"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.4.1.2021.13.15.1.1.3"
            attributes:
              - name: diskdevice
              - name: diskdirection
                value: read
          - oid: ".1.3.6.1.4.1.2021.13.15.1.1.4"
            attributes:
              - name: diskdevice
              - name: diskdirection
                value: write
       #mem
       system.memory.usage:
         description: "Memory used"
         unit: "by"
         sum:
           aggregation: cumulative
           monotonic: true
           value_type: int
         scalar_oids:
           - oid: ".1.3.6.1.4.1.2021.4.6.0"
             attributes:
               - name: memstate
                 value: used
       #filesystem
       system.filesystem.usage:
        description: "usage"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.25.2.3.1.6"
            attributes:
              - name: filesystemdevice
              - name: filesystemmountpoint
              - name: filesystemstate
                value: used
       #network
       system.network.dropped:
        description: "dropped"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.13"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.19"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.errors:
        description: "error"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.14"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.20"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.io:
        description: "io"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.10"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.16"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.packets:
        description: "packages"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.11"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.17"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:55677
      http:
        endpoint: 0.0.0.0:55678
        cors:
          allowed_origins:
            - "http://*"
            - "https://*"
exporters:
  debug:
    verbosity: detailed
  otlphttp:
    endpoint: http://9.112.252.66:4318 # Instana Agent Information

processors:
  batch:
  resourcedetection:
    detectors: [system]
    timeout: 2s
    override: true
    system:
      hostname_sources: ["dns", "os"]
  resource:
    attributes:
    - key: INSTANA_PLUGIN
      action: upsert
      value: "host"
    - key: host.name
      action: upsert
      value: "HostName" #Host Name
    - key: host.id
      action: upsert
      value: "HostId"  #Host ID
    - key: snmp.endpoint
      action: upsert
      value: "9.204.201.18" #Remote Host IP

service:
  pipelines:
    metrics:
      receivers: [snmp]
      processors: [batch,resource]
      exporters: [debug, otlphttp]
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [debug, otlphttp]
  telemetry:
    metrics:
      address: localhost:18888
      level: basic
 

Surveillance de plusieurs hôtes :

L'extrait suivant présente un exemple de fichier de configuration permettant de surveiller les métriques de plusieurs hôtes sur Instana. Dans le fichier de configuration, des sections sont créées pour chaque hôte avec des pipelines distincts.

receivers:
  snmp:
    collection_interval: 60s
    endpoint: udp://127.0.0.1:161 #Host1 - Localhost
    version: v1
    security_level: no_auth_no_priv2
    user: snmpuser
    auth_type: "MD5"
    auth_password: "passw0rd"
    privacy_type: "DES"
    privacy_password: "passw0rd"
    attributes:
      cpustate:
        value: state
        enum:
          - user
          - system
          - idle
          - interrupt
          - nice
          - steal
          - softirq
          - wait
      cpu:
        value: cpu
        enum:
          - cpuall
      cpuloadstate:
        value: direction
        enum:
          - Load-1
          - Load-5
          - Load-15
      diskdevice:
        value: device
        oid: ".1.3.6.1.4.1.2021.13.15.1.1.2"
      diskdirection:
        value: direction
        enum:
          - read
          - write
      memstate:
        value: state
        enum:
          - used
          - free
          - buffered
          - cached
          - slab_reclaimable
          - slab_unreclaimable
      filesystemstate:
        value: state
        enum:
          - free
          - used
          - reserved
      # filesystemdevice:
      #   oid: ".1.3.6.1.2.1.25.2.3.1.3"
      filesystemdevice:
        value: device
        oid: ".1.3.6.1.2.1.25.2.3.1.3"
      filesystemmountpoint:
        value: mountpoint
        oid: ".1.3.6.1.2.1.25.2.3.1.3"
      networkdirection:
        value: direction
        enum:
          - transmit
          - receive
      # networkdevice:
      #   oid: ".1.3.6.1.2.1.2.2.1.2"
      networkdevice:
        value: device
        oid: ".1.3.6.1.2.1.2.2.1.2"

    metrics:
      #cpu
       system.cpu.time:
        description: "CPU Time"
        unit: "s"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.11.9.0"
            attributes:
              - name: cpustate
                value: user
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.10.0"
            attributes:
              - name: cpustate
                value: system
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.11.0"
            attributes:
              - name: cpustate
                value: idle
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.51.0"
            attributes:
              - name: cpustate
                value: nice
              - name: cpu
                value: cpuall
       #cpuload
       system.cpu.load_average.1m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.10.1.6.1"
            attributes:
              - name: cpuloadstate
                value: Load-1
       system.cpu.load_average.5m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
         - oid: ".1.3.6.1.4.1.2021.10.1.6.2"
           attributes:
              - name: cpuloadstate
                value: Load-5
       system.cpu.load_average.15m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
         - oid: ".1.3.6.1.4.1.2021.10.1.6.3"
           attributes:
              - name: cpuloadstate
                value: Load-15
       #disk
       system.disk.io:
        description: "disk io"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.4.1.2021.13.15.1.1.3"
            attributes:
              - name: diskdevice
              - name: diskdirection
                value: read
          - oid: ".1.3.6.1.4.1.2021.13.15.1.1.4"
            attributes:
              - name: diskdevice
              - name: diskdirection
                value: write
       #mem
       system.memory.usage:
         description: "Memory used"
         unit: "by"
         sum:
           aggregation: cumulative
           monotonic: true
           value_type: int
         scalar_oids:
           - oid: ".1.3.6.1.4.1.2021.4.6.0"
             attributes:
               - name: memstate
                 value: used
       #filesystem
       system.filesystem.usage:
        description: "usage"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.25.2.3.1.6"
            attributes:
              - name: filesystemdevice
              - name: filesystemmountpoint
              # - name: storageType
              - name: filesystemstate
                value: used
       #network
       system.network.dropped:
        description: "dropped"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.13"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.19"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.errors:
        description: "error"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.14"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.20"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.io:
        description: "io"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.10"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.16"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.packets:
        description: "packages"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.11"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.17"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
  snmp/2:
    collection_interval: 100s
    endpoint: udp://9.204.201.18:161 #Host 2: Remote Host 
    version: v1
    security_level: no_auth_no_priv2
    user: snmpuser
    auth_type: "MD5"
    auth_password: "passw0rd"
    privacy_type: "DES"
    privacy_password: "passw0rd"
    attributes:
      cpustate:
        value: state
        enum:
          - user
          - system
          - idle
          - interrupt
          - nice
          - steal
          - softirq
          - wait
      cpu:
        value: cpu
        enum:
          - cpuall
      cpuloadstate:
        value: direction
        enum:
          - Load-1
          - Load-5
          - Load-15
      diskdevice:
        value: device
        oid: ".1.3.6.1.4.1.2021.13.15.1.1.2"
      diskdirection:
        value: direction
        enum:
          - read
          - write
      memstate:
        value: state
        enum:
          - used
          - free
          - buffered
          - cached
          - slab_reclaimable
          - slab_unreclaimable
      filesystemstate:
        value: state
        enum:
          - free
          - used
          - reserved
      # filesystemdevice:
      #   oid: ".1.3.6.1.2.1.25.2.3.1.3"
      filesystemdevice:
        value: device
        oid: ".1.3.6.1.2.1.25.2.3.1.3"
      filesystemmountpoint:
        value: mountpoint
        oid: ".1.3.6.1.2.1.25.2.3.1.3"
      networkdirection:
        value: direction
        enum:
          - transmit
          - receive
      # networkdevice:
      #   oid: ".1.3.6.1.2.1.2.2.1.2"
      networkdevice:
        value: device
        oid: ".1.3.6.1.2.1.2.2.1.2"

    metrics:
      #cpu
       system.cpu.time:
        description: "CPU Time"
        unit: "s"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.11.9.0"
            attributes:
              - name: cpustate
                value: user
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.10.0"
            attributes:
              - name: cpustate
                value: system
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.11.0"
            attributes:
              - name: cpustate
                value: idle
              - name: cpu
                value: cpuall
          - oid: ".1.3.6.1.4.1.2021.11.51.0"
            attributes:
              - name: cpustate
                value: nice
              - name: cpu
                value: cpuall
       #cpuload
       system.cpu.load_average.1m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
          - oid: ".1.3.6.1.4.1.2021.10.1.6.1"
            attributes:
              - name: cpuloadstate
                value: Load-1
       system.cpu.load_average.5m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
         - oid: ".1.3.6.1.4.1.2021.10.1.6.2"
           attributes:
              - name: cpuloadstate
                value: Load-5
       system.cpu.load_average.15m:
        description: "CPU load"
        unit: "1"
        gauge:
          value_type: double
        scalar_oids:
         - oid: ".1.3.6.1.4.1.2021.10.1.6.3"
           attributes:
              - name: cpuloadstate
                value: Load-15
       #disk
       system.disk.io:
        description: "disk io"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.4.1.2021.13.15.1.1.3"
            attributes:
              - name: diskdevice
              - name: diskdirection
                value: read
          - oid: ".1.3.6.1.4.1.2021.13.15.1.1.4"
            attributes:
              - name: diskdevice
              - name: diskdirection
                value: write
       #mem
       system.memory.usage:
         description: "Memory used"
         unit: "by"
         sum:
           aggregation: cumulative
           monotonic: true
           value_type: int
         scalar_oids:
           - oid: ".1.3.6.1.4.1.2021.4.6.0"
             attributes:
               - name: memstate
                 value: used
       system.filesystem.usage:
        description: "usage"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.25.2.3.1.6"
            attributes:
              - name: filesystemdevice
              - name: filesystemmountpoint
              # - name: storageType
              - name: filesystemstate
                value: used
       #network
       system.network.dropped:
        description: "dropped"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.13"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.19"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.errors:
        description: "error"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.14"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.20"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.io:
        description: "io"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.10"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.16"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
       system.network.packets:
        description: "packages"
        unit: "by"
        sum:
          aggregation: cumulative
          monotonic: true
          value_type: int
        column_oids:
          - oid: ".1.3.6.1.2.1.2.2.1.11"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: receive
          - oid: ".1.3.6.1.2.1.2.2.1.17"
            attributes:
              - name: networkdevice
              - name: networkdirection
                value: transmit
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:55677
      http:
        endpoint: 0.0.0.0:55678
        cors:
          allowed_origins:
            - "http://*"
            - "https://*"
exporters:
  debug:
    verbosity: detailed
  otlphttp:
    endpoint: http://9.112.252.66:4318
  otlphttp/2:
    endpoint: http://9.204.201.18:4318

processors:
  batch:
  resourcedetection:
    detectors: [system]
    timeout: 2s
    override: true
    system:
      hostname_sources: ["dns", "os"]
  resource:
    attributes:
    - key: INSTANA_PLUGIN
      action: upsert
      value: "host"
    - key: host.name
      action: upsert
      value: "LocalHost" # Host Name
    - key: host.id
      action: upsert
      value: "LocalHost" # Host ID
    - key: snmp.endpoint
      action: upsert
      value: "127.0.0.1" # Host IP
  resource/2:
    attributes:
    - key: INSTANA_PLUGIN
      action: upsert
      value: "host"
    - key: host.name
      action: upsert
      value: "RemoteHost" #Host Name
    - key: host.id
      action: upsert
      value: "RemoteHost" # Host ID
    - key: snmp.endpoint
      action: upsert
      value: "9.204.201.18" # Host IP

service:
  pipelines:
    metrics:
      receivers: [snmp]
      processors: [batch,resource]
      exporters: [debug, otlphttp]
    metrics/2:
      receivers: [snmp/2]
      processors: [batch, resource/2]
      exporters: [debug, otlphttp]  
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [debug, otlphttp]
  telemetry:
    metrics:
      address: localhost:18888
      level: basic
 

Pour plus d'informations sur les autres alternatives d'installation et d'utilisation des exécutables OpenTelemetry , voir Installation du collecteur.