Cloud Intelligence™Cloud Intelligence™

Cloud Intelligence™

Como usar o Grafana para monitorar custos de nuvem com mais profundidade

Esta página também está disponível em English, Deutsch, Español, Français, Italiano e 日本語.

By Vadim SoloveyOct 4, 20224 min read
Vadim Solovey

About Vadim Solovey

Founded DoiT in 2011 and have been here ever since — in every flavor of CTO, co-CEO, and now CEO. I started my career in 1999 building data centers before anyone called it "the cloud," and I've spent the two decades since trying to deliver on what the cloud was actually supposed to be. I still write code most weeks.

My personal page

Veja como integrar o DoiT Cloud Analytics, nossa plataforma de gestão de custos, ao Grafana, plataforma open source de analytics e monitoramento, e ganhar muito mais visibilidade sobre seus gastos.

PerfectScale™ for Kubernetes

Ready to optimize?

Get your free Kubernetes savings analysis

Una o Grafana e o DoiT Cloud Analytics para monitorar e analisar seus custos de nuvem como nunca

O DoiT Cloud Analytics é uma plataforma moderna de gestão de custos para empresas digital-native, com visibilidade instantânea sobre os seus gastos em nuvem. O Grafana é uma plataforma open source para análises e monitoramento com visualizações de tirar o fôlego. Não seria ótimo unir o melhor dos dois mundos? Foi exatamente o que pensamos!

Com a plataforma Cloud Analytics da DoiT, você cria relatórios avançados de gastos em nuvem e compartilha com o seu time. Dá para agrupar recursos e seus respectivos custos com atribuições customizadas, identificar e analisar tendências, prever os custos da nuvem e gerenciar seus orçamentos sem precisar passar horas a fio escaneando faturas manualmente. Já para visualizar dados de séries temporais, o Grafana é a escolha certa: seja para monitoramento, alertas ou análise. Ele dá suporte a várias fontes populares de séries temporais, como Prometheus, InfluxDB, Graphite, Elasticsearch e muitas outras.

As possibilidades são quase infinitas — dashboards de logs, métricas de campanhas, análise de tráfego e, junto com tudo isso, o monitoramento preciso dos seus gastos no Amazon Web Services ou no Google Cloud, enviando os dados do Cloud Analytics para o Grafana.

Mas como colocar isso em prática? Nossa plataforma expõe uma API RESTful, o que facilita buscar qualquer relatório criado no DoiT Cloud Analytics. Para conhecer essas Report APIs e aprender a usá-las, é só acessar o DoiT Developer Portal.

De forma nativa, o Grafana não consegue buscar dados de APIs REST. Felizmente, existe o plugin Infinity, que faz exatamente isso: integra o Grafana a endpoints JSON, CSV, XML, GraphQL e HTML.

Passo 1

Instale o plugin Infinity pelo grafana.com, via grafana-cli ou direto do GitHub. A página do plugin tem todas as orientações para começar.

Passo 2

Para usar a Reports API, você vai precisar de uma chave de API. É possível gerar a sua chave do Cloud Analytics direto no seu perfil de usuário, seguindo as instruções do DoiT Developer Portal.

data-analytics-cloud

Passo 3

Configure a chave de API no dashboard do Grafana indicado, atualizando a variável cmp_api_key. Defina o valor da variável como "Bearer " (atenção ao espaço no final) seguido da própria chave de API.

grafana-aws

Passo 4

Adicione um novo painel ao seu dashboard do Grafana. Use "Infinity" como fonte de dados e configure o painel com os seguintes parâmetros:

Type deve ser "UQL"

Source deve ser "URL"

Format deve ser "Time Series"

URL deve apontar para a URL do seu relatório do Cloud Analytics. É a mesma URL que você usaria com o método reports.get() da Reports API (referência).

grafana-tool

Agora, a parte interessante é a query UQL. É aqui que você converte a resposta do reports.get() para um formato que o Grafana entende.

O UQL é uma linguagem de consulta opinativa, pensada para operações em memória. Uma query UQL é formada por uma lista de comandos unidos pelo caractere | (pipe), cada um em uma linha separada. Na maior parte do tempo, os campos aparecem entre aspas duplas e os valores de string entre aspas simples. Mais detalhes sobre a sintaxe UQL você encontra aqui.

No meu exemplo, a chamada ao reports.get() retorna a resposta abaixo. Removi alguns trechos para deixar mais enxuto:

graphana-dashboard

A parte "result" do JSON tem duas seções: "schema" e "rows". A primeira traz os metadados sobre a estrutura dos dados; a segunda, os dados em si.

Como o Grafana não sabe interpretar o "schema" do relatório, estou usando a seguinte UQL:

graphana-graph

Passo 5

Escolha a visualização que quiser para o seu relatório (e os demais parâmetros do painel que fizerem sentido). Pronto: o seu relatório do Cloud Analytics já aparece no Grafana!

Queremos ver os seus dashboards!

Esperamos que essa integração entre o Cloud Analytics e o Grafana seja tão útil para você quanto é para a gente — e adoraríamos ver o seu dashboard! Mande um screenshot para [email protected]. O dashboard mais votado leva um vale-presente da Amazon de US$ 500.

Quer mais conteúdos como este? Confira o nosso blog ou siga o Vadim no Twitter.

Your cloud bill shouldn't be a mystery

Optimization, automation, expertise. In one platform.