GoogleContainerTools/skaffold · warning

one platform returned an non-success response: %d

Error message

one platform returned an non-success response: %d

What it means

firelog's sendDataPoint POSTs the metric payload to the Firebase logging endpoint (firebaselogging-pa.googleapis.com). If the server responds with any status other than 200 OK, it returns "one platform returned an non-success response: %d" with the HTTP status code. The metric data point was not accepted by Google's logging backend.

Source

Thrown at pkg/skaffold/instrumentation/firelog/exporter.go:140

	return nil
}

func sendDataPoint(name string, dp DataPoint) error {
	kvs := toEventMetadata(dp.attributes())
	kvs = append(kvs, KeyValue{Key: name, Value: dp.value()})
	str, err := buildProtoStr(name, kvs)
	if err != nil {
		return err
	}
	data := buildMetricData(str, dp.eventTime())

	resp, err := POST(fmt.Sprintf(`https://firebaselogging-pa.googleapis.com/v1/firelog/legacy/log?key=%s`, APIKey), "application/json", data.newReader())
	if err != nil {
		return err
	}
	defer resp.Body.Close()
	if resp.StatusCode != http.StatusOK {
		return fmt.Errorf("one platform returned an non-success response: %d", resp.StatusCode)
	}

	return err
}

func buildMetricData(proto string, startTimeMS int64) MetricData {
	return MetricData{
		ClientInfo: ClientInfo{ClientType: "DESKTOP"},
		LogSource:  "CONCORD",
		LogEvent: LogEvent{
			EventTimeMS:                  startTimeMS,
			SourceExtensionJSONProto3Str: proto,
		},
		RequestTimeMS: startTimeMS,
	}
}

func buildProtoStr(name string, kvs EventMetadata) (string, error) {

View on GitHub (pinned to a1189de023)

Solutions

  1. Check the reported status code: 4xx indicates payload/API-key problems; 5xx indicates retry later.
  2. Verify network/proxy allows HTTPS to firebaselogging-pa.googleapis.com.
  3. Disable skaffold metrics collection (`skaffold config set --global collect-metrics false`) — this error only affects telemetry, not skaffold functionality.
  4. Retry later if the status is 429 or 5xx (server-side issue).
Defensive patterns

Strategy: retry

Validate before calling

resp, err := http.Head("https://firebaselogging-pa.googleapis.com")
if err != nil {
    log.Println("firelog endpoint unreachable; telemetry will fail")
}

Try / catch

if err := sendDataPoint(dp); err != nil {
    var he *HTTPStatusError
    if strings.Contains(err.Error(), "non-success response") {
        // backoff and retry for 429/5xx only
    }
}

Prevention

When it happens

Trigger: Metrics export attempts where the firelog POST returns a non-200 status — e.g. 400 from a malformed payload, 403/401 from API key rejection, or 429/5xx from server-side throttling/outages.

Common situations: Corporate proxies/firewalls intercepting the request, invalid or revoked firelog API key, Google-side service issues, or requests from blocked regions/networks.

Related errors


AI-assisted analysis of GoogleContainerTools/skaffold@a1189de023 (2026-09-05). Data as JSON: /api/errors/eba8bd9b6b0dfcfd. Report an issue: GitHub.