Can't get Blackbox Exporter TCP probe to return value of 1

Hi. I’m looking to probe a simple Iperf3 server with Blackbox Exporter, TCP probe. But as it’s currently configured, I can’t get it to return a query value of “1”, it returns “0” instead.

This is my blackbox.yml:

modules:
  http_2xx:
    prober: http
    http:
      method: GET
  http_post_2xx:
    prober: http
    http:
      method: POST
  tcp_connect:
    prober: tcp
    timeout: 5s
  pop3s_banner:
    prober: tcp
    tcp:
      query_response:
      - expect: "^+OK"
      tls: true
      tls_config:
        insecure_skip_verify: false
  ssh_banner:
    prober: tcp
    tcp:
      query_response:
      - expect: "^SSH-2.0-"
  icmp:
    prober: icmp

I’m using the module tcp_connect , and I imagine I need to add something to this module to get it to return a value of “1”, but I’m not sure how.

Can anyone help with a working module config for a simple TCP probe?

Thanks.

For some very strange reason, I can’t edit my post. So here is some more info:

My Prometheus.yml : (Blackbox job under scrape configs)

  - job_name: 'blackbox-tcp'
    scrape_interval: 60s
    metrics_path: /probe
    params:
      module: [tcp_connect]  # Look for TCP response
    static_configs:
      - targets:
        - http://10.10.2.2:5201       # Iperf3 server
        - http://10.10.2.4:9201       # Portainer agent
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 10.10.2.4:9095  # The blackbox exporter's real hostname:port.

All my HTTP endpoints are working fine and all endpoints are up. In addition, I can connect to the Iperf3 server on 10.10.2.2:5201 with Telnet to confirm it’s running.

But Blackbox exporter still returns a value of “0” in the query. Any ideas?

Of course the TCP targets should not be prefixed with http://. When I made this change, everything worked.

- job_name: 'blackbox-tcp'
    scrape_interval: 60s
    metrics_path: /probe
    params:
      module: [tcp_connect]  # Look for TCP response
    static_configs:
      - targets:
        - 10.10.2.2:5201       # Iperf3 server
        - 10.10.2.4:9201       # Portainer agent
    relabel_configs:
      - source_labels: [__address__]
        target_label: __param_target
      - source_labels: [__param_target]
        target_label: instance
      - target_label: __address__
        replacement: 10.10.2.4:9095  # The blackbox exporter's real hostname:port.