Перейти к содержимому

Как отправить лог файл игры

  • автор:

Как снять и отправить логи при падении приложения на android?

У меня есть приложение на android которое я тестирую везде где можно и на некоторых устройствах приложение падает, но этих устройств у меня нету под рукой, и мне соответственно нужно что-бы мне на почту приходили логи ошибки. Я уже задавал два вопроса Определить причину падения приложения на телефоне android // Непонятная проблема программы android y xiaomi. И вот у меня возник закономерный вопрос, что нужно дописать своему приложению что-бы во время падения оно предлагало пользователю отправить логи мне на почту? Как сделать, что-бы эти методы отслеживания логов активировались только в момент падения приложения а не при любом удобном для них (методов) случае. Я буду очень благодарен за любую помощь, советы и само-собой критику от всех кто увидит мой вопрос. Заранее спасибо за помощь.

Отслеживать
32.2k 15 15 золотых знаков 61 61 серебряный знак 93 93 бронзовых знака
задан 6 авг 2018 в 13:23
17.9k 11 11 золотых знаков 25 25 серебряных знаков 57 57 бронзовых знаков
6 авг 2018 в 13:42
Crashlytics довольно удобный сервис для этих целей
6 авг 2018 в 14:10

2 ответа 2

Сортировка: Сброс на вариант по умолчанию

Я вот такой класс для нашей игры писал:

public class LogsSender < public static void sendLogs(Activity activity) < Log("sendLogs" ); printInfo(); int pid = android.os.Process.myPid(); try < String command = String.format("logcat -d -v threadtime *:*"); Process process = Runtime.getRuntime().exec(command); BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); StringBuilder result = new StringBuilder(); String currentLine = null; while ((currentLine = reader.readLine()) != null) < if (currentLine != null && currentLine.contains(String.valueOf(pid))) < result.append(currentLine); result.append("\n"); >> Log(result.toString()); Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND); emailIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); emailIntent.setType("vnd.android.cursor.item/email"); emailIntent.putExtra(android.content.Intent.EXTRA_EMAIL, new String[] ); emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Logs"); emailIntent.putExtra(android.content.Intent.EXTRA_TEXT, result.toString()); activity.startActivity(Intent.createChooser(emailIntent, "Send mail using. ")); > catch (Exception e) < e.printStackTrace(); >> private static void Log(String txt) < Log.d("unity", txt); >private static void printInfo() < Log("externalMemoryAvailable: " + externalMemoryAvailable()); if(externalMemoryAvailable())< Log("getTotalExternalMemorySize: " + getTotalExternalMemorySize()); Log("getAvailableExternalMemorySize: " + getAvailableExternalMemorySize()); >Log("getTotalInternalMemorySize: " + getTotalInternalMemorySize()); Log("getAvailableInternalMemorySize: " + getAvailableInternalMemorySize()); > private static boolean externalMemoryAvailable() < return android.os.Environment.getExternalStorageState().equals( android.os.Environment.MEDIA_MOUNTED); >private static String getAvailableInternalMemorySize() < File path = Environment.getDataDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSizeLong(); long availableBlocks = stat.getAvailableBlocksLong(); return formatSize(availableBlocks * blockSize); >private static String getTotalInternalMemorySize() < File path = Environment.getDataDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSizeLong(); long totalBlocks = stat.getBlockCountLong(); return formatSize(totalBlocks * blockSize); >private static String getAvailableExternalMemorySize() < if (externalMemoryAvailable()) < File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSizeLong(); long availableBlocks = stat.getAvailableBlocksLong(); return formatSize(availableBlocks * blockSize); >else < return "ext not available"; >> private static String getTotalExternalMemorySize() < if (externalMemoryAvailable()) < File path = Environment.getExternalStorageDirectory(); StatFs stat = new StatFs(path.getPath()); long blockSize = stat.getBlockSizeLong(); long totalBlocks = stat.getBlockCountLong(); return formatSize(totalBlocks * blockSize); >else < return "ext not available"; >> private static String formatSize(long size) < String suffix = null; if (size >= 1024) < suffix = "KB"; size /= 1024; if (size >= 1024) < suffix = "MB"; size /= 1024; >> StringBuilder resultBuffer = new StringBuilder(Long.toString(size)); int commaOffset = resultBuffer.length() - 3; while (commaOffset > 0) < resultBuffer.insert(commaOffset, ','); commaOffset -= 3; >if (suffix != null) resultBuffer.append(suffix); return resultBuffer.toString(); > > 

