Не отображаются логи в консоли браузера

Не отображаються логи в консоли браузера и только логи моего кода например

protected override async Task OnInitializedAsync()
{
    Logger.LogInformation("Начинаем загрузку ролей");
    roles = await UserService.GetAllRoles();
}
private async Task HandleValidSubmit()
{
    userModel.Role = selectedRole;
    errorMessage = null;
    try
    {
        var result = await UserService.AddNewUser(userModel);
        if (result != null)
        {
            Navigation.NavigateTo("/login");
        }
        else
        {
            errorMessage = "Ошибка при регистрации пользователя. Пожалуйста, попробуйте снова.";
        }
    }
    catch (Exception ex)
    {
        errorMessage = $"Ошибка при регистрации: {ex.Message}";
    }
}
var app = builder.Build();
app.Logger.LogInformation("Приложение запущено");

но вся консоль пуста


Ответы (1 шт):

Автор решения: Dev18

В Blazor Server приложениях логирование происходит на стороне сервера, а не на стороне клиента. Это означает, что серверные логи будут отображаться в консоли на стороне сервера (например, в консоли Visual Studio или терминале), но не в консоли браузера. документация

Предложу вариант с использованием JavaScript

@page "/"

@rendermode InteractiveServer

@inject IJSRuntime JS

<button @onclick="LogToConsole">Log</button>

@code {
    private async Task LogToConsole()
    {
        await JS.InvokeVoidAsync("logToConsole", "Log настроен через JavaScript");
    }
}

logging.js

window.logToConsole = function (message) {
    console.log(message);
};

Program

using Blazor9.Components;

var builder = WebApplication.CreateBuilder(args);

builder.Services.AddRazorComponents()
    .AddInteractiveServerComponents();

builder.Logging.ClearProviders();
builder.Logging.AddConsole();
builder.Logging.SetMinimumLevel(LogLevel.Information);

var app = builder.Build();

if (!app.Environment.IsDevelopment())
{
    app.UseExceptionHandler("/Error");
    app.UseHsts();
}

app.UseHttpsRedirection();
app.UseStaticFiles();
app.UseRouting();
app.UseAntiforgery();

app.MapRazorComponents<App>()
    .AddInteractiveServerRenderMode();

app.Run();

console

введите сюда описание изображения

→ Ссылка