Google Play Developer Reporting API به شما امکان می دهد ناهنجاری های شناسایی شده در مجموعه های متریک را بازیابی کنید. هر بار که مقدار متریک از محدوده مورد انتظار متریک فراتر می رود، بر اساس مقادیر 28 روز قبلی برای همان متریک، یک ناهنجاری ایجاد می شود. ناهنجاری ها برای روزهای متوالی در یک نتیجه ناهنجاری واحد ادغام می شوند.
اگر افزایش غیرعادی در مقدار یک متریک به اندازه کافی ادامه یابد، مدل تشخیص مقادیر مورد انتظار را تطبیق داده و تا زمانی که نقاط داده بعدی دیگر غیرعادی در نظر گرفته نشوند، آن را گسترش میدهد.
ناهنجاری ها را می توان با روش 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 | نرخ خرابی |
vitals.excessivewakeuprate | نرخ بیداری بیش از حد |
vitals.stuckbackgroundwakelockrate | stuckBgWakelockRate |