Если вам нужно именно логи краша, то код LoginActivity , который вызывает краш, можете завернуть в try <> catch<> , в catch вывести в лог стектрейс исключения, а потом вызвать LogsSender.sendLogs . Откроется окно с выбором почтового клиента, автоматически все поля будут занесены после выбора клиента. Человеку останется только кнопку «Отправить» нажать.

Лог-файл

Лог (log) — это текстовый файл, куда автоматически записывается важная информация о работе системы или программы. Чаще всего говорят о логах сервера. Их записывает программное обеспечение, которое управляет внутренней частью сайта или онлайн-системы. Лог-файл — своеобразный журнал событий.

«IT-специалист с нуля» наш лучший курс для старта в IT

В логи записываются сведения об ошибках, действиях пользователей и других событиях, которые происходят на сервере или в системе. Разработчики и инженеры пользуются ими при отладке или при проверке, как работает программное обеспечение.

Лог файл

Лог-файл (log file) содержит в себе информацию в сокращенном формате. Для обычного пользователя это непонятный набор символов. Но у записей есть смысл, и специалисты должны уметь читать их — в файлах много важной информации о работе.

Профессия / 8 месяцев
IT-специалист с нуля

Попробуйте 9 профессий за 2 месяца и выберите подходящую вам

vsrat_7 1 (1)

Для чего нужны логи

Устранение неполадок. По логам можно понять, когда и из-за чего в работе системы возник сбой. А когда станет понятна причина, устранить его будет легче.

Контроль работы. Логи позволяют лучше отслеживать процессы, делать прогнозы на будущее и в целом контролировать работу сервера. По ним понятно, нормально ли работает система, что нужно доработать, какая у сайта посещаемость и так далее.

Проверка стабильности. Даже если с системой все хорошо, рекомендуется периодически проверять ее логи. Так можно на ранних этапах найти уязвимость или недочет — еще до того, как он станет проблемой.

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

Маркетинг. Логи — источник ценной информации для развития сайта. Они позволяют собрать статистику по посещаемости с «сырыми» техническими данными. Например, понять, откуда приходят пользователи, где они находятся и какими устройствами пользуются для визита.

Читайте также Как выбрать IT-специальность в новых реалиях?

Какими бывают логи

Информации в логах много, поэтому для каждого типа сведений существует свой лог-файл. Возьмем для примера логи веб-сервера. Вот какими они могут быть:

Лог-файл WinGate

  • основной рассказывает о главных событиях, которые произошли непосредственно с серверным ПО;
  • журнал доступа содержит сведения о посетителях сайта;
  • лог ошибок сообщает обо всех сбоях, которые произошли во время работы ПО;
  • лог веб-сервера рассказывает об обращениях к серверу и о возможных ошибках;
  • лог баз данных записывает сведения о действиях с БД, запросах и ошибках;
  • лог почтового сервера содержит информацию об отправленных и полученных письмах и так далее.

Наиболее важными считаются логи сервера, доступа и ошибок, но проверять советуют не только их. Мы перечислили только несколько примеров: отдельные журналы могут быть у планировщика задач, клиента передачи файлов, хостинга и многих других подсистем. Информация по каждой из них пишется в свой лог.

Станьте Fullstack-разработчик на Python и найдите стабильную работу
на удаленке

Что может содержаться в логах

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

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

Как правильно читать лог

Вручную. Логи хранятся в файлах с расширением .log. Их можно открыть как обычные текстовые файлы и просмотреть содержимое. Перед этим стоит посмотреть, как настроен формат записи логов, если у вас есть доступ к этим параметрам.

Например, так выглядит формат по умолчанию для лога доступа с веб-сервера:

[доменное имя сайта][IP-адрес пользователя][дата и время визита][тип запроса][URL, к которому обратился пользователь][протокол, по которому пользователь соединился с сайтом][код ответа сервера][количество байт информации, которую передали пользователю][дополнительная информация]

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

