Вы можете создать свои собственные пользовательские метрики в журнале Stackdriver. Таким образом, вы можете захватить все журналы, соответствующие определенному фильтру, и выставить поля, которые вы хотите, в качестве метри c меток.
Например, я перехожу к Stackdriver Logging
-> Logs-based Metrics
-> Create Metric
и выберите фильтр для приложения GAE:
resource.type="gae_app"
logName=("projects/REDACTED/logs/appengine.googleapis.com%2Fstdout"
OR "projects/REDACTED/logs/appengine.googleapis.com%2Fstderr"
OR "projects/REDACTED/logs/appengine.googleapis.com%2Fnginx.request"
OR "projects/REDACTED/logs/appengine.googleapis.com%2Frequest_log")
resource.labels.module_id="image-demo"
httpRequest.requestMethod="GET"
Запросы содержат шаблон c jsonPayload
, например:
jsonPayload: {
appLatencySeconds: "0.000"
latencySeconds: "0.001"
trace: "4ff777572199f23f4fc97388e75c0acc"
}
В редакторе metri c (справа панель) под Labels
есть раскрывающийся селектор Field name
, который включает в себя наши поля jsonPayload
:
В нашем случае мы выбираем jsonPayload.trace
и теперь мы можем отфильтровать нашу пользовательскую метрику c по метке trace в Metrics Explorer:
Обратите внимание, что вы может создать предупреждение мониторинга Stackdriver непосредственно из списка пользовательских метрик (Create alert from metric
):