Pular para o conteúdo principal
Versão: Em desenvolvimento — v0.2.3

Logging

O pacote logging é inicializado por colibri.InitializeApp() e usa log/slog.

Registrar uma mensagem

package users

import (
"context"

"github.com/colibriproject-dev/colibri-sdk-go/pkg/base/logging"
)

func Create(ctx context.Context, userID string) {
logging.
Info(ctx).
AddParam("userId", userID).
Msg("user created")
}

Estão disponíveis Debug, Info, Warn, Error e Fatal. Fatal(...).Msg(...) registra a mensagem e executa panic; use apenas quando a aplicação não puder continuar.

Para anexar um erro:

logging.Error(ctx).Err(err).Msg("could not create user")

Nível e formato

Configure LOG_LEVEL com debug, info, warn, warning ou error. O padrão é info.

  • development e test: saída texto;
  • sandbox e production: saída JSON.

Correlation ID

ctx = logging.InjectCorrelationIDInContext(ctx, requestID)
logging.Info(ctx).Msg("processing request")

As chamadas seguintes que recebem esse contexto incluem automaticamente o campo correlationId.

dica

Não registre tokens, senhas, documentos ou payloads com dados pessoais. Prefira identificadores técnicos que permitam localizar a operação.