37 lines
1.2 KiB
Plaintext
37 lines
1.2 KiB
Plaintext
@page "/system/logs"
|
|
@using ErsatzTV.Application.Logs
|
|
@using ErsatzTV.Application.Logs.Queries
|
|
@inject IMediator _mediator
|
|
|
|
<MudContainer MaxWidth="MaxWidth.ExtraLarge" Class="pt-8">
|
|
<MudTable FixedHeader="true" Dense="true" Items="_logEntries">
|
|
<HeaderContent>
|
|
<MudTh>
|
|
<MudTableSortLabel SortBy="new Func<LogEntryViewModel, object>(x => x.Timestamp)">
|
|
Timestamp
|
|
</MudTableSortLabel>
|
|
</MudTh>
|
|
<MudTh>
|
|
<MudTableSortLabel SortBy="new Func<LogEntryViewModel, object>(x => x.Level)">
|
|
Level
|
|
</MudTableSortLabel>
|
|
</MudTh>
|
|
<MudTh>Message</MudTh>
|
|
</HeaderContent>
|
|
<RowTemplate>
|
|
<MudTd DataLabel="Timestamp">@context.Timestamp</MudTd>
|
|
<MudTd DataLabel="Level">@context.Level</MudTd>
|
|
<MudTd DataLabel="Message">@context.Message</MudTd>
|
|
</RowTemplate>
|
|
<PagerContent>
|
|
<MudTablePager/>
|
|
</PagerContent>
|
|
</MudTable>
|
|
</MudContainer>
|
|
|
|
@code {
|
|
private List<LogEntryViewModel> _logEntries;
|
|
|
|
protected override async Task OnInitializedAsync() => _logEntries = await _mediator.Send(new GetRecentLogEntries());
|
|
|
|
} |