Новый Logcat на последних версиях Android Studio

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

Дополнительные логи при запуске и остановке приложения
Новый logcat отображает дополнительные сообщения при запуске или остановке приложения (закрытии или сбое).

Такие заметки включают сообщение, идентификатор процесса и имя пакета.

// application started
--- PROCESS STARTED (32485) for package com.alexzh.testapp ---

// application stopped
--- PROCESS ENDED (32354) for package com.alexzh.testapp ---

Запросы
В предыдущей версии logcat у нас был «поиск» на главном экране, а фильтры располагались в отдельном меню.

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

Давайте взглянем на конкретные ключи, которые можно использовать для фильтрации записей журнала:

  • Package
  • Пакет локального приложения: package:mine
  • Идентификатор пакета: package:<package-ID>
  • Уровень лога: level:[VERBOSE | INFO | ASSERT | DEBUG | WARN | ERROR]
  • Тег: tag:<tag>

При фильтрации по уровню помните, что значение уровня в logcat будет больше или равно значению уровня запроса.
Например:

  • Запрос: level:DEBUG отображает логи для значений уровней DEBUG, WARN и ERROR.
  • Запрос: level:INFO отображает журналы для значений уровней INFO, ASSERT, DEBUG, WARN и ERROR.

Примеры использования конкретных значений для фильтрации записей журнала.
Пример: Показать журналы с уровнями WARN и ERROR.
Запрос: package:mine level:WARN

Пример: Отображение логов с тегом «HomeScreen», в которых сообщение начинается с текста «test log».
Запрос: package:mine tag:HomeScreen test log

Чтобы исключить записи журнала, вы можете использовать знак «-» перед ключом (-tag:<exclude-tag>).
Пример: Показать журналы для всех тегов, которые начинаются с префикса «HomeScreen», и исключить журналы для тега «HomeScreenSettings».
Запрос: package:mine tag:HomeScreen -tag:HomeScreenSettings

Если вы хотите использовать регулярное выражение в журналах, вы можете использовать «~» после ключа (tag~:<regular-expression-tag>).
Пример: Показать журналы, которые имеют тег с постфиксом «Nav».
Запрос: package:mine tag~:.*Nav

Мы можем фильтровать журналы по диапазону отметок времени, используя параметр age:<number><unit>.

  • age:30s возвращает логи за последние 30 секунд
  • age:2m возвращает логи за последние 2 минуты
  • age:1h возвращает логи за последний час
  • age:2d возвращает логи за последние 2 дня

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

  • is:crash возвращает записи журнала, которые представляют сбои
  • is:stacktrace возвращает записи журнала, которые представляют все, что похоже на трассировку стека Java.

История запросов
В последней версии logcat есть несколько улучшений в «Истории запросов». Теперь мы можем удалять запросы из истории, помечать запросы как избранные или задавать конкретное имя для запроса.

Функция «История запросов» позволяет удалять элементы нажатием «X» только в Android Studio Electric Eel (2022.1) или выше, но в Android Studio Dolphin для этого можно использовать сочетание клавиш.
Каждый фильтр запроса также показывает количество найденных записей журнала.
Форматирование
Новый logcat предоставляет несколько вариантов форматирования:

  • Стандартный вид
  • Компактный вид

Мы можем изменить активное представление, щелкнув значок «Настроить параметры форматирования Logcat» в левой части окна logcat.

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

«Компактный вид» отображает метку времени (время), уровень журнала и сообщение.

Чтобы изменить оба предопределенных представления, нам нужно щелкнуть значок «Настроить параметры форматирования Logcat» и выбрать «Изменить представление». Все изменения будут применены к выбранному представлению.

Чтобы изменить оба предопределенных представления, нам нужно щелкнуть значок «Настроить параметры форматирования Logcat» и выбрать «Изменить представление». Все изменения будут применены к выбранному представлению.

Несколько окон logcat
Мы можем создать столько вкладок logcat, сколько нам нужно, нажав значок «Новая вкладка».
Каждая вкладка позволяет использовать несколько окон logcat. Это может быть полезно, если вы хотите использовать разные запросы для каждой панели или проверять логи для разных устройств. Мы можем разделить окно logcat на две части, щелкнув правой кнопкой мыши журналы и выбрав «Разделить вправо» или «Разделить вниз».

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

  • Дополнительные журналы при запуске, остановке или сбое приложения
  • Несколько вкладок и окон logcat позволяют пользователю одновременно анализировать данные с разных устройств.
  • Параметры форматирования записей журнала можно настроить, и мы можем видеть только необходимую информацию
  • Поиск и фильтры были объединены в поле ввода запроса, которое всегда видно, включая дополнительные операторы фильтрации, такие как is:crush, эксклюзивные операторы (-tag:<exclude-a-tag>) и многое другое.
  • Большинство используемых запросов можно сохранить как избранное, и у вас будет больший контроль над историей запросов.