Я использую Firestore для сохранения данных, и все примеры обработки ошибок в документах Firestore и результатах Google по сути имеют один и тот же, в частности, не богатый шаблон:
.setData(user.documentData) { error in
if let error = error {
print("Error writing user to Firestore: \(error)")
}
}
Однако я хотел бы добавить контекст о сайте вызова (который я пытался написать пользователю, в приведенном выше примере) к ошибке вместо получения обобщенного описания локализованного описания FireStore c ошибка записи данных не удалось при записи ошибки и распространения ошибки. Например:
.setData(user.documentData) { error in
if let error = error {
Crashlytics.sharedInstance().recordError(error)
print("Error writing user to Firestore: \(error)")
completion(.failure(error))
}
}
Существует ли шаблон для создания пользовательской ошибки Swift с перечислением Error, которое начинается с ошибки Firestore, чтобы сохранить ее контекст и добавить контекст приложения ошибки? Существуют ли другие подходы к предоставлению информации локального контекста о том, что не удалось записать в ошибке FireStore?