public LogSQLiteModel(LogDeviceDetails info, LogApiDetails apiDetails = null, LogExceptionDetails e = null) { ReportedTime = info.ReportedTime; Severity = info.Severity.ToString(); Description = info.Description; ApiVersion = info.ApiVersion; BuildVersion = info.BuildVersion; BuildNumber = info.BuildNumber; DeviceOSVersion = info.DeviceOSVersion; AdditionalInfo = info.AdditionalInfo; if (apiDetails != null) { Api = apiDetails.Api; ApiErrorCode = apiDetails.ApiErrorCode; ApiErrorMessage = apiDetails.ApiErrorMessage; } if (e != null) { ExceptionType = e.ExceptionType; ExceptionMessage = e.ExceptionMessage; ExceptionStackTrace = e.ExceptionStackTrace; InnerExceptionType = e.InnerExceptionType; InnerExceptionMessage = e.InnerExceptionMessage; InnerExceptionStackTrace = e.InnerExceptionStackTrace; } }
public static void LogApiError(LogSeverity severity, ApiResponse apiResponse, bool erroredSilently, string additionalInfo = "", string overwriteMessage = null) { string errorMessage = overwriteMessage ?? apiResponse.ErrorLogMessage; string message = errorMessage + (erroredSilently ? " (silent)" : " (error shown)"); LogDeviceDetails logModel = new LogDeviceDetails(severity, message, additionalInfo); LogApiDetails apiModel = new LogApiDetails(apiResponse); LogExceptionDetails eModel = null; if (apiResponse.Exception != null) { eModel = new LogExceptionDetails(apiResponse.Exception); } LogSQLiteModel dbModel = new LogSQLiteModel(logModel, apiModel, eModel); ServiceLocator.Current.GetInstance <ILoggingManager>().SaveNewLog(dbModel); }