mirror of
https://github.com/hanzoai/metrics.git
synced 2026-10-30 20:03:39 +00:00
This eliminates the need of manual conversion between MetricMetadataType and uint32 / int32.
Updates https://github.com/VictoriaMetrics/VictoriaMetrics/issues/2974
This is a follow-up for the commit 6c58091b20
36 lines
940 B
Plaintext
36 lines
940 B
Plaintext
{% import (
|
|
"github.com/VictoriaMetrics/VictoriaMetrics/lib/storage/metricsmetadata"
|
|
"github.com/VictoriaMetrics/VictoriaMetrics/lib/querytracer"
|
|
) %}
|
|
|
|
{% stripspace %}
|
|
MetadataResponse generates response for /api/v1/metadata
|
|
See https://prometheus.io/docs/prometheus/latest/querying/api/#querying-metric-metadata
|
|
{% func MetadataResponse( result []*metricsmetadata.Row, qt *querytracer.Tracer) %}
|
|
{
|
|
"status":"success",
|
|
"data": {
|
|
{% code
|
|
mapItems := len(result)
|
|
currentItem := 0
|
|
%}
|
|
{% for _, row := range result %}
|
|
"{%s string(row.MetricFamilyName) %}": [
|
|
{
|
|
"type": {%q= row.Type.String() %},
|
|
{% if len(row.Unit) > 0 -%}
|
|
"unit": {%q= string(row.Unit) %},
|
|
{% endif -%}
|
|
"help": {%q= string(row.Help) %}
|
|
}
|
|
]
|
|
{% if currentItem != mapItems-1 %},{% endif %}
|
|
{% code currentItem++ %}
|
|
{% endfor %}
|
|
}
|
|
{%= dumpQueryTrace(qt) %}
|
|
}
|
|
{% endfunc %}
|
|
|
|
{% endstripspace %}
|