Compare commits
2 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 6d9937c590 | |||
| ef6f9c74f6 |
@@ -68,7 +68,7 @@
|
||||
}
|
||||
</td>
|
||||
<td>
|
||||
<form method="post" asp-page-handler="TriggerJob" class="d-inline">
|
||||
<form method="post" action="/Admin/Operations?handler=TriggerJob" class="d-inline">
|
||||
@Html.AntiForgeryToken()
|
||||
<input type="hidden" name="jobId" value="@job.JobId" />
|
||||
<button type="submit" class="btn btn-sm btn-success text-white">즉시 실행</button>
|
||||
|
||||
@@ -87,18 +87,26 @@ public class IndexModel : PageModel
|
||||
InactiveJobsCount = TotalJobsCount - ActiveJobsCount;
|
||||
|
||||
var succeeded = monitoringApi.SucceededJobs(0, 10)
|
||||
.Select(kv => new JobExecutionInfo(
|
||||
kv.Value.Job?.Method.Name ?? kv.Key,
|
||||
kv.Value.SucceededAt ?? DateTime.UtcNow,
|
||||
kv.Value.SucceededAt,
|
||||
true));
|
||||
.Select(kv => {
|
||||
var succeededAt = kv.Value.SucceededAt ?? DateTime.UtcNow;
|
||||
var durationMs = kv.Value.TotalDuration ?? 0;
|
||||
var startedAt = succeededAt.AddMilliseconds(-durationMs);
|
||||
return new JobExecutionInfo(
|
||||
kv.Value.Job?.Method.Name ?? kv.Key,
|
||||
startedAt,
|
||||
succeededAt,
|
||||
true);
|
||||
});
|
||||
|
||||
var failed = monitoringApi.FailedJobs(0, 10)
|
||||
.Select(kv => new JobExecutionInfo(
|
||||
kv.Value.Job?.Method.Name ?? kv.Key,
|
||||
kv.Value.FailedAt ?? DateTime.UtcNow,
|
||||
kv.Value.FailedAt,
|
||||
false));
|
||||
.Select(kv => {
|
||||
var failedAt = kv.Value.FailedAt ?? DateTime.UtcNow;
|
||||
return new JobExecutionInfo(
|
||||
kv.Value.Job?.Method.Name ?? kv.Key,
|
||||
failedAt,
|
||||
failedAt,
|
||||
false);
|
||||
});
|
||||
|
||||
RecentExecutions = succeeded.Concat(failed)
|
||||
.OrderByDescending(e => e.StartedAt)
|
||||
|
||||
Reference in New Issue
Block a user