Logs, diagnóstico e rastreabilidade
FWLogMsg(cSeverity,cTransactionId,cGroup,cCategory,cStep,cMsgId,cMessage,nMensure,nElapseTime,aMessage)Correlaciona eventos de uma execução sem expor dados sensíveis.
Visão geral
FWLogMsg recebe severidade, identificador de transação, grupo, categoria, etapa, código e mensagem. INFO, WARN, ERROR, FATAL e DEBUG são os níveis documentados. Os argumentos oito e nove são medidas numéricas; o décimo é um array de pares chave/valor. Essa ordem importa: um array no oitavo argumento não corresponde ao contrato. Usar um identificador estável para uma execução ajuda a seguir seus eventos. Sem LogServer a documentação indica gravação no ConsoleLog. (Fontes: refs. 1–2.)
Sintaxe
FWLogMsg(cSeverity,cTransactionId,cGroup,cCategory,cStep,cMsgId,cMessage,nMensure,nElapseTime,aMessage)Exemplo comentado
#Include "Protheus.ch"
User Function Ed511()
Local cRastro := FWUUIDV4()
// Mesmo identificador; mensagens fixas, sem dados do cliente.
FWLogMsg("INFO",cRastro,"EDITORIAL","EXAMPLE","START","ED511","start",0,0)
FWLogMsg("INFO",cRastro,"EDITORIAL","EXAMPLE","END","ED511","end",1,0)
Return NilDois eventos INFO compartilham cTrace; o destino depende da configuração de logs. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.
- Registrar operação, etapa, duração e resultado. Excluir senhas, tokens e payloads pessoais. Delimitar retenção e volume; DEBUG exige configuração específica e não deve ser ativado indiscriminadamente. Capturar evidências do erro sem ocultá-lo ou prometer retomada universal.
- Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.