Definir variável do painel Grafana do escalar Prometheus

Definir variável do painel Grafana do escalar Prometheus

Preciso usar o número de núcleos de CPU em vários cálculos em um painel Grafana e esperava realizar a consulta uma vez e armazenar em uma variável. Não consigo encontrar uma maneira de retornar os dados em um formato que o Grafana aceite.

Erro de Grafana:

Template variables could not be initialized: parse error at char 1: vector selector must contain label matchers or metric name

Eu tentei (PromQL):

count(node_cpu{instance="$host",mode="system"})

Retorna:

Element {}, Value 2

Além disso (PromQL):

scalar(count(node_cpu{instance="$host",mode="system"}))

Retorna:

Element scalar, Value 2

Usando a função do Grafana query_resultassim:

query_result(count(node_cpu{instance="$host",mode="system"}))

Recebo os seguintes valores na visualização:

{} 2 1521669355000

O 2do meio é o que eu quero.

Alguma idéia de como fazer isso funcionar?

Responder1

Você pode usar o campo Regex para obter seu valor, no seu caso:/.* (.*) .*/

Responder2

Isso funciona se você colocar isso na caixa regex no grafana

/.*\s(.*)\s.*/

Responder3

Você deve evitar escalares para coisas como essa, pois não funciona se, por exemplo, você quiser representar graficamente algo com dois hosts que possam ter números diferentes de núcleos. Sugiro fazer isso dentro de cada expressão de consulta, em vez de por meio de uma variável de modelo.

informação relacionada