Browse Source

Better error handling.

pull/883/head
Sebastian 4 years ago
parent
commit
60cb9e3c87
  1. 6
      backend/src/Squidex.Infrastructure/Dump/Dumper.cs
  2. 16
      backend/src/Squidex/Areas/Api/Controllers/Diagnostics/DiagnosticsController.cs

6
backend/src/Squidex.Infrastructure/Dump/Dumper.cs

@ -124,11 +124,9 @@ namespace Squidex.Infrastructure.Dump
await process.WaitForExitAsync(ctl.Token);
var isSucceess = process.ExitCode == 0;
if (!isSucceess)
if (process.ExitCode != 0)
{
return false;
throw new InvalidOperationException($"Failed to execute tool. Got exit code: {process.ExitCode}.");
}
await using (var fs = new FileStream(writtenFile, FileMode.Open))

16
backend/src/Squidex/Areas/Api/Controllers/Diagnostics/DiagnosticsController.cs

@ -32,13 +32,19 @@ namespace Squidex.Areas.Api.Controllers.Diagnostics
/// </summary>
/// <returns>
/// 204 => Dump created successful.
/// 501 => Not configured.
/// </returns>
[HttpGet]
[Route("diagnostics/dump")]
[ApiPermissionOrAnonymous(Permissions.Admin)]
public async Task<IActionResult> GetDump()
{
await dumper.CreateDumpAsync(HttpContext.RequestAborted);
var success = await dumper.CreateDumpAsync(HttpContext.RequestAborted);
if (!success)
{
return StatusCode(501);
}
return NoContent();
}
@ -48,13 +54,19 @@ namespace Squidex.Areas.Api.Controllers.Diagnostics
/// </summary>
/// <returns>
/// 204 => Dump created successful.
/// 501 => Not configured.
/// </returns>
[HttpGet]
[Route("diagnostics/gc-dump")]
[ApiPermissionOrAnonymous(Permissions.Admin)]
public async Task<IActionResult> GetGCDump()
{
await dumper.CreateGCDumpAsync(HttpContext.RequestAborted);
var success = await dumper.CreateGCDumpAsync(HttpContext.RequestAborted);
if (!success)
{
return StatusCode(501);
}
return NoContent();
}

Loading…
Cancel
Save