Протокол AMAErrorRepresentable

Протокол для ошибок, которые можно отправлять в AppMetrica.

Каждый объект класса, который реализует протокол, должен иметь идентификатор. AppMetrica использует идентификаторы, чтобы группировать ошибки.

Вся отправленная информация об ошибках доступна в отчетах AppMetrica.

Вы можете реализовать этот протокол, чтобы отправлять собственные ошибки. Также вы можете воспользоваться дефолтной реализацией AMAError.

Свойства

identifier

Идентификатор ошибки. Используется AppMetrica для группировки ошибок.

message

Произвольное описание ошибки.

parameters

Дополнительные параметры ошибки.

backtrace

Кастомный бэктрейс ошибки. Вы можете получить его с помощью метода NSThread.callStackReturnAddresses.

underlyingError

Объект ошибки, который соответствует протоколу AMAErrorRepresentable.

Описание свойств

identifier

@required
@property (readonly, copy, nonatomic) NSString *_Nonnull identifier;

Идентификатор ошибки. Используется AppMetrica для группировки ошибок.

Максимальная длина значения — 300 символов. Если значение превышает ограничение, AppMetrica обрезает его.

Примечание

AppMetrica не использует идентификаторы вложенных ошибок (underlyingError) для группировки.

message

@optional
@property (readonly, copy, nonatomic, nullable) NSString *message;

Произвольное описание ошибки.

Максимальная длина значения — 1000 символов. Если значение превышает ограничение, AppMetrica обрезает его.

parameters

@optional
@property (readonly, copy, nonatomic, nullable) NSDictionary<NSString *, id> *parameters;

Дополнительные параметры ошибки.

Параметры приводятся к парам ключ-значение, где ключ и значение являются строками. Если ключ или значение отличаются от типа строка, AppMetrica автоматически вызывает метод description.

Максимальное количество параметров — 50. Максимальные значения параметров — 100 символов для ключа, 2 000 для значения. Если значение превышает ограничение, AppMetrica обрезает его.

backtrace

@optional
@property (readonly, copy, nonatomic, nullable) NSArray<NSNumber *> *backtrace;

Кастомный бэктрейс ошибки. Вы можете получить его с помощью метода NSThread.callStackReturnAddresses.

Максимальное количество фреймов стека — 200. Если значение превышает ограничение, AppMetrica обрезает его.

underlyingError

@optional
@property (readonly, strong, nonatomic, nullable) id<AMAErrorRepresentable> underlyingError;

Объект ошибки, который соответствует протоколу AMAErrorRepresentable.

Максимальное количество вложенных ошибок — 10. Если значение превышает ограничение, AppMetrica обрезает его.