risingwavelabs/risingwave · warning · DashboardError

Prometheus endpoint is not set

Error message

Prometheus endpoint is not set

What it means

The dashboard's Prometheus cluster-metrics handler (`list_prometheus_cluster`) needs the Prometheus endpoint configured on the meta service. If it is None, CPU/memory metric queries cannot be built, so the endpoint returns 'Prometheus endpoint is not set'.

Solutions

  1. Configure the Prometheus endpoint via the meta node's Prometheus flags or config, then restart the meta node.
  2. Ensure Prometheus is actually scraping RisingWave's metrics port so the endpoint returns useful data.
  3. Disable or avoid the metrics dashboard panels that depend on this endpoint if Prometheus is intentionally absent.

Example fix

// before (risedev profile without prometheus)
./risedev d
// after
./risedev d ci-extra  # or a profile including the prometheus component
Defensive patterns

Strategy: fallback

Validate before calling

// Only enable cluster metrics panels when the meta node was started with a Prometheus endpoint
if (!metaArgs.prometheusHost) console.warn('list_prometheus_cluster unavailable without a Prometheus endpoint');

Type guard

function prometheusConfigured(srvConfig) { return srvConfig.prometheusEndpoint != null; }

Try / catch

try { const metrics = await fetchClusterMetrics(); } catch (e) {
  if (String(e).includes('Prometheus endpoint is not set')) {
    // render an empty/no-data state instead of retrying
  }
}

Prevention

When it happens

Trigger: Requesting the dashboard cluster metrics endpoint (CPU/memory graphs) when the meta node runs without a Prometheus endpoint configured.

Common situations: Dev environments without the Prometheus component; Helm/risedev profiles that omit Prometheus; dashboard opened against a bare `risingwave meta-node` started with default flags.

Understand the failure class

Background: "is required", "must be set", "missing required field": configuration validation errors across open-source libraries — this error's family across 36 libraries.

Related errors


AI-assisted analysis of risingwavelabs/risingwave@6469eb736d (2026-09-11). Data as JSON: /api/errors/91451c3f93c14625. Report an issue: GitHub.

Appendix: source

Thrown at src/meta/src/dashboard/prometheus.rs:140

                    .as_secs() as i64,
                60.0,
            )
            .get()
            .await
            .map_err(err)?;
        let memory_data = result
            .data()
            .as_matrix()
            .unwrap()
            .iter()
            .map(PrometheusVector::from)
            .collect();
        Ok(Json(ClusterMetrics {
            cpu_data,
            memory_data,
        }))
    } else {
        Err(err(anyhow!("Prometheus endpoint is not set")))
    }
}

View on GitHub (pinned to 6469eb736d)