การค้นหาชุดเมตริก

หลังจากตั้งค่าทุกอย่างแล้ว คุณจะส่งคำขอไปยัง Google Play Developer Reporting API เพื่อดึงข้อมูล เมตาดาต้าเกี่ยวกับชุดเมตริกและค้นหาเมตริกของชุดเมตริกเหล่านั้นได้

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีส่งคำขออย่างง่าย 2-3 รายการ เช่น วิธีการด้านล่างจะแสดงวิธีดึงข้อมูลเมตริกต่างๆ ของแอป มีพารามิเตอร์การค้นหาที่แตกต่างกันเล็กน้อยซึ่งใช้เพื่อจำกัดการค้นหาได้

การเรียกข้อมูลเมตาของชุดเมตริก

ตัวอย่างต่อไปนี้ดึงข้อมูลเมตาสำหรับชุดเมตริกอัตราการขัดข้องที่ตั้งค่าไว้สำหรับแอปพลิเคชันสมมติ com.example.app

คำขออย่างง่าย

คำขอ HTTP GET นี้ระบุพารามิเตอร์ชื่อแอปพลิเคชันและแสดงผล แหล่งข้อมูลเมตริกแบบเต็มที่เชื่อมโยงกับแอปพลิเคชันของคุณ

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

การตอบกลับข้อมูลเมตริก

คำตอบจะมีช่องต่อไปนี้ที่เกี่ยวข้องกับชุดเมตริก

{
  "freshness_info": {
    "freshness": [
      "aggregation_period": "DAILY"
      "latest_end_time": { year: "2021" month: "7" day: "22" time_zone: "America/Los_Angeles" }
    ]
  }
}

การใช้ฟีเจอร์การค้นหา

คำขอ HTTP POST ต่อไปนี้สำหรับทรัพยากรเดียวกันนี้ใช้ปลายทาง query เพื่อดึงข้อมูลที่เฉพาะเจาะจงจากภายในชุดเมตริก

POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query

ในเนื้อหาคำขอ ให้ส่งตัวเลือกการค้นหาเพื่อดึงข้อมูลเมตริกตามเกณฑ์ที่เฉพาะเจาะจง

{
  "timeline_spec": {
    "aggregation_period": "DAILY"
    "start_time": { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
    "end_time": { year: "2021" month: "7" day: "3" time_zone: "America/Los_Angeles" }
   }
  "dimensions": ["apiLevel"]
  "metrics": ["errorReportCount", "distinctUsers"]
  "page_size": "10"
}

ตัวอย่างระดับคอลเล็กชันมีดังนี้

ช่อง
timelineSpec

object (TimelineSpec)

การระบุพารามิเตอร์การรวบรวมไทม์ไลน์ โปรดดูเอกสารประกอบของ ชุดเมตริกแต่ละชุดเพื่อดูรายการระยะเวลาการรวบรวมข้อมูลที่รองรับ

dimensions[]

string

มิติข้อมูลที่จะใช้แบ่งเมตริก โปรดดูเอกสารประกอบของชุดเมตริกแต่ละชุด เพื่อดูรายการมิติข้อมูลที่รองรับ

metrics[]

string

เมตริกที่จะรวม

pageSize

integer

ขนาดสูงสุดของข้อมูลที่แสดง

หากไม่ระบุ ระบบจะแสดงผลแถวอย่างมาก 1, 000 แถว ค่าสูงสุดคือ 100,000 และค่าที่สูงกว่า 100,000 จะถูกบังคับให้เป็น 100,000

การจัดการคำตอบ

หลังจากที่เซิร์ฟเวอร์ประมวลผลคำขอที่ถูกต้องซึ่งมีฟิลด์ที่ถูกต้องแล้ว เซิร์ฟเวอร์จะส่งรหัสสถานะ HTTP 200 OK พร้อมกับข้อมูลที่ขอ หากพารามิเตอร์การค้นหา fields มีข้อผิดพลาดหรือใช้ไม่ได้ เซิร์ฟเวอร์จะแสดงรหัสสถานะ HTTP 400 Bad Request พร้อมข้อความแสดงข้อผิดพลาดที่บอกผู้ใช้ว่ามีอะไรผิดพลาดกับการเลือกช่อง (เช่น "Invalid field timeline_spec")

ตัวอย่างการตอบกลับจะแสดงในส่วนแนะนำด้านบน

POST https://playdeveloperreporting.googleapis.com/v1beta1/apps/com.example.app/crashRateMetricSet:query

การตอบกลับจะมีลักษณะดังนี้

200 OK
{
  rows: [
    {
      aggregation_period: "DAILY"
      start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
      dimensions: [{dimension: "apiLevel" int64_value: "20"}]
      metrics: [
        {metric: "errorReportCount" decimal_value: "100"},
        {metric: "distinctUsers" decimal_value: "57"},
      ]
    }, {
      aggregation_period: "DAILY"
      start_time: { year: "2021" month: "7" day: "1" time_zone: "America/Los_Angeles" }
      dimensions: [{dimension: "apiLevel" int64_value: "21"}]
      metrics: [
        {metric: "errorReportCount" decimal_value: "123"},
        {metric: "distinctUsers" decimal_value: "65"},
      ]
    },
    ...
  ]
  next_page_token: "eW91IGhhdmUgdG9vIG11Y2ggZnJlZSB0aW1l"
}

หมายเหตุ: สำหรับ API ที่รองรับพารามิเตอร์การค้นหาสำหรับการแบ่งหน้าข้อมูล (เช่น maxResults และ nextPageToken) ให้ใช้พารามิเตอร์เหล่านั้นเพื่อลดผลลัพธ์ของการค้นหาแต่ละครั้ง ให้อยู่ในขนาดที่จัดการได้