From c6d0d58722d87758e1e66329544f5da40e5e4433 Mon Sep 17 00:00:00 2001 From: EugeneTes Date: Thu, 23 Jul 2026 08:08:30 +0000 Subject: [PATCH] emit telemetry on exception path and include durationMs in failure emits --- Inspectron.Epson/Queue/PrinterQueue.cs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Inspectron.Epson/Queue/PrinterQueue.cs b/Inspectron.Epson/Queue/PrinterQueue.cs index 6f1e3e3..d3bf6cf 100644 --- a/Inspectron.Epson/Queue/PrinterQueue.cs +++ b/Inspectron.Epson/Queue/PrinterQueue.cs @@ -91,6 +91,7 @@ public class PrinterQueue ("printer", PrinterIp), ("receiptType", job.Document?.ReceiptType.ToString()), ("retry", job.RetryCount.ToString()), + ("durationMs", stopwatch.ElapsedMilliseconds.ToString()), ("error", result.ErrorType.ToString()))); if (result.ErrorType == PrintErrorType.ConversionError) @@ -128,8 +129,15 @@ public class PrinterQueue } catch (Exception ex) { + stopwatch.Stop(); _logger.LogError(ex, "Error processing job"); await _statusReporter.ReportStatusAsync(job, PrintJobStatus.Failed); + SafeEmit(InsinEventKinds.MapErrorTypeToKind(PrintErrorType.Other), InsinMessageFormatter.Format( + ("printer", PrinterIp), + ("receiptType", job.Document?.ReceiptType.ToString()), + ("retry", job.RetryCount.ToString()), + ("durationMs", stopwatch.ElapsedMilliseconds.ToString()), + ("error", ex.GetType().Name))); } finally {