Logging

Wired.IO implements ILoggingFactory with its default parameters

    private static void DefaultLoggingBuilder(ILoggingBuilder loggingBuilder)
    {
        loggingBuilder
            .ClearProviders()
#if DEBUG
            .SetMinimumLevel(LogLevel.Debug)
#else
            .SetMinimumLevel(LogLevel.Information)
#endif
            .AddConsole();
    }

If you want to override this ILoggingFactory, register yours with your logging builder configuration (Microsoft.Extensions.Logging).

( ... )
builder.Services
    .AddLogging(loggingBuilder =>
    {
        // Configure ILoggingBuilder
    })
( ... )

Check official docs at ILoggingBuilder docs to explore configurability.

Resolve a ILogger<> anywhere directly from context object.

using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
using Wired.IO.App;

var builder = WiredApp
    .CreateExpressBuilder()
    .Port(8080)
    .NoScopedEndpoints();

    builder
        .MapGroup("/api")
        .MapGet("/my-endpoint", context =>
        {
            var logger = context.Services.GetRequiredService<ILogger<Program>>();
            logger.LogInformation("Hello World!");
        
            context
                .Respond()
                .Type("application/octet-stream"u8)
                .Content("Ok"u8);
        });
    
var app = builder.Build();
await app.RunAsync();