SigNoz/signoz · error

error while executing meter name query: %s

Error message

error while executing meter name query: %s

What it means

GetMeterName query failure: the SELECT listing metric meters (name, type, temporality, isMonotonic) filtered by search text failed to execute against ClickHouse. The %s carries the driver-level error for diagnosis. Analogous to error 349 but for the meters listing API.

Source

Thrown at pkg/query-service/app/clickhouseReader/reader.go:3065

		instrumentationtypes.CodeFunctionName: "GetMeterAggregateAttributes",
	})
	var response v3.AggregateAttributeResponse
	// Query all relevant metric names from time_series_v4, but leave metadata retrieval to cache/db
	query := fmt.Sprintf(
		`SELECT metric_name,type,temporality,is_monotonic
		 FROM %s.%s
		 WHERE metric_name ILIKE $1
		 GROUP BY metric_name,type,temporality,is_monotonic`,
		signozMeterDBName, signozMeterSamplesName)

	if req.Limit != 0 {
		query = query + fmt.Sprintf(" LIMIT %d;", req.Limit)
	}

	rows, err := r.db.Query(ctx, query, fmt.Sprintf("%%%s%%", req.SearchText))
	if err != nil {
		r.logger.Error("Error while querying meter names", errorsV2.Attr(err))
		return nil, fmt.Errorf("error while executing meter name query: %s", err.Error())
	}
	defer rows.Close()

	for rows.Next() {
		var name string
		var typ string
		var temporality string
		var isMonotonic bool
		if err := rows.Scan(&name, &typ, &temporality, &isMonotonic); err != nil {
			return nil, fmt.Errorf("error while scanning meter name: %s", err.Error())
		}

		// Non-monotonic cumulative sums are treated as gauges
		if typ == "Sum" && !isMonotonic && temporality == string(v3.Cumulative) {
			typ = "Gauge"
		}

		// unlike traces/logs `tag`/`resource` type, the `Type` will be metric type

View on GitHub (pinned to 5069bf80b0)

Solutions

  1. Read the appended %s error text for the root cause
  2. Create/verify the metrics tables via SigNoz migrations and confirm data exists
  3. Verify ClickHouse connectivity and retry once healthy
  4. Check for schema drift if the meter query references columns added in a newer version
Defensive patterns

Strategy: retry

Validate before calling

// confirm meters data exists: SELECT count() FROM signoz_metrics.time_series

Try / catch

if err != nil {
  if isTransientClickhouseErr(err) { return nil, retry(ctx) }
  if strings.Contains(err.Error(), "UNKNOWN_TABLE") { return []model.MeterInfo{}, nil }
  return nil, err
}

Prevention

When it happens

Trigger: Calling the meters listing endpoint when the metrics tables are absent, ClickHouse is unreachable, or a version skew makes the four-column meter query invalid against the deployed schema.

Common situations: Fresh install with no metrics; missing migrations after upgrade; datasource misconfig; ClickHouse restart mid-request.

Related errors


AI-assisted analysis of SigNoz/signoz@5069bf80b0 (2026-08-28). Data as JSON: /api/errors/df7dc472315ffdc5. Report an issue: GitHub.