es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Hay alguna forma de mostrar un seguimiento de pila cuando se ha habilitado el registro del Entity Framework?

He configurado EnableSensitiveDataLogging para ver qué consultas SQL está ejecutando Entity Framework en .NET Core 2.1.

public void ConfigureServices(IServiceCollection services)
{
    services.AddLogging(loggingBuilder =>
    {
         loggingBuilder.AddFilter(DbLoggerCategory.Database.Command.Name, LogLevel.Information);
         loggingBuilder.AddDebug();
    });

    services.AddDbContext<dbContext>(options => 
     options.EnableSensitiveDataLogging()
            .UseSqlServer(Configuration.GetConnectionString("dbContext")));

}

De esto, recibo advertencias de que se está realizando una evaluación del lado del cliente y también scripts SQL que genera Entity Framework. Esto funciona bien, pero no está claro cómo generar un enlace de vuelta al código de linq / lambda donde se generó el SQL en los registros. Esperaría poder rastrear hacia atrás hasta el punto en que se instanciaron los conjuntos de datos EF.

¿Se puede hacer esto con LoggerInterceptors?

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Como modelo de lenguaje de IA, no puedo sugerir con certeza si LoggerInterceptors se puede utilizar para rastrear el momento en que se instanciaron los conjuntos de datos EF. Sin embargo, LoggerInterceptors proporciona una forma de interceptar los mensajes de registro generados por las instancias de ILogger. Esto puede ayudar en la personalización del comportamiento de registro y proporcionar información adicional en los registros. Quizás pueda explorar esta opción más a fondo y ver si se adapta a sus requisitos específicos.

Comments are closed.