Поделиться через


Ошибки

Это важно

Центр приложений Visual Studio был прекращен 31 марта 2025 г., за исключением функций аналитики и диагностики, которые будут поддерживаться до 30 июня 2026 г. Подробнее.

Ошибки Центра приложений позволяют обрабатывать ошибки в приложении и избегать потенциальных проблем в приложении. В этом разделе рассматривается, как перехватывать и сообщать об ошибках в приложении. Узнайте больше о лучших практиках о том, когда и как использовать ошибки в официальной документации по исключениям.

Замечание

В настоящее время обработка ошибок поддерживается только на платформе Xamarin.

Общая информация

При запуске Центра приложений в приложении служба сообщает обо всех ошибках во время существования приложения. Эти ошибки отправляются на сервер при их возникновении (если есть сетевое подключение) или при следующем запуске приложения.

Дополнительные сведения о наборе функций см. в документации по ошибкам.

Интегрируйте пакет Crashes SDK, чтобы начать работу

Чтобы отслеживать ошибки в приложении Xamarin, интегрируйте модуль "Сбои" в App Center SDK. Ознакомьтесь с нашей документацией по SDK для сбоев, чтобы узнать, как это сделать.

Неуловимые ошибки (сбои)

Неуловимая ошибка (сбой) — это ошибка, которая возникает за пределами блока try/catch. Центр приложений автоматически сообщает об этих сбоях по умолчанию при интеграции модуля аварийного сбоя пакета SDK для Центра приложений.

Внутри блока Try/Catch (ошибки)

Вызывая TrackError метод в корпусе try/catch, вы можете контролировать, какие сведения отправляются в службу Центра приложений при возникновении ошибки, а также получить более четкое представление об ошибке и состоянии устройства.

Существует ряд преимуществ с помощью TrackError метода:

  • Отправляйте отчёты в службу с большей точностью.
  • Отправка отчетов в службу с дополнительными сведениями.

Отслеживание ошибок, обрабатываемых в Центре приложений

Включите пакет SDK для аварийного сбоя для обработки ошибок и сообщите об этом в Центр приложений. В рамках этого модуля можно отслеживать ошибки с помощью TrackError метода:

try
{
    int divByZero = 42 / int.Parse("0");
} catch (DivideByZeroException ex){
    Crashes.TrackError(ex);
}

Узнайте больше о том, как использовать Crashes SDK для отслеживания ошибок в Xamarin в документации по Crashes SDK.

Добавление дополнительной информации к обработке ошибок

Можно настроить отчет об ошибках, отправленный в Центр приложений, чтобы предоставить дополнительные сведения для дальнейшего контекста об ошибке. Для этого передайте словарь пар ключей и значений строк в TrackError метод. Эти свойства являются необязательными. Рассмотрим пример.

try
{
    using (var text = File.OpenText("saved_game001.txt"))
    {
        Console.WriteLine("{0}", text.ReadLine());
        ...
    }
}
catch (FileNotFoundException ex)
{
    Crashes.TrackError(ex, new Dictionary<string,string>{
        { "Filename", "saved_game001.txt" },
        { "Where", "Reload game" },
        { "Issue", "Index of available games is corrupted" }
    });
}

Здесь полное исключение (ex) все еще отправляется обратно в службу App Center, но дополнительно создается и отправляется словарь, содержащий дополнительные сведения об отладке.

Ограничения

  • Вы можете определить не более 20 свойств на ошибку, все, что превышает это ограничение, будет отклонено.
  • Максимальное число символов на ключ свойства ошибки и значение свойства ошибки — 125 символов.