← Últimos artigos
💻 ciência da computação

Dynamic Sampling for Telemetry in Microservices: A Reinforcement Learning and Entropy-Based Approach

Este artigo apresenta o RADAR, um agente baseado em Aprendizado por Reforço e entropia que otimiza dinamicamente a amostragem de telemetria de microsserviços para reduzir drasticamente o consumo de recursos enquanto preserva a observabilidade crítica e a qualidade dos dados.

Autores originais: Renan Martins Alves, Jéferson Campos Nobre, Juliano Araujo Wickboldt

Publicado 2026-10-19
📖 6 min de leitura🧠 Leitura aprofundada

Autores originais: Renan Martins Alves, Jéferson Campos Nobre, Juliano Araujo Wickboldt

Artigo original sob licença CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). ✨ Esta é uma explicação gerada por IA do artigo abaixo. Não foi escrita nem endossada pelos autores. Para precisão técnica, consulte o artigo original. Ler aviso legal completo

O software moderno muitas vezes não vive como um único programa massivo, mas como um enxame de pequenos serviços independentes que se comunicam através de uma rede. Essa abordagem, conhecida como microsserviços, permite que as empresas atualizem partes de suas aplicações rapidamente e as escalem conforme necessário. No entanto, essa flexibilidade traz um custo oculto: torna-se incrivelmente difícil ver o que está acontecendo dentro do sistema quando algo dá errado. Para resolver isso, os engenheiros utilizam uma técnica chamada rastreamento distribuído (distributed tracing). Imagine um cliente fazendo um pedido em um site; esse único pedido pode percorrer uma dúzia de serviços diferentes, verificando o estoque, calculando impostos e processando pagamentos. O rastreamento distribuído segue esse pedido do início ao fim, criando um mapa detalhado de sua jornada. Esse mapa é essencial para encontrar bugs e entender problemas de desempenho, mas gera uma quantidade massiva de dados. Se um sistema processa milhões de requisições, coletar cada rastreamento individual sobrecarregaria a rede, consumiria enormes quantidades de poder computacional e preencheria unidades de armazenamento a uma taxa insustentável.

O desafio, então, é coletar dados suficientes para enxergar os problemas sem se afogar no ruído de operações rotineiras e bem-sucedidas. Os métodos tradicionais frequentemente dependem de regras simples, como registrar apenas uma em cada cem requisições, ou esperar até que ocorra um erro para começar a gravar. Essas abordagens são frequentemente muito rígidas; elas podem perder falhas raras, porém críticas, ou podem desperdiçar recursos registrando tráfego mundano que não oferece novos insights. Pesquisadores da Universidade Federal do Rio Grande do Sul, no Brasil, desenvolveram uma nova maneira de lidar com esse dilema. Eles criaram um sistema chamado RADAR, que atua como um filtro inteligente e autoadaptável para esses dados. Em vez de usar regras fixas, o RADAR aprende quais rastreamentos valem a pena ser mantidos, testando constantemente diferentes combinações de regras de amostragem e observando os resultados.

A ideia central por trás do RADAR é tratar a coleta de dados como um processo de aprendizado. O sistema utiliza um método chamado aprendizagem por reforço, onde um agente computacional toma decisões, observa o que acontece e ajusta sua estratégia para obter melhores resultados ao longo do tempo. Neste caso, o objetivo do agente é maximizar o "valor de informação" dos dados que mantém, enquanto minimiza a quantidade de dados que armazena. Para medir o valor da informação, os pesquisadores utilizaram um conceito da teoria da informação conhecido como entropia. Em termos simples, a entropia mede o quão diversos ou imprevisíveis são um conjunto de dados. Uma coleção de rastreamentos que são todos idênticos possui baixa entropia e baixo valor, pois não dizem nada de novo. Uma coleção que inclui muitos caminhos diferentes, raros e incomuns possui alta entropia e alto valor, pois revela os comportamentos complexos e as potenciais falhas do sistema. O RADAR usa essa medida de diversidade como um sinal de recompensa. Quando o agente seleciona um conjunto de regras que captura uma grande variedade de comportamentos únicos sem coletar dados excessivos, ele recebe uma recompensa alta e aprende a repetir essa escolha.

