diff --git a/server/AyaNova/biz/ReportBiz.cs b/server/AyaNova/biz/ReportBiz.cs index b5c5ff5b..bb783f50 100644 --- a/server/AyaNova/biz/ReportBiz.cs +++ b/server/AyaNova/biz/ReportBiz.cs @@ -815,13 +815,15 @@ namespace AyaNova.Biz { log.LogInformation($"Exception caught while rendering report \"{report.Name}\", report Page console log:"); log.LogInformation(PageLog.ToString()); - await JobsBiz.LogJobAsync(job.GId, $"{{\"rendererror\":{{\"pagelog\":\"{PageLog.ToString()}\",\"exception\":\"{ExceptionUtil.ExtractAllExceptionMessages(ex)}\"}}}}"); + var json = Newtonsoft.Json.JsonConvert.SerializeObject(new { renderError = new { pagelog = PageLog.ToString(), exception = ExceptionUtil.ExtractAllExceptionMessages(ex) } }, Newtonsoft.Json.Formatting.None); + await JobsBiz.LogJobAsync(job.GId, json); } else { - await JobsBiz.LogJobAsync(job.GId, $"{{\"rendererror\":{{\"pagelog\":null,\"exception\":\"{ExceptionUtil.ExtractAllExceptionMessages(ex)}\"}}}}"); + var json = Newtonsoft.Json.JsonConvert.SerializeObject(new { renderError = new { exception = ExceptionUtil.ExtractAllExceptionMessages(ex) } }, Newtonsoft.Json.Formatting.None); + await JobsBiz.LogJobAsync(job.GId, json); } - + await JobsBiz.UpdateJobStatusAsync(job.GId, JobStatus.Failed); // var v=await page.GetContentAsync();//for debugging purposes @@ -848,7 +850,9 @@ namespace AyaNova.Biz static async Task HandleTimeOut(OpsJob job, ILogger log, DataListReportRequest reportRequest, string userName) { log.LogDebug($"Report render cancelled by user OR exceeded timeout setting of {ServerBootConfig.AYANOVA_REPORT_RENDERING_TIMEOUT} minutes, report id: {reportRequest.ReportId}, record count:{reportRequest.SelectedRowIds.LongLength}, user:{userName}"); - await JobsBiz.LogJobAsync(job.GId, $"{{\"rendererror\":{{\"timeout\":\"true\",\"timeoutsetting\":\"{ServerBootConfig.AYANOVA_REPORT_RENDERING_TIMEOUT}\"}}}}"); + var json = Newtonsoft.Json.JsonConvert.SerializeObject(new { renderError = new { timeout = true,timeoutsetting= ServerBootConfig.AYANOVA_REPORT_RENDERING_TIMEOUT} }, Newtonsoft.Json.Formatting.None); + await JobsBiz.LogJobAsync(job.GId, json); + await JobsBiz.UpdateJobStatusAsync(job.GId, JobStatus.Failed); } }