Implemented SignalR scaling using redis. Improved diagnose report generator. Added SignalR debug card in Diagnose page
This commit is contained in:
@@ -21,21 +21,16 @@ public class DiagnoseController : Controller
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public async Task Diagnose([FromBody] GenerateDiagnoseRequest request)
|
||||
public async Task<ActionResult> Diagnose([FromBody] GenerateDiagnoseRequest request)
|
||||
{
|
||||
var stream = await DiagnoseService.GenerateDiagnose(request.Providers);
|
||||
|
||||
await Results.Stream(
|
||||
stream,
|
||||
contentType: "application/zip",
|
||||
fileDownloadName: "diagnose.zip"
|
||||
)
|
||||
.ExecuteAsync(HttpContext);
|
||||
var stream = await DiagnoseService.GenerateDiagnoseAsync(request.Providers);
|
||||
|
||||
return File(stream, "application/zip", "diagnose.zip");
|
||||
}
|
||||
|
||||
[HttpGet("providers")]
|
||||
public async Task<DiagnoseProvideResponse[]> GetProviders()
|
||||
public async Task<ActionResult<DiagnoseProvideResponse[]>> GetProviders()
|
||||
{
|
||||
return await DiagnoseService.GetProviders();
|
||||
return await DiagnoseService.GetProvidersAsync();
|
||||
}
|
||||
}
|
||||
14
Moonlight.ApiServer/Http/Hubs/DiagnoseHub.cs
Normal file
14
Moonlight.ApiServer/Http/Hubs/DiagnoseHub.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.SignalR;
|
||||
|
||||
namespace Moonlight.ApiServer.Http.Hubs;
|
||||
|
||||
[Authorize(Policy = "permissions:admin.system.diagnose")]
|
||||
public class DiagnoseHub : Hub
|
||||
{
|
||||
[HubMethodName("Ping")]
|
||||
public async Task Ping()
|
||||
{
|
||||
await Clients.All.SendAsync("Pong");
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user