Это не единственный возможный способ записи лога. Например, в логе ошибок каждая строчка — это запись об ошибке с полной информацией о ней: датой и временем, адресом страницы, на которой возник сбой, и так далее.

С помощью анализатора. Второй вариант — не просматривать лог вручную, а воспользоваться специальной программой-анализатором. Она парсит лог-файл — «разбирает» его на составляющие и представляет в удобном для пользователя виде. Так информация показывается в виде понятного отчета, иногда с графиками и диаграммами.

Анализаторы бывают разными, например Weblog Expert, Analog и пр. Некоторые из них также умеют интегрироваться с сервисами для сбора статистики, чтобы показывать более полную картинку.

С помощью анализатора логов Weblog Expert можно легко смотреть записи ошибок

Проверять и читать логи вам понадобится, если вы будете работать с профессиональным ПО для разработчиков, вебмастеров или инженеров. Это сложно только с первого взгляда — если понять принцип, расшифровать их не составит труда. А анализаторы помогут лучше и быстрее сориентироваться в записях.

Таблица лог-файлов

Таблицы для файлов ошибок представляют собой структурированный формат, используемый для записи и анализа ошибок и проблем в программных продуктах, веб-приложениях, операционных системах и других информационных системах. Такие таблицы позволяют организовать данные об ошибках в удобном и понятном формате, что облегчает их интерпретацию, поиск причин сбоев и принятие мер по исправлению.

Таблицы для файлов ошибок обычно состоят из следующих столбцов:

  1. Время и дата: Дата и время возникновения ошибки. Это позволяет определить последовательность ошибок и выявить временные интервалы, в которые они происходят.
  2. Уровень ошибки: Уровень критичности ошибки, выраженный текстом (например, DEBUG, INFO, WARNING, ERROR, CRITICAL). Это помогает классифицировать ошибки по степени их важности и срочности исправления.
  3. Компонент: Идентификатор или название компонента, в котором произошла ошибка. Это может быть имя модуля, функции, сервиса или другой части программы, что помогает быстро локализовать проблему.
  4. Сообщение об ошибке: Текстовое описание самой ошибки. Здесь обычно указывается информация о том, что пошло не так, и какие конкретно ошибки произошли.
  5. Пользователь: Информация о пользователе, если применимо. Например, это может быть идентификатор пользователя, который испытал ошибку.
  6. Дополнительные атрибуты: В зависимости от характера и требований логирования, таблицы для файлов ошибок могут содержать дополнительные столбцы, такие как IP-адрес клиента, версия программного обеспечения, тип операционной системы и другие атрибуты, которые могут быть полезны для диагностики и анализа ошибок.

Пример таблицы для файлов ошибок:

Время и дата Уровень ошибки Компонент Сообщение об ошибке Пользователь IP-адрес
2023-08-05 09:15:27 ERROR MainApp Ошибка при сохранении данных в базу данных User123 192.168.1.100
2023-08-05 09:16:42 WARNING MainApp Недостаточно свободного места на диске 192.168.1.102
2023-08-05 09:17:10 CRITICAL Database Сбой при подключении к базе данных Admin 192.168.1.103
2023-08-05 09:18:55 ERROR MainApp Ошибка валидации данных пользователя User456 192.168.1.104
2023-08-05 09:19:30 DEBUG MainApp Дополнительные данные для отладки 192.168.1.105

Таблица для лог-файлов

Такие таблицы помогают разработчикам и администраторам систем систематизировать информацию о возникновении ошибок, упростить их поиск и устранение, а также обеспечить надежное мониторинг и отладку программного обеспечения.

Узнать больше о сетевых технологиях и получить новую профессию вы можете на курсах. Записывайтесь и станьте востребованным IT-специалистом.

IT-специалист с нуля

Наш лучший курс для старта в IT. За 2 месяца вы пробуете себя в девяти разных профессиях: мобильной и веб-разработке, тестировании, аналитике и даже Data Science — выберите подходящую и сразу освойте ее.

Как отправить лог файл игры

