Exemplo de Script - Registro
Logging aproveita a API de Logging da Microsoft. O Logging ajuda a depurar e manter um plugin, dando insights sobre valores atuais, comportamentos esperados e inesperados. O exemplo neste artigo demonstra como registrar mensagens.
Gravidade do Log
Uma mensagem só será registrada se o nível de Severidade for igual ou maior que o valor configurado em Severidade Mínima em Configuração de Log do Servidor de Aplicativos para cada configuração de destino de log (Memória, Banco de Dados e Disco).
Níveis de Gravidade
Gravidade da Microsoft | App Builder gravidade | Descrição |
---|---|---|
Off | Off | Status de configuração em que o log de destino não grava nenhuma mensagem, não se destina ao uso durante o registro. |
Trace | Trace | Mensagem detalhada de etapas minuciosas, esse status deve ser evitado em ambientes de produção. |
Debug | Debug | Usado durante o desenvolvimento para investigar estado e comportamento. |
Information | Info | Usado para rastrear o comportamento esperado, por exemplo, processar um arquivo com sucesso. |
Warning | Warn | Usado quando um comportamento ou estado ainda não é prejudicial, mas deve ser observado, por exemplo, disco ficando sem espaço. |
Error | Error | Usado quando o processo atual precisa parar devido a uma falha, por exemplo, valor de dados inesperado de um arquivo. |
Critical | Fatal | Usado quando uma falha requer atenção imediata. |
Script
using Microsoft.Extensions.Logging;
var logger = Services.GetRequiredService<ILogger>();
logger.LogWarning("My warning message");
Escopo
O escopo é suportado e permite que informações adicionais sejam anexadas ao registro de log.
using Microsoft.Extensions.Logging;
using System.Collections.Generic;
var logger = Services.GetRequiredService<ILogger>();
logger.LogError("My unscoped error message");
// Appends "MyScope" to the log source
using (logger.BeginScope("MyScope")) {
logger.LogWarning("My scoped warning");
// Tags log records with the extra identifing properties.
using (logger.BeginScope(new Dictionary<string, object>{
`["ID do cliente"] `= 123,
`["ID do pedido"] `= 12
})) {
logger.LogWarning("My warning with extra data");
}
}
Nota
Qualquer propriedade adicionada pelo escopo será protegida, o que significa que será registrada e exibida Registrar dados seguros tem que ser ON
.
Mais Informações
Você pode encontrar mais informações sobre API do Logger da Microsoft bem como seus métodos de extensão no Navegador de API .NET da Microsoft.