Pular para o conteúdo principal

Release structured_logger 1.0.2 e dio_interceptor 1.2.0

· 2 min para ler
Altamir
Maintainer

Publicamos no pub.dev duas versões estáveis do ecossistema structured_logger:

  • structured_logger 1.0.2
  • structured_logger_dio_interceptor 1.2.0

Atualização rápida

dependencies:
structured_logger: ^1.0.2
structured_logger_dio_interceptor: ^1.2.0

Ou via CLI:

dart pub add structured_logger:^1.0.2
dart pub add structured_logger_dio_interceptor:^1.2.0

Não há breaking changes na API pública — basta atualizar as dependências.

structured_logger 1.0.2

Timestamps em UTC no campo @t

O LogModel agora gera @t com DateTime.now().toUtc().toIso8601String() em vez de horário local.

Isso alinha os eventos CLEF com a especificação (UTC) e corrige o comportamento do filtro Now no CLEF Viewer, que compara timestamps em UTC. Antes, apps em fusos diferentes podiam parecer “atrasados” ou “no futuro” no modo live.

// Antes: @t em horário local
// Agora: @t sempre em UTC (ex.: 2026-06-30T13:45:00.123Z)
await logger.info('Pedido {orderId} criado', data: {'orderId': 'ORD-42'});

A API (StructureLogger, SinkSeq, sinks, templates) permanece inalterada.

structured_logger_dio_interceptor 1.2.0

Query params como properties filtráveis

Cada parâmetro de query do request é emitido como property de nível superior queryParam.<nome>:

// GET /api/orders?page=2&status=open
// Properties: queryParam.page=2, queryParam.status=open

No CLEF Viewer (ou Seq), você pode filtrar por queryParam.page=2 com um clique no chip da property.

Ofuscação de JWT

Tokens JWT em headers, query params e corpos são ofuscados nos logs (eyJhbG...***). Os headers originais da requisição Dio não são alterados — apenas o que vai para o log estruturado.

Outras melhorias

  • Query params embutidos na URL são extraídos quando queryParameters do Dio está vazio.
  • O campo path nos eventos REQUEST / RESPONSE / ON_ERROR não inclui mais a query string, mantendo o path consistente entre eventos.

Veja o guia do interceptador Dio para configuração completa.

Compatibilidade

PacoteVersãoDepende de
structured_logger1.0.2
structured_logger_dio_interceptor1.2.0structured_logger ^1.0.2

Documentação

A documentação e os guias de instalação foram atualizados para refletir as novas versões:

Obrigado a quem testou as versões -dev e reportou feedback. Issues e PRs são bem-vindos no repositório.