© Valve Corporation. Все права защищены. Все торговые марки являются собственностью соответствующих владельцев в США и других странах. Политика конфиденциальности | Правовая информация | Соглашение подписчика Steam | Возврат средств

Установить Steam

Deuterium Wars

Deuterium Wars

Эта публикация удалена, так как она нарушает рекомендации по поведению и контенту в Steam. Её можете видеть только вы. Если вы уверены, что публикацию удалили по ошибке, свяжитесь со службой поддержки Steam.

Этот предмет несовместим с Deuterium Wars. Пожалуйста, прочитайте справочную статью, почему этот предмет может не работать в Deuterium Wars.

Доступность: для себя
Этот предмет виден только вам, администраторам и тем, кто будет отмечен как создатель.
Доступность: только друзьям
В результатах поиска этот предмет сможете видеть только вы, ваши друзья и администраторы.

Недостаточно оценок
Логи игры: зачем нужны, как прислать, где найти?
От Ellisena

Подробная информация о том, как и в каких случаях нужно присылать логи игры, где их найти и почему это так необходимо.

В избранное
В избранном
Поделиться
Этот предмет добавлен в избранное.

Ellisena
Не в сети
15 июл. 2019 в 10:53
15 июл. 2019 в 11:40

1,373 уникальных посетителей
2 добавили в избранное

Оглавление руководства

Итак, где найти логи:

Как прислать логи?

Комментарии

Иногда, в процессе игры, вы встречаетесь с багами и ошибками. Для того, чтобы их обнаружить и исправить, помимо описания проблемы, нам необходимы логи игры.

Поэтому, если случилась какая-либо ошибка, к вашим сообщениям об этом мы очень просим присылать эти самие логи.

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

Итак, где найти логи:

Путь к логам по умолчанию на вашем компьютере:

C:\Program Files (x86)\Steam\steamapps\common\Deuterium Wars\log

Однако, путь к этой папке может быть и другим, взависимости от ваших настроек. Поэтому, если по указанному пути вы не находите данную папку, тогда логи можно найти следующим способом:

    Откройте Библиотеку Steam. Когда вы в игре, Steam всегда включен, а поэтому вы можете найти его иконку на панели задач.

Как снимать логи с устройств на Android и iOS: разбираемся с инструментами

Краткая инструкция по чтению и разбору логов мобильных устройств на Android и iOS, а также необходимые инструменты для Windows и MacOS.

Статья подготовлена red_mad_robot и «Альфа-Банком» на основе доклада Senior QA red_mad_robot Ольги Никитиной «Инструменты для снятия логов с Android / iOS устройств. Чтение и разбор» на митапе «QАчественное общение» при поддержке red_mad_robot.

Уровни логирования и что они означают

Для начала разберёмся с логами. Это текстовые файлы, в которых записываются все действия пользователя. Например, какие кнопки он нажимает в приложении и как на это оно реагирует в ответ.

Записи в логах формируются в хронологическом порядке. Самая свежая — внизу.

Есть два вида логов:

  • Crash logs — файл, в котором хранятся записи только об ошибках экстренного завершения программы — по-простому, когда приложение крашнулось.
  • Logs — простые логи, или журнал событий. Это файл, в котором хранятся системные записи и ответы устройства на действие пользователя.

Логи на мобильных устройствах бывают нескольких уровней:

Они представлены по уровню важности — от самого высокого к самому низкому, — и каждый следующий уровень включает в себя предыдущий. Например, VERBOSE содержит в себе логи всех остальных.

Примечание: уровни более применимы к логам на Android, потому что именно там такое разделение встречается чаще.

Рассмотрим подробнее каждый уровень.

Error (ERROR)

На этом уровне информируются ошибки работы системы.

Записи этого уровня требуют быстрого вмешательства разработчика — на такие ошибки нужно реагировать максимально быстро.

Как пример, такая запись в логе:

“ SpannableStringBuilder: SPAN_EXCLUSIVE_EXCLUSIVE spans cannot have a zero length ”

Это ошибка, в которой говорится, что строковый элемент span не может быть пустым.

“ [ZeroHung]zrhung_get_config: Get config failed for wp[0x0008] ] ”

Эта системная ошибка сообщает, что происходит утечка памяти при взаимодействии с каким-то элементом или приложением.

