ส่งออก/นําเข้าการกําหนดรายงานที่กําหนดเอง

คุณกำลังดูเอกสารประกอบของ Apigee Edge
ไปที่ เอกสารประกอบของ Apigee X
info

คุณสามารถใช้ Edge API เพื่อส่งออกและนำเข้ารายงานที่กำหนดเองจากสภาพแวดล้อมขององค์กรหนึ่งไปยังอีกสภาพแวดล้อมหนึ่งได้ เทคนิคที่มีประโยชน์นี้ช่วยให้คุณนำการออกแบบรายงานที่กำหนดเองที่ชอบกลับมาใช้ซ้ำในองค์กรและ สภาพแวดล้อมต่างๆ ได้ นอกจากนี้ คุณยังจัดเก็บการออกแบบ (ไฟล์ข้อความ JSON อย่างง่าย) ไว้ใน CSV ได้ด้วย

ขั้นแรก ให้ใช้ List analytics report definitions API เพื่อรับ UUID ของรายงานทั้งหมดที่กำหนดไว้สำหรับองค์กร

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/org-name/reports" \
  -u email:password 

สำหรับรายงานแต่ละรายการ เอาต์พุตจะมีชื่อที่แสดง (ชื่อที่คุณเห็นใน UI ของ Edge) และ UUID ของรายงาน

{
  "qualifier": [
    {
      "displayName": "My Report 1",
      "name": "cb7cd16a-44c4-0bc83c3b9c92"
    },
    {
      "displayName": "My Other Report",
      "name": "a7e3fc4e-992a2ffc0e3d49d"
    },
    ...
  ]
}

ตอนนี้ให้ใช้ UUID ของรายงานที่ต้องการเพื่อดึงข้อมูลคำจำกัดความของรายงานโดยเรียก Get an analytics report definition API ในตัวอย่างนี้ คุณจะได้รับคำจำกัดความของรายงานที่ชื่อ "My Report 1"

curl -X GET "https://api.enterprise.apigee.com/v1/organizations/org-name/reports/cb7cd16a-44c4-0bc83c3b9c92" \
  -u email:password 

เอาต์พุตจะมีคำจำกัดความของรายงานดังนี้

{
  "chartType": "column",
  "comments": [],
  "createdAt": 1506922614000,
  "createdBy": "11.111.121.57",
  "dimensions": [
    "apiproxy",
    "proxy_pathsuffix",
    "proxy_client_ip"
  ],
  "displayName": "My Report 1",
  "environment": "prod",
  "lastModifiedAt": 1512435450000,
  "lastModifiedBy": "111.111.121.57",
  "lastViewedAt": 1512435450000,
  "metrics": [
    {
      "function": "avg",
      "name": "response_size"
    },
    {
      "function": "avg",
      "name": "request_size"
    }
  ],
  "name": "cb7cd16a-44c4-0bc83c3b9c92",
  "organization": "myOrg",
  "properties": [
    {
      "property": "__ui__",
      "value": [
        {
          "name": "description"
        },
        {
          "name": "accuracy"
        }
      ]
    }
  ],
  "sortbyCols": [],
  "tags": [],
  "timeUnit": "hour"
}

คัดลอกเอาต์พุต JSON และอัปเดตฟิลด์ environment และ organization ตามความจำเป็นสำหรับปลายทาง แล้วนำเข้าคำจำกัดความโดยใช้ Create an analytics report definition API

ตัวอย่างเช่น หากต้องการนำเข้าคำจำกัดความลงในสภาพแวดล้อม test ขององค์กรที่ชื่อ destOrg ให้ทำดังนี้

curl -X POST -H "Content-Type: application/json" "https://api.enterprise.apigee.com/v1/organizations/destOrg/reports" \
-d "{
  "chartType": "column",
  "comments": [],
  "createdAt": 1506922614000,
  "createdBy": "11.111.121.57",
  "dimensions": [
    "apiproxy",
    "proxy_pathsuffix",
    "proxy_client_ip"
  ],
  "displayName": "My Report 1",
  "environment": "test",
  "lastModifiedAt": 1512435450000,
  "lastModifiedBy": "111.111.121.57",
  "lastViewedAt": 1512435450000,
  "metrics": [
    {
      "function": "avg",
      "name": "response_size"
    },
    {
      "function": "avg",
      "name": "request_size"
    }
  ],
  "name": "cb7cd16a-44c4-0bc83c3b9c92",
  "organization": "destOrg",
  "properties": [
    {
      "property": "__ui__",
      "value": [
        {
          "name": "description"
        },
        {
          "name": "accuracy"
        }
      ]
    }
  ],
  "sortbyCols": [],
  "tags": [],
  "timeUnit": "hour"
}" \
-u email:password 

ตอนนี้คุณควรเห็นรายงานใน UI ของ Edge สำหรับองค์กร