Para testar essa ideia, os pesquisadores construíram uma loja online simulada rodando em um cluster de computadores, mimetizando o ambiente complexo de uma aplicação do mundo real. Eles introduziram vários tipos de tráfego, incluindo navegação normal e cenários específicos projetados para desencadear erros ou comportamentos incomuns. Em seguida, deixaram o agente RADAR rodar por várias horas, permitindo que ele experimentasse diferentes regras. Algumas regras focavam em capturar requisições lentas, outras em erros, e outras em eventos de negócio específicos, como compras de alto valor. O agente alternava entre essas regras, observando quantos rastreamentos eram coletados e quão diversos eles eram. Com o tempo, o agente aprendeu a encontrar o equilíbrio perfeito. Ele descobriu que não precisava registrar cada única requisição para entender o sistema. Em vez disso, ao focar nos caminhos mais diversos e informativos, conseguia manter uma imagem clara da saúde do sistema enquanto reduzia drasticamente o volume de dados.

Os resultados desse experimento foram impressionantes. Comparado a um sistema que registrava cada rastreamento individual, o RADAR reduziu a quantidade de dados enviados pela rede em 97,4 por cento. Também reduziu o poder computacional necessário para processar esses dados em 99,0 por cento. Essas economias são significativas porque significam que o sistema pode rodar de forma muito mais barata e rápida. No entanto, os pesquisadores foram cuidadosos para garantir que essa eficiência não viesse ao custo de perder informações importantes. Eles compararam os dados coletados pelo RADAR contra o conjunto de dados completo para verificar se ele havia capturado os eventos raros e críticos. Descobriram que o RADAR reteve aproximadamente 85,6 por cento dos padrões de rastreamento raros — aqueles eventos únicos e isolados que frequentemente sinalizam o início de um problema sério. Além disso, a diversidade média dos dados mantidos aumentou cerca de 25 por cento, o que significa que os dados restantes eram muito mais úteis para diagnóstico do que uma amostra aleatória seria.

Essa abordagem representa uma mudança das regras estáticas definidas por humanos para o gerenciamento dinâmico e autônomo. Sistemas tradicionais exigem que engenheiros decidam manualmente quais regras aplicar, uma tarefa que se torna difícil à medida que o sistema muda e cresce. O RADAR, por outro lado, adapta-se continuamente ao estado atual do sistema. Ele não precisa ser informado previamente sobre como é um erro; ele simplesmente aprende a reconhecer que um conjunto de comportamentos diversos é mais valioso do que um repetitivo. O sistema opera inteiramente dentro das ferramentas padrão utilizadas por engenheiros de software modernos, sendo compatível com a infraestrutura existente sem exigir mudanças invasivas no código da aplicação.

O estudo demonstra que é possível reduzir drasticamente o fardo de monitorar sistemas complexos sem sacrificar a capacidade de enxergar o que está errado. Ao utilizar uma medida matemática de diversidade para guiar o processo de coleta, os pesquisadores mostraram que um agente inteligente pode aprender a filtrar o ruído para manter o sinal. Embora o experimento tenha sido conduzido em um ambiente controlado, os resultados sugerem um caminho viável para gerenciar a crescente complexidade das aplicações baseadas em nuvem. O trabalho destaca que o futuro do monitoramento de sistemas pode não residir na coleta de mais dados, mas na coleta de dados mais inteligentes, guiados por agentes que compreendem o valor da informação em tempo real.

Afogado em artigos na sua área?

Receba digests diários dos artigos mais recentes que correspondam às suas palavras-chave de pesquisa — com resumos técnicos, no seu idioma.

Experimentar Digest →