異常

Google Play Developer Reporting API を使用して、指標セットで検出された異常を取得できます。同じ指標の過去 28 日間の値に基づいて、指標値が指標の予想範囲を超えるたびに、異常が生成されます。連続する日数の異常は、1 つの異常結果にマージされます。

指標値の異常な増加が長期間続く場合、検出モデルは、後続のデータポイントが異常とみなされなくなるまで、期待値を適応させて拡大します。

異常の取得

異常は、anomalies.list メソッドで一覧表示できます。

シンプルなリクエスト:

この HTTP GET リクエストでは、アプリケーション名パラメータを指定し、アプリケーションで検出された異常の完全なリストを返します。

GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/anomalies

異常レスポンス:

レスポンスには、異常が発生した場所を正確にクエリするのに十分な情報が含まれています。

{
  "anomalies": [
    {
      "name": "apps/com.example.app/anomalies/12345"
      "metric_set": "apps/com.example.app/anrRateMetricSet"
      "timeline_spec": {
        "aggregation_period": "DAILY"
        "start_time": {
          "year": 2022
          "month": 1
          "day": 23
          "time_zone": {
            "id": "America/Los_Angeles"
          }
        }
        "end_time": {
          "year": 2022
          "month": 1
          "day": 23
          "time_zone": {
            "id": "America/Los_Angeles"
          }
        }
      }
      "metric": {
        "metric": "anrRate",
        "decimal_value": {
          "value": "3.1415926535"
        }
      }
    },
    {
      "name": "apps/com.example.app/anomalies/12345"
      "metric_set": "apps/com.example.app/crashRateMetricSet"
      "timeline_spec": {
        "aggregation_period": "DAILY"
        "start_time": {
          "year": 2021
          "month": 12
          "day": 10
          "time_zone": {
            "id": "America/Los_Angeles"
          }
        }
        "end_time": {
          "year": 2021
          "month": 12
          "day": 10
          "time_zone": {
            "id": "America/Los_Angeles"
          }
        }
      }
      "metric": {
        "metric": "crashRate",
        "decimal_value": {
          "value": "2.7182818284"
        }
      }
    },
  ]
}

フィルタされたリクエスト:

フィルタを適用して、特定の期間にアクティブだった異常のみを返すことができます。これを行うには、リクエストのフィルタ フィールドに activeBetween(start, end) 関数を指定します。範囲の両側に特別なキーワード UNBOUNDED を使用して、制限なしの制限を指定できます。開始または終了の境界を指定する場合は、RFC 3339 形式に従う必要があります(例: 2022-02-22T04:00Z)。

GET https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/anomalies?filter=activeBetween("2022-01-01T00:00:00Z", UNBOUNDED)

フィルタされたレスポンス:

レスポンスには、指定した期間内にアクティブだった異常のみが含まれます。

{
  "anomalies": [
    {
      "name": "apps/com.example.app/anomalies/12345"
      "metric_set": "apps/com.example.app/anrRateMetricSet"
      "timeline_spec": {
        "aggregation_period": "DAILY"
        "start_time": {
          "year": 2022
          "month": 1
          "day": 23
          "time_zone": {
            "id": "America/Los_Angeles"
          }
        }
        "end_time": {
          "year": 2022
          "month": 1
          "day": 23
          "time_zone": {
            "id": "America/Los_Angeles"
          }
        }
      }
      "metric": {
        "metric": "anrRate",
        "decimal_value": {
          "value": "3.1415926535"
        }
      }
    },
  ]
}

利用可能な指標

現在、すべての指標と指標セットが異常検出をサポートしているわけではありません。現在サポートされている指標は次のとおりです。

指標セット サポートされる指標
vitals.anrrate anrRate
vitals.crashrate CrashRate
vitals.excessivewakeuprate 過度の WakeupRate
vitals.stuckbackgroundwakelockrate StickBgWakelockRate