void TryCreate() { if (methodArgumentsMap == null) { methodArgumentsMap = new MethodCallArgumentMap(); } }
public ExceptionMethodCallArgumentsCollector(MethodCallArgumentMap callArgumentsMap) { this.callArgumentsMap = callArgumentsMap; }
public ExceptionObjectInfoCollector(ILogifyClientConfiguration config, MethodCallArgumentMap callArgumentsMap) : base(config) { Collectors.Add(new ExceptionMethodCallArgumentsCollector(callArgumentsMap)); }
protected async Task <bool> ReportExceptionAsync(Exception ex, IDictionary <string, string> additionalCustomData, AttachmentCollection additionalAttachments, MethodCallArgumentMap callArgumentsMap) { try { if (!RaiseCanReportException(ex)) { return(false); } if (ShouldIgnoreException(ex)) { return(false); } RaiseBeforeReportException(ex); bool success = await ExceptionLogger.ReportExceptionAsync(ex, CreateDefaultCollector(additionalCustomData, additionalAttachments, callArgumentsMap)); RaiseAfterReportException(ex); return(success); } catch { return(false); } }
protected IInfoCollector CreateDefaultCollector(IDictionary <string, string> additionalCustomData, AttachmentCollection additionalAttachments, MethodCallArgumentMap callArgumentsMap) { RootInfoCollector result = CreateDefaultCollectorCore(); IList <IInfoCollector> collectors = result.Collectors; LogifyAppInfoCollector logifyAppInfoCollector = new LogifyAppInfoCollector(CreateAppInfo()); logifyAppInfoCollector.AppName = this.AppName; logifyAppInfoCollector.AppVersion = this.AppVersion; logifyAppInfoCollector.UserId = this.UserId; collectors.Insert(0, logifyAppInfoCollector); collectors.Insert(0, new LogifyReportGenerationDateTimeCollector()); if (this.AllowRemoteConfiguration) { collectors.Insert(0, new LogifyHardwareIdCollector()); } collectors.Insert(0, new LogifyProtocolVersionCollector()); collectors.Add(new ExceptionObjectInfoCollector(Config, callArgumentsMap)); collectors.Add(new CustomDataCollector(this.CustomData, additionalCustomData)); collectors.Add(new BreadcrumbsCollector(this.Breadcrumbs)); collectors.Add(new AttachmentsCollector(this.Attachments, additionalAttachments)); AddCollectors(result); return(result); }
public void ResetTrackArguments() { methodArgumentsMap = null; }