BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias Grafana Adiciona Correlação de Dados de Log a Métricas de Séries Temporais

Grafana Adiciona Correlação de Dados de Log a Métricas de Séries Temporais

A equipe do Grafana anunciou uma versão alfa do Loki, sua plataforma de registro que se conecta com outros recursos do Grafana, como consulta e visualização de métricas. O Loki inclui um novo agente cliente "promtail" e componentes do lado do servidor para indexação e armazenamento de metadados de log.

O Loki tem como objetivo adicionar rastreabilidade entre métricas, logs e rastreio, embora as metas iniciais de lançamento vinculem as duas primeiras. Os logs são agregados e indexados por um novo agente com suporte inicial para os pods do Kubernetes. Ele usa as mesmas APIs do Kubernetes e a configuração de nova rotulação como o Prometheus para garantir que os metadados entre métricas e logs permaneçam os mesmos para consultas posteriores. O Prometheus não é um pré-requisito para usar o Loki, no entanto, ter o Prometheus torna isso mais fácil. "Os metadados entre a correspondência de métricas e registros são críticos para nós e inicialmente decidimos apenas segmentar o Kubernetes", explicaram os autores em seu artigo.

De acordo com o documento de design do Loki, a intenção do Loki é "minimizar o custo da mudança de contexto entre logs e métricas". A correlação entre os registros e os dados da série temporal se aplica aos dados gerados pelos coletores de métricas normais, bem como às métricas personalizadas geradas pelos registros. Os provedores de nuvem pública, como AWS e GCP, fornecem extração de métricas personalizadas, e a AWS também fornece a capacidade de navegar para os registros das métricas. Ambos têm linguagens de consulta diferentes para consultar dados de log. O Loki também tem como objetivo resolver o problema de perda de logs de fontes efêmeras, como os Kubernetes pods quando eles falharem.

O Loki é constituído pelo agente promtail no lado do cliente e os componentes distributor e ingester no lado do servidor. O componente de consulta expõe uma API para lidar com consultas. Os componentes ingester e distributor são, em sua maioria, retirados do código da Cortex, que fornece uma versão escalonável e HA do Prometheus-as-a-service. Os distribuidores recebem dados de registro de agentes de promessas, geram um hash consistente dos rótulos e o ID do usuário nos dados de registro e os enviam para vários ingestores. Os ingestores recebem as entradas e criam "chunks" - um conjunto de logs para um rótulo específico e um período de tempo - que são compactados usando o gzip. Os ingesters criam os índices com base nos metadados (rótulos), não no conteúdo do log, para que possam ser facilmente consultados e correlacionados com os rótulos de métricas de série temporal. Isso foi feito como um trade-off entre a complexidade operacional e os recursos. Os fragmentos são periodicamente descarregados em um repositório de objetos, como o Amazon S3, e os índices para o Cassandra, o Bigtable ou o DynamoDB.

A API de consulta usa um intervalo de tempo e seletores de rótulo e verifica o índice em busca de partes correspondentes. Ele também fala com ingesters para dados recentes que ainda não foram liberados. As pesquisas podem ser expressões regulares, mas como o conteúdo do log não é indexado, ele tem o potencial de ser mais lento do que era. O Loki é open source e pode ser experimentado no site da Grafana.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

BT