public void CaptureError(string message, string culprit, StackFrame[] frames) { var capturedException = new CapturedException { Message = message }; var error = new Error.ErrorDetail { Culprit = culprit, Exception = capturedException, Transaction = new Error.ErrorDetail.TransactionReference { Id = Id } }; if (frames != null) { capturedException.StacktTrace = StacktraceHelper.GenerateApmStackTrace(frames, _logger, "failed capturing stacktrace"); } error.Context = Context; _sender.QueueError(new Error { Errors = new List <IErrorDetail> { error }, Service = Service }); }
public void CaptureException(Exception exception, string culprit = null, bool isHandled = false) { var capturedCulprit = string.IsNullOrEmpty(culprit) ? "PublicAPI-CaptureException" : culprit; var capturedException = new CapturedException { Message = exception.Message, Type = exception.GetType().FullName, Handled = isHandled }; var error = new Error.ErrorDetail { Culprit = capturedCulprit, Exception = capturedException, Transaction = new Error.ErrorDetail.TransactionReference { Id = Id } }; if (!string.IsNullOrEmpty(exception.StackTrace)) { capturedException.StacktTrace = StacktraceHelper.GenerateApmStackTrace(new StackTrace(exception, true).GetFrames(), _logger, "failed capturing stacktrace"); } error.Context = Context; _sender.QueueError(new Error { Errors = new List <IErrorDetail> { error }, Service = Service }); }
public void CaptureException(Exception exception, string culprit = null, bool isHandled = false, string parentId = null) { var capturedCulprit = string.IsNullOrEmpty(culprit) ? "PublicAPI-CaptureException" : culprit; var ed = new CapturedException { Message = exception.Message, Type = exception.GetType().FullName, Handled = isHandled, Stacktrace = StacktraceHelper.GenerateApmStackTrace(exception, _logger, $"{nameof(Transaction)}.{nameof(CaptureException)}"), }; _sender.QueueError(new Error(ed, TraceId, Id, parentId ?? Id) { Culprit = capturedCulprit, Context = Context }); }
public void CaptureError(string message, string culprit, StackFrame[] frames, string parentId = null) { var capturedCulprit = string.IsNullOrEmpty(culprit) ? "PublicAPI-CaptureException" : culprit; var ed = new CapturedException() { Message = message, }; if (frames != null) { ed.Stacktrace = StacktraceHelper.GenerateApmStackTrace(frames, _logger, "failed capturing stacktrace"); } _sender.QueueError(new Error(ed, TraceId, Id, parentId ?? Id) { Culprit = capturedCulprit, Context = Context }); }
public void CaptureError(string message, string culprit, StackFrame[] frames, string parentId = null) { var capturedCulprit = string.IsNullOrEmpty(culprit) ? "PublicAPI-CaptureException" : culprit; var capturedException = new CapturedException() { Message = message, }; if (frames != null) { capturedException.Stacktrace = StacktraceHelper.GenerateApmStackTrace(frames, _logger, $"{nameof(Span)}.{nameof(CaptureError)}"); } _payloadSender.QueueError( new Error(capturedException, TraceId, Id, parentId ?? Id) { Culprit = capturedCulprit /*, Context = Context */ }); }
public Error(CapturedException capturedException, string traceId, string transactionId, string parentId) : this(capturedException) => (TraceId, TransactionId, ParentId) = (traceId, transactionId, parentId);