1
votes

Sondes renvoyant zéro

J'ai du mal à comprendre pourquoi certains points de terminaison HTTP renvoient '0' pour 'probe_success' et 'probe_http_status_code', tout en étant parfaitement capable d'obtenir une réponse "valide" avec curl.

Exemple: curl -s "localhost: 9115 / probe? target = http: //linux.org&module=http_2xx" | grep -v '^ #'

Sortie:

modules:
  http_2xx:
    prober: http
    timeout: 15s
    http:
      valid_status_codes: []
      method: GET

Voici la définition du travail:

  - job_name: 'blackbox'
    scrape_interval: 30s
    metrics_path: /probe
    params:
      module: [http_2xx]
    static_configs:
      - targets:
        - http://linux.org
    relabel_configs:
      - source_labels: [__address__]
        regex: '(.*)(:80)?'
        target_label: __param_target
      - source_labels: [__param_target]
        regex: '(.*)'
        target_label: instance
        replacement: '${1}'
      - source_labels: []
        regex: '.*'
        target_label: __address__
        replacement: 'blackbox:9115'


7 commentaires

Quelque chose dans les journaux de l'exportateur de la boîte noire? Où / comment gérez-vous l'exportateur blackbo? dans un conteneur docker? avez-vous mis à jour / installé le package ca-certificates ?


@Oliver rien sur les logs de Blackbox-Exporter. Cela fonctionne sur docker. Oui, j'ai également installé des certificats ca sous / etc / ssl / certs mais le résultat est le même.


Il semblerait que vous receviez une redirection (selon probe_http_redirects 1 , probablement https://linux.org ) mais cette requête échoue. Le probe_http_duration_seconds {phase = "tls"} 0 semble prendre en charge cela. Le court probe_duration_seconds suggère que la connexion HTTPS n'est même pas tentée (pour moi, il faut environ 1+ secondes pour obtenir une sonde réussie). Pare-feu?


Avez-vous essayé la requête curl depuis le conteneur blackbox_exporter? (en utilisant docker exec ... / bin / sh)


@Oliver oui, je l'ai fait.


Peut-être que nous manquons tous quelque chose d'évident, mais à première vue, cela semble être un bogue d'exportateur de boîte noire. Vous devriez probablement signaler un problème: github.com/prometheus/blackbox_exporter/issues


Désolé les gars! J'avais 2 instances de boîte noire en cours d'exécution et je testais la mauvaise ... Néanmoins, j'ai un autre couple de domaines qui échouent avec la même sortie que ci-dessus. Je vous ferai savoir dès que je comprendrai pourquoi. Merci!


3 Réponses :


2
votes

Si vous ajoutez & debug = true , vous obtiendrez des détails sur l'erreur.

Ma supposition est que blackbox_exporter ne peut pas se connecter car il utilise par défaut des connexions ipv6 et c'est ne fonctionne pas.

Dans mon cas (même problème), la sortie de débogage indique

modules:
  http_2xx:
    prober: http
    timeout: 15s
    http:
      valid_status_codes: []
      method: GET
      preferred_ip_protocol: "ip4" # <---- !

De documentation de la blackbox :

  # The IP protocol of the HTTP probe (ip4, ip6).
  [ preferred_ip_protocol: <string> | default = "ip6" ]
  [ ip_protocol_fallback: <boolean> | default = true ]

Donc, si vous modifiez votre module configuration, cela devrait fonctionner:

level=error msg="Resolving target address" ip_protocol=ip6
level=error msg="Resolution with IP protocol failed (fallback_ip_protocol is false): err"
level=error msg="Error resolving address" err="address apple.com: no suitable address found"
level=error msg="Probe failed" duration_seconds=0.003648031


0 commentaires

2
votes

Dans mon erreur était: "x509: certificat signé par une autorité inconnue"

Modifier l'option dans la section http

 tls_config:
    insecure_skip_verify: true


1 commentaires

Je pense que vous devriez définir insecure_skip_verify sur true , PAS false



1
votes

Dans mon cas, je devais ajouter dans la section valid_http_versions l'entrée HTTP / 1.0 . Mon point de terminaison était Odoo 13. Le & debug = true suggéré par @Rafa m'a donné les informations pour m'en rendre compte.


0 commentaires