49 lines
2.0 KiB
Plaintext
49 lines
2.0 KiB
Plaintext
@page "/admin/system/hangfire"
|
|
|
|
@using Microsoft.AspNetCore.Authorization
|
|
@using MoonCore.Helpers
|
|
@using Moonlight.Shared.Http.Responses.Admin.Hangfire
|
|
@using Moonlight.Client.UI.Components
|
|
|
|
@attribute [Authorize(Policy = "permissions:admin.system.hangfire")]
|
|
|
|
@inject HttpApiClient ApiClient
|
|
|
|
<div class="mb-5">
|
|
<NavTabs Index="3" Names="UiConstants.AdminNavNames" Links="UiConstants.AdminNavLinks"/>
|
|
</div>
|
|
|
|
<div class="mb-5">
|
|
<HelperMessage>
|
|
Hangfire is used to run scheduled and repeating tasks scalable via multiple instances. Here you can see a bunch of stats of the integrated hangfire instance
|
|
</HelperMessage>
|
|
</div>
|
|
|
|
<LazyLoader Load="Load">
|
|
<div class="grid grid-cols-1 lg:grid-cols-2 xl:grid-cols-4 gap-5">
|
|
<StatCard Title="Servers" Text="@Stats.Servers.ToString()" Icon="icon-server"/>
|
|
<StatCard Title="Recurring" Text="@Stats.Recurring.ToString()" Icon="icon-calendar-sync"/>
|
|
<StatCard Title="Enqueued" Text="@Stats.Enqueued.ToString()" Icon="icon-list-end"/>
|
|
<StatCard Title="Queues" Text="@Stats.Queues.ToString()" Icon="icon-logs"/>
|
|
<StatCard Title="Scheduled" Text="@Stats.Scheduled.ToString()" Icon="icon-calendar-check-2"/>
|
|
<StatCard Title="Processing" Text="@Stats.Processing.ToString()" Icon="icon-pickaxe"/>
|
|
<StatCard Title="Succeeded" Text="@Stats.Succeeded.ToString()" Icon="icon-check-check"/>
|
|
<StatCard Title="Failed" Text="@Stats.Failed.ToString()" Icon="icon-ban"/>
|
|
<StatCard Title="Deleted" Text="@Stats.Deleted.ToString()" Icon="icon-trash-2"/>
|
|
<StatCard Title="Retries" Text="@(Stats.Retries?.ToString() ?? "-")" Icon="icon-rotate-ccw"/>
|
|
<StatCard Title="Awaiting" Text="@(Stats.Awaiting?.ToString() ?? "-")" Icon="icon-loader"/>
|
|
</div>
|
|
</LazyLoader>
|
|
|
|
@code
|
|
{
|
|
private HangfireStatsResponse Stats;
|
|
|
|
private async Task Load(LazyLoader _)
|
|
{
|
|
Stats = await ApiClient.GetJson<HangfireStatsResponse>(
|
|
"api/admin/system/hangfire/stats"
|
|
);
|
|
}
|
|
}
|