You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Prometheus accepts goss http responses without error.
Actual Behavior
The UI displays
Error scraping target: received unsupported Content-Type "application/vnd.goss-prometheus" and no fallback_scrape_protocol specified for target
The prometheus logs include the following error
time=2025-01-02T13:45:26.208Z level=ERROR source=scrape.go:1585 msg="Failed to determine correct type of scrape target." component="scrape manager" scrape_pool=podMonitor/intranet-proxy/goss-pod-monitor/0 target=http://10.42.13.15:8080/healthz content_type=application/vnd.goss-prometheus fallback_media_type="" err="received unsupported Content-Type \"application/vnd.goss-prometheus\" and no fallback_scrape_protocol specified for target"
Prometheus v3 is more strict concerning the Content-Type header received when scraping. Prometheus v2 would default to the standard Prometheus text protocol if the target being scraped did not specify a Content-Type header or if the header was unparsable or unrecognised. This could lead to incorrect data being parsed in the scrape. Prometheus v3 will now fail the scrape in such cases.
If a scrape target is not providing the correct Content-Type header the fallback protocol can be specified using the fallback_scrape_protocol parameter.
This is a breaking change as scrapes that may have succeeded with Prometheus v2 may now fail if this fallback protocol is not specified.
Describe the bug
Prometheus 3.0 is now rejecting goss /healthz endpoint responses
Workaround
In the prometheus scrape configuration documented at https://prometheus.io/docs/prometheus/latest/configuration/configuration/#scrape_config, specify the
fallbackScrapeProtocol: PrometheusText0.0.4
How To Reproduce
goss --gossfile goss-integration.yaml serve --listen-addr :8080 --format prometheus
Expected Behavior
Prometheus accepts goss http responses without error.
Actual Behavior
The UI displays
The prometheus logs include the following error
time=2025-01-02T13:45:26.208Z level=ERROR source=scrape.go:1585 msg="Failed to determine correct type of scrape target." component="scrape manager" scrape_pool=podMonitor/intranet-proxy/goss-pod-monitor/0 target=http://10.42.13.15:8080/healthz content_type=application/vnd.goss-prometheus fallback_media_type="" err="received unsupported Content-Type \"application/vnd.goss-prometheus\" and no fallback_scrape_protocol specified for target"
Environment:
goss version v0.4.9
References
https://prometheus.io/docs/prometheus/latest/migration/#scrape-protocols
https://prometheus.io/docs/instrumenting/exposition_formats/#text-based-format
Basic info
The text was updated successfully, but these errors were encountered: