9 pontos por xguru 2024-12-01 | 2 comentários | Compartilhar no WhatsApp
  • 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

 
roxie 2024-12-01

UI moderna, né..

 
blurblah 2024-12-01

Vou ter que testar isso em breve.