Warning (WARN)

На этом уровне отображаются записи, сообщающие о каком-то неожиданном поведении, требующем внимания, или о ситуации, которая незнакома системе.

Например, сообщение ниже — запись из тестового приложения:

“ [OMX.hisi.video.decoder.avc] setting nBufferCountActual to 16 failed: -2147483648 “

Мы пытаемся декодировать запись в какой-то формат, но его нет. Ошибка сообщает о неуспешной попытке настройки видеоплеера в нужном формате.

“ BroadcastQueue: Permission Denial: broadcasting Intent ”

Эта системная ошибка говорит о сбое в работе одного из виджетов на устройстве.

Info (INFO)

На этот уровень приходят записи информационного характера, например о работе системы.

Допустим, такое сообщение об уровне заряда батареи на устройстве:

“ APwBatteryMonitor: screen off start battery: 100 ”

А это сообщение говорит о том, что экран устройства был выключен:

Ещё в логи этого уровня входят запросы от клиента на сервер: хедеры, тело запросов, которые отправляет клиент, и ответы сервера.

okhttp.OkHttpClient: server: nginx/1.15.9

okhttp.OkHttpClient: date: Thu, 23 Sep 2021 19:41:17 GMT

okhttp.OkHttpClient: content-type: application/json

okhttp.OkHttpClient: vary: Accept-Encoding

okhttp.OkHttpClient: strict-transport-security: max-age=15724800; includeSubDomains

Такие записи могут помочь вам в понимании какого-то бага или в разборе задачи при условии, что вы не можете перехватить трафик или не знаете, какие запросы отправляются на бэкенд.

Debug (DEBUG)

Это уровень сообщений, в которых передаётся информация о процессах отладки или шагах работы крупных процессов.

Например, в записи ниже сказано, что пользователь нажимал на кнопку уменьшения или увеличения громкости:

Сначала мы видим запись о самом факте нажатия на кнопку, далее оно расшифровывается подробнее:

Ещё пример: если ваше приложение использует сокет-сессию, то на уровне DEBUG мы можем увидеть, когда сессия начинается и заканчивается:

“ b$b: WebSocket connected ”

Verbose (VERBOSE)

Сообщения такого уровня уточняют или раскрывают действия.

Например, у нас есть служба управления окнами на экране приложения. И на уровне Verbose мы можем увидеть подробности её работы.

WindowManager: Removing Window

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

GnssLocationProvider: reportLocation Location [. ]

А меняя звук на устройстве, мы увидим, как растёт или падает значение:

AudioManager: getStreamVolume streamType: 3 volume: 10

Каждое нажатие, то есть изменение звука, будет отражаться новым сообщением.

Verbose — уровень самого низкого приоритета. Выбирая такой уровень отображения логов, мы будем видеть записи и со всех предыдущих уровней.

Примечание: разработчики приложения самостоятельно покрывают действия логами, определяют уровни, а также какие сообщения какому из них соответствуют.

Инструменты для снятия логов: Android

Расскажем о трёх способах.

ПервыйLogcat в составе Android Studio, самый известный и широко используемый.

Для снятия логов нам необходимо перевести устройство в режим разработчика/отладки. Для этого нужно:

  • найти в настройках номер нашего билда или ОС (в зависимости от устройства),
  • около десяти раз нажать на эту информацию,
  • при появлении сообщения о том, не хотим ли мы перевести устройство в режим разработчика, нажать «Ок».

Примечание: алгоритм может отличаться в зависимости от производителя устройства, потому что у многих из них свои надстройки на ОС Android.

Дальше подключаем устройство по USB к ПК и устанавливаем Android Studio.
Следующие шаги на скрине:

  1. Выбираем вкладку Logcat (переходим к сообщениям в реальном времени).
  2. В окошке выбираем телефон, с которого снимаем логи.
  3. На этой вкладке выбираем логи определённого приложения. Если нужно снять вообще все логи со всех приложений и системы, эту вкладку стоит не трогать. Рядом с ней можно выбрать уровень логирования (вкладка Verbose на скрине).
  4. В поле поиска, где мы можем фильтровать выдачу, разрешено писать что угодно — от названия пакета до частей вроде fatal.

