После того как данные Crashlytics и (при необходимости) данные о сеансах Firebase будут экспортированы в Cloud Logging, вы сможете фильтровать журналы и создавать показатели на основе журналов. Оба этих варианта полезны для просмотра, использования и анализа определенных данных.
Если вы ещё не сделали этого, ознакомьтесь с разделом Что можно делать с данными?, чтобы узнать, как работать с данными, хранящимися в Cloud Logging.
Как фильтровать журналы с помощью запросов
Фильтрация журналов помогает просматривать определенные данные, а также снижает затраты на хранение и дальнейший анализ. Вы можете фильтровать журналы с помощью языка запросов к журналам (LQL).
Чтобы узнать, как фильтровать журналы с помощью запросов, ознакомьтесь со статьями Примеры запросов с использованием Logs Explorer и Создание запросов к журналам. В таблице ниже описаны поля, доступные для этих запросов.
Примеры фильтров
Ниже приведены примеры начальных фильтров для запроса к категории Crashlytics:
Чтобы найти все критические сбои для определенной версии приложения:
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.errorType="FATAL" jsonPayload.version.displayVersion="3.2.0"
Чтобы найти сбои, происходящие на определенной модели устройства (например, Pixel 6a):
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.device.model="Pixel 6a"
Чтобы найти определенный
OutOfMemoryErrorво всех критических событиях:logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.errorType="FATAL" jsonPayload.issue.subtitle="java.lang.OutOfMemoryError"
Чтобы найти события с определенным идентификатором проблемы Crashlytics:
logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents" jsonPayload.issue.id="ISSUE_ID"
Схема журнала
Каждая запись в журнале имеет заданную структуру и поля, по которым можно выполнять запросы (см. LogEntry).
Узнайте больше о схеме журналов для экспортированных данных, включая данные Crashlytics, данные сеансов Firebase и журналы устройств.
Как создать показатель на основе журнала
Вы можете просматривать и создавать показатели на основе журналов, а затем использовать их в Cloud Monitoring для создания диаграмм, специальных сводок и специальных оповещений.
Используйте предопределенные системные показатели, которые регистрируются автоматически, например количество событий регистрации, произошедших за определенный период времени.
Создайте пользовательские показатели для проекта. Вы можете подсчитать количество записей журнала, соответствующих определенному запросу, или отслеживать определенные значения в соответствующих записях журнала. Вы можете фильтровать данные с помощью регулярных выражений. Ознакомьтесь с тарифами на пользовательские показатели.
Используйте Cloud Monitoring, чтобы записать количество записей журнала, содержащих определенные сообщения, или извлечь информацию о задержке, указанную в записях журнала. Эти показатели можно использовать в диаграммах и специальных оповещениях.
Примеры показателей на основе журналов
Ниже приведены два примера пользовательских показателей на основе журналов, которые можно создать на основе экспортированных данных о сеансах Crashlytics и Firebase:
Используя данные Crashlytics:
создайте показательfirebase/crashlytics_eventsс ярлыкомerrorTypeи определите его следующим образом:logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fevents"Используя данные о сеансах Firebase:
создайте показатель с названиемfirebase/session_eventsи ярлыкомeventType, а затем задайте для него следующее определение:logName="projects/PROJECT_ID/logs/firebasecrashlytics.googleapis.com%2Fsession_events"
Что дальше?
Создавайте временные диаграммы, чтобы быстро визуализировать данные.
Создавайте собственные сводки для долгосрочного и расширенного мониторинга.
Настраивайте и отправляйте специальные оповещения на специальные каналы уведомлений.