Instrument errors in app delegate.

// FREEBIE
pull/1/head
Matthew Chen 8 years ago
parent 7da5df594f
commit 117bca7c48

@ -263,7 +263,7 @@ static NSString *const kURLHostVerifyPrefix = @"verify";
- (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error - (void)application:(UIApplication *)application didFailToRegisterForRemoteNotificationsWithError:(NSError *)error
{ {
DDLogError(@"%@ Failed to register for remote notifications with error %@", self.tag, error); OWSProdErrorWNSError(@"app_delegate_error_failed_to_register_for_remote_notifications", error);
#ifdef DEBUG #ifdef DEBUG
DDLogWarn(@"%@ We're in debug mode. Faking success for remote registration with a fake push identifier", self.tag); DDLogWarn(@"%@ We're in debug mode. Faking success for remote registration with a fake push identifier", self.tag);
[PushManager.sharedManager.pushNotificationFutureSource trySetResult:[[NSMutableData dataWithLength:32] copy]]; [PushManager.sharedManager.pushNotificationFutureSource trySetResult:[[NSMutableData dataWithLength:32] copy]];
@ -334,25 +334,24 @@ static NSString *const kURLHostVerifyPrefix = @"verify";
NSError *typeError; NSError *typeError;
[url getResourceValue:&utiType forKey:NSURLTypeIdentifierKey error:&typeError]; [url getResourceValue:&utiType forKey:NSURLTypeIdentifierKey error:&typeError];
if (typeError) { if (typeError) {
DDLogError( OWSFail(
@"%@ Determining type of picked document at url: %@ failed with error: %@", self.tag, url, typeError); @"%@ Determining type of picked document at url: %@ failed with error: %@", self.tag, url, typeError);
OWSAssert(NO); return NO;
} }
if (!utiType) { if (!utiType) {
DDLogDebug(@"%@ falling back to default filetype for picked document at url: %@", self.tag, url); OWSFail(@"%@ falling back to default filetype for picked document at url: %@", self.tag, url);
OWSAssert(NO);
utiType = (__bridge NSString *)kUTTypeData; utiType = (__bridge NSString *)kUTTypeData;
return NO;
} }
NSNumber *isDirectory; NSNumber *isDirectory;
NSError *isDirectoryError; NSError *isDirectoryError;
[url getResourceValue:&isDirectory forKey:NSURLIsDirectoryKey error:&isDirectoryError]; [url getResourceValue:&isDirectory forKey:NSURLIsDirectoryKey error:&isDirectoryError];
if (isDirectoryError) { if (isDirectoryError) {
DDLogError(@"%@ Determining if picked document at url: %@ was a directory failed with error: %@", OWSFail(@"%@ Determining if picked document at url: %@ was a directory failed with error: %@",
self.tag, self.tag,
url, url,
isDirectoryError); isDirectoryError);
OWSAssert(NO);
return NO; return NO;
} else if ([isDirectory boolValue]) { } else if ([isDirectory boolValue]) {
DDLogInfo(@"%@ User picked directory at url: %@", self.tag, url); DDLogInfo(@"%@ User picked directory at url: %@", self.tag, url);

@ -43,6 +43,7 @@
NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_BEGIN
#define kOWSProdAssertParameterEnvelopeIsLegacy @"envelope_is_legacy" #define kOWSProdAssertParameterEnvelopeIsLegacy @"envelope_is_legacy"
#define kOWSProdAssertParameterEnvelopeHasContent @"has_content"
#define kOWSProdAssertParameterEnvelopeDescription @"envelope_description" #define kOWSProdAssertParameterEnvelopeDescription @"envelope_description"
#define kOWSProdAssertParameterEnvelopeEncryptedLength @"encrypted_length" #define kOWSProdAssertParameterEnvelopeEncryptedLength @"encrypted_length"
@ -51,6 +52,7 @@ NS_ASSUME_NONNULL_BEGIN
NSData *__encryptedData = __envelope.hasContent ? __envelope.content : __envelope.legacyMessage; \ NSData *__encryptedData = __envelope.hasContent ? __envelope.content : __envelope.legacyMessage; \
return (@{ \ return (@{ \
kOWSProdAssertParameterEnvelopeIsLegacy : @(__envelope.hasLegacyMessage), \ kOWSProdAssertParameterEnvelopeIsLegacy : @(__envelope.hasLegacyMessage), \
kOWSProdAssertParameterEnvelopeHasContent : @(__envelope.hasContent), \
kOWSProdAssertParameterEnvelopeDescription : [self descriptionForEnvelopeType:__envelope], \ kOWSProdAssertParameterEnvelopeDescription : [self descriptionForEnvelopeType:__envelope], \
kOWSProdAssertParameterEnvelopeEncryptedLength : @(__encryptedData.length), \ kOWSProdAssertParameterEnvelopeEncryptedLength : @(__encryptedData.length), \
}); \ }); \
@ -162,6 +164,7 @@ NS_ASSUME_NONNULL_BEGIN
- (NSString *)descriptionForEnvelopeType:(OWSSignalServiceProtosEnvelope *)envelope - (NSString *)descriptionForEnvelopeType:(OWSSignalServiceProtosEnvelope *)envelope
{ {
OWSAssert(envelope != nil); OWSAssert(envelope != nil);
switch (envelope.type) { switch (envelope.type) {
case OWSSignalServiceProtosEnvelopeTypeReceipt: case OWSSignalServiceProtosEnvelopeTypeReceipt:
return @"DeliveryReceipt"; return @"DeliveryReceipt";

@ -117,18 +117,19 @@ typedef NSDictionary<NSString *, id> *_Nonnull (^OWSProdAssertParametersBlock)()
#define AnalyticsParametersFromNSError(__nserror) \ #define AnalyticsParametersFromNSError(__nserror) \
^{ \ ^{ \
return (@{ \ return (@{ \
kOWSProdAssertParameterNSErrorDomain : __nserror.domain, \ kOWSProdAssertParameterNSErrorDomain : (__nserror.domain ?: @"unknown"), \
kOWSProdAssertParameterNSErrorCode : @(__nserror.code), \ kOWSProdAssertParameterNSErrorCode : @(__nserror.code), \
kOWSProdAssertParameterNSErrorDescription : __nserror.description, \ kOWSProdAssertParameterNSErrorDescription : (__nserror.description ?: @"unknown"), \
}); \ }); \
} }
#define AnalyticsParametersFromNSException(__exception) \ #define AnalyticsParametersFromNSException(__exception) \
^{ \ ^{ \
return (@{ \ return (@{ \
kOWSProdAssertParameterNSExceptionName : __exception.name, \ kOWSProdAssertParameterNSExceptionName : (__exception.name ?: @"unknown"), \
kOWSProdAssertParameterNSExceptionReason : __exception.reason, \ kOWSProdAssertParameterNSExceptionReason : (__exception.reason ?: @"unknown"), \
kOWSProdAssertParameterNSExceptionClassName : NSStringFromClass([__exception class]), \ kOWSProdAssertParameterNSExceptionClassName : \
(__exception ? NSStringFromClass([__exception class]) : @"unknown"), \
}); \ }); \
} }

Loading…
Cancel
Save