На скрине видно логи с подключенного устройства.

Второй способвыгрузка логов с самого устройства. Кроме режима разработчика нам нужно подключить устройство к ПК через USB и установить ADB — Android Debug Bridge.

Открываем терминал и пишем две команды.

Первая — adb devices — показывает подключённые устройства, которые видит ADB. В терминале выглядит так:

Название устройства — 7BKDU18504001505

Вводим вторую команду — adb -s название устройства logcat, — которая запускает утилиту Logcat для конкретного устройства. В терминале в реальном времени будут поступать логи.

Как их читать?

  1. В первом столбце — дата и время поступления записи.
  2. Во втором — обозначения уровней логирования. Например, D — это Debug.
  3. В третьем показываются названия инструмента, утилиты, пакета, от которых поступает сообщение, а также расшифровка того, что вообще происходит.

Третий инструментSDK Platform Tools. Процесс его установки практически аналогичен предыдущим двум:

  • переводим телефон в режим разработчика,
  • подключаем к ПК по USB,
  • скачиваем на ПК папку SDK PT (под свою ОС),
  • открываем папку SDK PT в терминале.

Теперь пишем команду ./adb logcat –v threadtime > ./android-debug.log.

В терминале это выглядит так:

Прерываем выполнение команды (например, на Mac это Control+C). Лог добавляется в папку.

В первом столбце — дата и время, во втором — уровни логов, в третьем — указание на то, от какой части системы поступают данные, лог и его расшифровка/подробности

Очень похоже на предыдущий терминал, но файл обновляется, пока в терминале действует команда.

Инструменты снятия логов: iOS

В первую очередь нас интересует xCode — интегрированная среда разработки (IDE), в которую встроен нужный нам инструмент Simulator.

Как использовать инструмент:

  1. Устанавливаем xCode.
  2. В системной строке нажимаем xCode → Open Developer Tools → Simulator.
  3. Устанавливаем приложение.
  4. В самом симуляторе выбираем Debug → Open System Log.

Мы будем видеть логи в реальном времени:

Подобное оформление логов мы уже где-то видели, но построение информации в выдаче немного отличается. Есть дата и время (1) и данные (2) о том, с какого устройства снята информация: имя компьютера, элемент системы, с которого пришло сообщение, и его расшифровка.

Но первый способ работает только с симуляторами. Если необходимо снимать логи с реального устройства, в этом может помочь раздел Devices and Simulators.

Записи можно отфильтровать по конкретному процессу (вашему приложению):

  1. Устанавливаем xCode.
  2. Подключаем устройство к ПК по USB.
  3. Открываем xCode → Windows → Devices and Simulators.

Дальше нажимаем у устройства Open Console и видим панель с названием устройства, информацией о модели и ОС:

1 — все приложения, которые установлены на устройстве, 2 — версия устройства, 3 — пакет приложения устройства

Логи поступают в реальном времени, но их удобно отслеживать:

У нас есть три столбца:

  1. «Время» — время поступления сообщения.
  2. «Процесс» — с какой части системы/приложения пришло сообщение.
  3. «Сообщение» — описание события, сервисная информация.

В инструменте есть поиск для фильтрации выдачи. Ещё есть полезная кнопка «Приостановить» — она останавливает поток логов.

А вот утилита iMazing поможет снимать iOS-логи для тех, у кого установлен Windows. Приложение платное, но часть функциональности доступна бесплатно. Например, за снятие логов устройства платить не нужно.

В меню выбираем «Показать консоль устройства». В открывшемся окне приходят записи логов в реальном времени со всего устройства.

1 — дата и время получения сообщения; 2 — имя телефона, информация, с какой части устройства пришло сообщение, и описание; 3 — поисковая строка для фильтрации выдачи

Ещё одно важное достоинство iMazing — возможность сохранять логи (разумеется, по кнопке «Сохранить»).

Статья подготовлена red_mad_robot и «Альфа-Банком» на основе доклада Senior QA red_mad_robot Ольги Никитиной «Инструменты для снятия логов с Android / iOS устройств. Чтение и разбор» на митапе «QАчественное общение» при поддержке red_mad_robot.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *