Saltar al contenido

Ejemplo de Secuencias de Comandos: Registro

Este artículo analiza Logging, que estará disponible en Vinyl 3.2. Esta característica aprovecha la API de registro de Microsoft. El registro ayuda a depurar y mantener un complemento, brindando información sobre los valores actuales y los comportamientos esperados e inesperados. El ejemplo de este artículo muestra cómo registrar mensajes.

Gravedad del Registro

Solo se registrará un mensaje si el nivel de gravedad es igual o superior al valor configurado en Severidad mínima en Configuración del registro del servidor de aplicaciones para cada configuración de destino del registro (Memoria, Base de datos y Disco).

Niveles de Gravedad

Gravedad de Microsoft Severidad del Vinyl Descripción
Off Off Estado de configuración en el que el registro de destino no escribirá ningún mensaje y no está diseñado para su uso al iniciar sesión.
Trace Trace Mensaje detallado de pasos minuciosos, este estado debe evitarse en ambientes de producción.
Debug Debug Se utiliza durante el desarrollo para investigar el estado y el comportamiento.
Information Info Se utiliza para realizar un seguimiento del comportamiento esperado, por ejemplo, procesar correctamente un archivo.
Warning Warn Se utiliza cuando un comportamiento o estado aún no es perjudicial, pero debe tenerse en cuenta, por ejemplo, el disco se queda sin espacio.
Error Error Se utiliza cuando el proceso actual tiene que detenerse debido a una falla, por ejemplo, un valor de datos inesperado de un archivo.
Critical Fatal Se utiliza cuando una falla requiere atención inmediata.

Pantalla de configuración del servidor de aplicaciones, que ilustra la gravedad de la información establecida para la configuración del registro de memoria

Secuencia de Comandos

using Microsoft.Extensions.Logging;

var logger = Services.GetRequiredService<ILogger>();

logger.LogWarning("My warning message");

imagen

Alcance

El alcance es compatible y permite agregar información adicional al registro.

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>{
        ["Identificación del cliente"] = 123,
        ["Solicitar ID"] = 12
    })) {

        logger.LogWarning("My warning with extra data");

    }
}

Salida de ejemplo de registros de memoria con alcance configurado

Nota

Cualquier propiedad agregada por el alcance estará protegida, lo que significa que se registrará y mostrará Registrar datos seguros tiene que ser ON.

Más Información

Puede encontrar más información sobre API Logger de Microsoft así como sus métodos de extensión en el navegador API .NET de Microsoft.