- Primeira grande atualização em 7 anos, introduzindo novos recursos enquanto mantém compatibilidade com versões anteriores
- UI moderna redesenhada do zero
- Protocolo aprimorado com Remote Write 2.0
- Suporte a UTF-8 em nomes de métricas/rótulos
- Interoperabilidade reforçada com OpenTelemetry
- Suporte a histogramas nativos, permitindo maior eficiência e menor custo do que histogramas tradicionais
- Grande melhoria no uso de memória e na eficiência de CPU em comparação com a 2.0
Nova UI
- Um dos maiores destaques do Prometheus 3.0 é a UI redesenhada
- Recursos:
- Interface mais limpa e moderna
- Adição de visualização em árvore no estilo PromLens
- Uso de uma stack tecnológica moderna para simplificar a manutenção
- Após a beta, também foi adicionado suporte a nomes de métricas e rótulos em UTF-8
- A UI antiga pode ser ativada temporariamente com a flag
old-ui
Remote Write 2.0
- O protocolo Remote Write foi aprimorado para oferecer suporte mais fluido a metadados, exemplars, timestamps de criação, histogramas nativos e mais
- Uso de string interning para reduzir o tamanho do payload e o consumo de CPU
- Melhor tratamento de gravações parciais: fornece informações de erro mais detalhadas ao cliente
Suporte a UTF-8
- Agora é possível usar caracteres UTF-8 em nomes de métricas e valores de rótulos
- Em ambientes que não oferecem suporte a UTF-8, continua sendo usado o método anterior com underscores
- No PromQL, métricas UTF-8 podem ser consultadas com a nova sintaxe de aspas
- No momento, apenas a biblioteca cliente de Go já recebeu a atualização com suporte a UTF-8; outras linguagens serão adicionadas em breve
Suporte a OTLP
- Interoperabilidade reforçada com OpenTelemetry (OTLP)
- Ingestão OTLP:
- O Prometheus pode ser configurado para receber métricas OTLP por padrão no endpoint
/api/v1/otlp/v1/metrics
- A forma de configuração pode ser consultada no guia de OTLP
- Normalização UTF-8:
- Não é mais necessário trocar pontos (
.) por underscores (_) em nomes de métricas e rótulos do OpenTelemetry
- Suporte experimental a várias estratégias de conversão para coleta via OTLP
Histogramas nativos
- Histogramas nativos oferecem maior eficiência e menor custo do que histogramas tradicionais
- Recursos:
- Buckets exponenciais que não exigem atualização dos limites de bucket para se ajustar ao conjunto de dados
- Recurso experimental, que pode ser ativado com a flag
--enable-feature=native-histograms
- Alguns formatos e operadores ainda estão em fase de design
Breaking Changes
- Embora tenha havido esforço para evitar quebrar recursos existentes nesta grande versão, há algumas pequenas mudanças:
- Flags de recurso
- Arquivo de configuração
- PromQL
- Protocolo de scraping
- As configurações que podem ser afetadas podem ser verificadas no guia de migração
Planos de melhorias futuras
- Novo e abrangente modelo de governança
- Compatibilidade adicional com OpenTelemetry
- OpenMetrics 2.0 (desenvolvido sob a governança do Prometheus)
- Estabilização dos histogramas nativos e suporte a buckets personalizados
- Otimizações adicionais
- Expansão do suporte a UTF-8
2 comentários
UI moderna, né..
Vou ter que testar isso em breve.