Edge สำหรับ Private Cloud เวอร์ชัน 4.18.01
ลูกค้า Edge สำหรับ Private Cloud ทุกรายจะต้องส่งสถิติเกี่ยวกับการรับส่งข้อมูลพร็อกซีของ API ไปยังสถิติ Apigee Apigee แนะนำให้ลูกค้าอัปโหลดข้อมูลวันละครั้ง โดยอาจสร้างงาน Cron
คุณต้องส่งข้อมูลสำหรับการทำให้ API ที่ใช้งานจริงใช้งานได้ แต่ไม่ใช่สำหรับ API ในการพัฒนาหรือการทดสอบการทำให้ใช้งานได้ ในการติดตั้ง Edge ส่วนใหญ่ คุณจะกำหนดองค์กรหรือสภาพแวดล้อมที่เฉพาะเจาะจงสำหรับ API ที่ใช้งานจริง ข้อมูลที่คุณส่งมีไว้สำหรับองค์กรและสภาพแวดล้อมที่ใช้งานจริงเท่านั้น
Apigee เพื่อช่วยอัปโหลดข้อมูลนี้ โดยมียูทิลิตีบรรทัดคำสั่ง apigee-analytics-collector รุ่นเบต้า ยูทิลิตีนี้จะส่งรายงานปริมาณการเรียก API กลับไปยัง Apigee Edge ทั้งหมดสำหรับการติดตั้ง Private Cloud จะใช้ยูทิลิตีนี้เพื่อเรียกและรายงานข้อมูลการรับส่งข้อมูลไปยัง Apigee ได้
การเข้าถึงข้อมูลที่อัปโหลดโดย apigee-analytics-collector
หลังจากอัปโหลดข้อมูลด้วยยูทิลิตี apigee-analytics-collector คุณจะดูข้อมูลดังกล่าวได้ใน Apigee 360
หากต้องการดูข้อมูล ให้ลงชื่อเข้าสู่ระบบ Apigee 360 แล้วเลือกตัวเลือกการใช้งาน หน้าการใช้งานจะแสดงกราฟการใช้งานและตารางข้อมูลการใช้งานสำหรับองค์กร Edge แต่ละแห่ง
กำลังติดตั้ง apigee-analytics-collector
ยูทิลิตี apigee-analytics-collector คือ RPM ที่คุณติดตั้งโดยใช้ยูทิลิตี apigee-service
ติดตั้งที่ไหน
โหนดที่คุณติดตั้งยูทิลิตี apigee-analytics-collector อาจเป็นโหนดใดก็ได้ที่เข้าถึง Edge Management API ใน Edge Management Server ได้ คุณติดตั้งโดยตรงในเซิร์ฟเวอร์การจัดการ บนโหนดอื่นของการติดตั้ง Edge หรือในโหนดแยกต่างหากได้ ตราบใดที่โหนดนั้นส่งคำขอ API ไปยังเซิร์ฟเวอร์การจัดการได้
ข้อกำหนดในการเข้าถึงอินเทอร์เน็ต
ติดตั้งยูทิลิตี apigee-analytics-collector ในเครื่องที่มีการเข้าถึงอินเทอร์เน็ตภายนอก จากนั้นยูทิลิตี apigee-analytics-collector จะอัปโหลดข้อมูลไปยัง Apigee ได้โดยตรง
หากไม่มีโหนดที่ทั้งมีสิทธิ์เข้าถึง Edge Management API ใน Edge Management Server และเข้าถึงอินเทอร์เน็ตภายนอกได้ คุณจะใช้ Edge Management API เพื่อบันทึกข้อมูลการรับส่งข้อมูลในเครื่องได้ จากนั้นคุณต้องโอนข้อมูลไปยังเครื่องที่เข้าถึงอินเทอร์เน็ตเพื่ออัปโหลดไปยัง Apigee ได้ ในสถานการณ์นี้ คุณไม่จำเป็นต้องใช้ยูทิลิตี apigee-analytics-collector โปรดดูข้อมูลเพิ่มเติมที่หัวข้อการอัปโหลดข้อมูลไปยัง Apigee ด้วยตนเองด้านล่าง
การติดตั้ง
ใช้คำสั่งต่อไปนี้เพื่อติดตั้งยูทิลิตี apigee-analytics-collector เนื่องจากคุณกำลังติดตั้งไฟล์ RPM ผู้ใช้รูทหรือผู้ใช้ที่มีสิทธิ์การเข้าถึง sudo จึงต้องเรียกใช้คำสั่งนี้ สำหรับการเข้าถึง sudo เต็มรูปแบบ หมายความว่าผู้ใช้มีสิทธิ์เข้าถึง sudo เพื่อดำเนินการเช่นเดียวกับรูท
> /opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector install
กำลังเรียกใช้ apigee-analytics-collector
ส่วนนี้จะอธิบายวิธีเรียกใช้ยูทิลิตี apigee-analytics-collector
การกำหนดค่าผู้ใช้ให้เรียกใช้ apigee-analytics-collector
คุณต้องเรียกใช้ apigee-analytics-collector ในฐานะผู้ใช้ที่ไม่ใช่รูท ผู้ใช้รายนี้ต้องมีสิทธิ์เข้าถึง sudo สำหรับผู้ใช้ "apigee" โดยสมบูรณ์
หากต้องการกำหนดค่าผู้ใช้ให้มีสิทธิ์เข้าถึง sudo สำหรับผู้ใช้ "apigee" โดยสมบูรณ์ ให้ใช้คำสั่ง "visudo" เพื่อแก้ไขไฟล์ sudoers เพื่อเพิ่ม:
analyticsUser ALL=(apigee) NOPASSWD: ALL
โดยที่ analyticsUser คือชื่อผู้ใช้ของบุคคลที่เรียกใช้ยูทิลิตี apigee-analytics-collector
หลังจากติดตั้งยูทิลิตี apigee-analytics-collector และกำหนดค่าผู้ใช้แล้ว คุณจะทดสอบยูทิลิตีได้โดยเรียกใช้คำสั่งความช่วยเหลือสำหรับยูทิลิตี apigee-analytics-collector ดังนี้
> /opt/apigee/apigee-service/bin/ apigee-service apigee-analytics-collector export traffic --help
ข้อมูลที่จำเป็นในการเรียกใช้ apigee-analytics-collector
คุณต้องมีข้อมูลต่อไปนี้เพื่อเรียกใช้คำสั่ง apigee-analytics-collector และเพื่อส่งต่อข้อมูลไปยัง Apigee
- apigee_mgmt_api_uri: URL หลักของ Edge API ในเซิร์ฟเวอร์การจัดการ โดยทั่วไป URL นี้จะอยู่ในรูปแบบต่อไปนี้
http://ms_IP:8080/v1
โดยที่ ms_IP คือที่อยู่ IP หรือ Management Server และ 8080 คือพอร์ตที่ Edge API ใช้ หากคุณสร้างรายการ DNS สำหรับ Edge API แล้ว URL จะอยู่ใน รูปแบบ
http://ms_DNS/v1
หากเปิดใช้ TLS ใน Edge Management API ค่าจะอยู่ในรูป
https://ms_IP:8080/v1
https://ms_DNS/v1 - apigee_mgmt_api_email: อีเมลของบัญชีที่มีสิทธิ์เข้าถึง API ของ Edge /stats ซึ่งมักจะเป็นอีเมลของผู้ดูแลระบบ Edge หรืออีเมลของผู้ดูแลระบบองค์กรขององค์กรที่ใช้งานจริง
- apigee_mgmt_api_password: รหัสผ่าน Edge ของบัญชีที่ระบุโดย apigee_mgmt_api_email
- apigee_analytics_client_id และ apigee_analytics_secret: ข้อมูลเข้าสู่ระบบสําหรับการอัปโหลดข้อมูลไปยัง Apigee โปรดส่งตั๋วกับทีมสนับสนุนของ Apigee เพื่อรับ apigee_analytics_client_id และ apigee_analytics_secret
คำสั่งตัวอย่าง
ด้านล่างนี้เป็นคำสั่งตัวอย่างสำหรับเรียกข้อมูลการรับส่งข้อมูลสำหรับองค์กรและสภาพแวดล้อมทั้งหมดในการติดตั้ง Edge แล้วอัปโหลดข้อมูลดังกล่าวไปยัง Apigee โปรดสังเกตวิธีที่คุณใช้ apigee-service เพื่อเรียกใช้คำสั่ง apigee-analytics-collector ดังนี้
> /opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
โปรดทราบว่าคำสั่งมีข้อมูลที่จำเป็นทั้งหมด เช่น apigee_analytics_client_id และ apigee_analytics_secret
คุณจะเห็นผลลัพธ์ในแบบฟอร์ม
[ { "org": "myOrg", "env": "prod", "time_range_start": "08/27/2016 00:00", "time_range_end": "08/30/2016 00:00", "response": [ { "store_org_env_metrics_hourly_v4": 1 } ] }, { "org": "VALIDATE", "env": "test", "time_range_start": "08/27/2016 00:00", "time_range_end": "08/30/2016 00:00", "response": [ { "store_org_env_metrics_hourly_v4": 1 } ] } ]
ใช้ตัวเลือกบรรทัดคำสั่งกับคำสั่งเพื่อควบคุมการดำเนินการ ใช้ตัวเลือกต่อไปนี้เพื่อระบุองค์กรและสภาพแวดล้อมที่จะรวมไว้ในข้อมูลที่สร้างขึ้น
- -i, --include_orgs <รายการที่คั่นด้วยคอมมา>
- -x, --exclude_orgs <รายการที่คั่นด้วยจุลภาค>
- -n, --include_envs <รายการที่คั่นด้วยคอมมา>
- -e, --exclude_envs <รายการที่คั่นด้วยจุลภาค>
ตัวอย่างเช่น หากต้องการระบุเฉพาะองค์กรและสภาพแวดล้อมที่ใช้งานจริง ให้ใช้ตัวเลือก -i (หรือ --include_orgs) และ -n (หรือ --include_envs) ดังนี้
> /opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
ในตัวอย่างนี้ คุณรวบรวมข้อมูลจากสภาพแวดล้อม Pro ของ myOrg เท่านั้น
หากต้องการถ่ายโอนข้อมูลไปยังหน้าจอเพื่อตรวจสอบก่อนที่จะส่งไปยัง Apigee ให้ใช้ตัวเลือก -S ดังนี้
> /opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
ตัวเลือก -S จะยกเว้นการอัปโหลดข้อมูลไปยัง Apigee จากนั้นคุณจะเรียกใช้คำสั่งอีกครั้งได้โดยไม่ต้องใช้ตัวเลือก -S เพื่อส่งข้อมูลไปยัง Apigee
เหตุผลหนึ่งที่ควรใช้ตัวเลือก -S คือเพื่อให้คุณแสดงข้อมูลประเภทต่างๆ ในเครื่องได้ Apigee เพียงแต่คุณต้องอัปโหลดข้อมูลการจราจรของข้อมูล API แต่ตัวเลือก -D จะช่วยให้คุณแสดงข้อมูลเกี่ยวกับผลิตภัณฑ์ API, นักพัฒนาซอฟต์แวร์, แอป หรือพร็อกซี API ได้ ตัวอย่างด้านล่างใช้ตัวเลือก -D และ -S เพื่อแสดงข้อมูลนักพัฒนาซอฟต์แวร์ในเครื่อง
> /opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S -D devs \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
ใส่ตัวเลือก -v เพื่อรับเอาต์พุต Verbose และตัวเลือก -R เพื่อดูคำสั่ง curl ที่สร้างขึ้นโดย apigee-analytics-collector
> /opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector export traffic -i myOrg -n prod -S -R -v \ --apigee_mgmt_api_uri http://192.168.56.103:8080/v1 \ --apigee_mgmt_api_email $ae_username \ --apigee_mgmt_api_password $ae_password \ --apigee_analytics_client_id $apigee_analytics_client_id \ --apigee_analytics_secret $apigee_analytics_secret
ส่วนถัดไปจะมีรายการตัวเลือกบรรทัดคำสั่งทั้งหมด
พารามิเตอร์คำสั่ง
ตารางต่อไปนี้แสดงชุดตัวเลือกที่สมบูรณ์สำหรับยูทิลิตี apigee-analytics-collector
คำสั่ง |
การใช้งาน |
---|---|
-h, --ความช่วยเหลือ |
ข้อมูลการใช้งานเอาต์พุต |
-D, --มิติข้อมูล <dimension> |
มิติข้อมูลการเข้าชมที่จะรวบรวม มิติข้อมูลที่ใช้ได้ ได้แก่ apiproducts, devs, apps, apiproxy (ค่าเริ่มต้น) |
-d, --วัน <days> |
จำนวนวันที่ผ่านมาของข้อมูลที่จะรวบรวม โดยเริ่มตั้งแต่วันที่ปัจจุบัน ค่าเริ่มต้นคือ 3 หากคุณระบุ -d ไม่ต้องระบุ -s และ -z เพื่อตั้งค่าช่วงเวลา |
-m, --apigee_mgmt_api_uri <apigee_mgmt_api_uri> |
URL ไปยัง Edge Management API |
-u, --apigee_mgmt_api_email <apigee_mgmt_api_email> |
อีเมลของบัญชีที่มีสิทธิ์เข้าถึง API ของ Edge /stats ซึ่งมักจะเป็นอีเมลของผู้ดูแลระบบ Edge หรืออีเมลของผู้ดูแลระบบองค์กรขององค์กรที่ใช้งานจริง |
-p, --apigee_mgmt_api_password <apigee_mgmt_api_password> |
รหัสผ่านที่เชื่อมโยงกับบัญชีอีเมล Edge Management API ที่ระบุโดย -u |
-i, --include_orgs <items> |
รายการองค์กรที่คั่นด้วยคอมมาที่จะรวมในเอาต์พุต |
-x, --exclude_orgs <items> |
รายการองค์กรที่คั่นด้วยคอมมาที่จะยกเว้นในเอาต์พุต |
-n, --include_envs <items> |
รายการสภาพแวดล้อมที่คั่นด้วยคอมมาที่จะรวมในเอาต์พุต |
-e, --exclude_envs <items> |
รายการสภาพแวดล้อมที่คั่นด้วยจุลภาคที่จะรวมจากเอาต์พุต |
-o, --เอาต์พุต <path> |
เส้นทางและชื่อไฟล์เพื่อบันทึกเอาต์พุต |
-s, --time_range_start <time_range_start> |
ช่วงเวลาที่จะเริ่มต้นการค้นหาสถิติการเข้าชม ซึ่งอยู่ในรูปแบบ "03/01/2016 00:00" หากคุณระบุ -d ไม่ต้องระบุ -s และ -z เพื่อตั้งค่าช่วงเวลา |
-z, --time_range_end <time_range_end> |
เวลาสิ้นสุดสําหรับการค้นหาสถิติการเข้าชม ซึ่งอยู่ในรูปแบบ "04/01/2016 24:00" หากคุณระบุ -d ไม่ต้องระบุ -s และ -z เพื่อตั้งค่าช่วงเวลา |
-t, --time_unit <time_unit> |
หน่วยเวลาสำหรับข้อมูลการจราจร สัปดาห์เริ่มต้น หน่วยเริ่มต้นตามชั่วโมง หน่วยเวลาที่ใช้ได้: วินาที นาที ชั่วโมง วัน สัปดาห์ |
-S, --มาตรฐาน_เอาต์พุต |
เขียนเอาต์พุตไปยังเทอร์มินัล (stdout) แทนการอัปโหลดไปยัง Apigee |
-c, --apigee_analytics_client_id <apigee_analytics_client_id> |
รหัสสำหรับการอัปโหลดข้อมูลไปยัง Apigee โปรดส่งตั๋วกับทีมสนับสนุนของ Apigee เพื่อรับสิทธิ์ |
-r, --apigee_analytics_secret <apigee_analytics_secret> |
ข้อมูลลับสำหรับการอัปโหลดข้อมูลไปยัง Apigee โปรดส่งตั๋วกับทีมสนับสนุนของ Apigee เพื่อรับสิทธิ์ |
-R, --include_curl_commands |
รวมคำสั่ง cURL ที่สร้างขึ้นในเอาต์พุตเพื่อแก้ไขข้อบกพร่อง |
-v, --รายละเอียด |
แสดงเอาต์พุตที่มีข้อมูลขนาดใหญ่ |
การอัปโหลดข้อมูลไปยัง Apigee ด้วยตนเอง
Apigee ขอแนะนำให้คุณติดตั้งยูทิลิตี apigee-analytics-collector บนเครื่องที่เข้าถึงอินเทอร์เน็ตภายนอกได้ จากนั้นยูทิลิตี apigee-analytics-collector จะอัปโหลดข้อมูลไปยัง Apigee ได้โดยตรง
อย่างไรก็ตาม หากเครื่องไม่มีการเข้าถึงอินเทอร์เน็ตภายนอก ให้ใช้ Edge Management API เพื่อรวบรวมข้อมูลการจราจรของข้อมูล แล้วใช้คำสั่ง cURL เพื่ออัปโหลดข้อมูลไปยัง Apigee จากเครื่องที่มีสิทธิ์เข้าถึงอินเทอร์เน็ต คุณต้องทำขั้นตอนนี้ซ้ำสำหรับองค์กรที่ใช้งานจริงทั้งหมดและสภาพแวดล้อมในการติดตั้ง Edge
ใช้คำสั่ง cURL ต่อไปนี้เพื่อรวบรวมข้อมูลการรับส่งข้อมูลสำหรับองค์กรและสภาพแวดล้อมที่เฉพาะเจาะจงสำหรับช่วงเวลาที่ระบุ
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://<ms_IP>:8080/v1/organizations/{org_name}/environments/{env_name}/stats/apiproxy?select=sum(message_count)&timeRange=MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour"
คำสั่งนี้ใช้ Edge Get API จำนวนข้อความ API คำสั่งนี้
- apigee_mgmt_api_email:apigee_mgmt_api_password ระบุอีเมลของบัญชีที่มีสิทธิ์เข้าถึง API ของ Edge /stats
- <ms_IP> คือที่อยู่ IP หรือชื่อ DNS ของ Edge Management Server
- {org_name} และ {env_name} ระบุองค์กรและสภาพแวดล้อม
- apiproxy คือตัวเลขที่จัดกลุ่มเมตริกตามพร็อกซี API
- MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour ระบุช่วงเวลาโดยแบ่งออกเป็นหน่วยเวลาของเมตริกที่จะรวบรวม โปรดสังเกตว่าคำสั่ง cURL จะใช้รหัสฐานสิบหก
%20
สำหรับช่องว่างในช่วงเวลา
ตัวอย่างเช่น หากต้องการรวบรวมจำนวนข้อความพร็อกซี API แบบชั่วโมงต่อชั่วโมงในช่วงเวลา 24 ชั่วโมง ให้ใช้ การเรียก API การจัดการต่อไปนี้ timeRange มีอักขระที่เข้ารหัส URL
curl -X GET -u apigee_mgmt_api_email:apigee_mgmt_api_password \ "http://192.168.56.103:8080/v1/organizations/myOrg/environments/prod/stats/apiproxy?select=sum(message_count)&timeRange=01%2F01%2F2018%2000%3A00~01%2F02%2F2018%2000%3A00"
คุณควรเห็นการตอบกลับในแบบฟอร์ม:
{ "environments" : [ { "metrics" : [ { "name" : "sum(message_count)", "values": [ { "timestamp": 1514847600000, "value": "35.0" }, { "timestamp": 1514844000000, "value": "19.0" }, { "timestamp": 1514840400000, "value": "58.0" }, { "timestamp": 1514836800000, "value": "28.0" }, { "timestamp": 1514833200000, "value": "29.0" }, { "timestamp": 1514829600000, "value": "33.0" }, { "timestamp": 1514826000000, "value": "26.0" }, { "timestamp": 1514822400000, "value": "57.0" }, { "timestamp": 1514818800000, "value": "41.0" }, { "timestamp": 1514815200000, "value": "27.0" }, { "timestamp": 1514811600000, "value": "47.0" }, { "timestamp": 1514808000000, "value": "66.0" }, { "timestamp": 1514804400000, "value": "50.0" }, { "timestamp": 1514800800000, "value": "41.0" }, { "timestamp": 1514797200000, "value": "49.0" }, { "timestamp": 1514793600000, "value": "35.0" }, { "timestamp": 1514790000000, "value": "89.0" }, { "timestamp": 1514786400000, "value": "42.0" }, { "timestamp": 1514782800000, "value": "47.0" }, { "timestamp": 1514779200000, "value": "21.0" }, { "timestamp": 1514775600000, "value": "27.0" }, { "timestamp": 1514772000000, "value": "20.0" }, { "timestamp": 1514768400000, "value": "12.0" }, { "timestamp": 1514764800000, "value": "7.0" } ] } ], "name" : "proxy1" } ], "metaData" : { "errors" : [ ], "notices" : [ "query served by:53dab80c-e811-4ba6-a3e7-b96f53433baa", "source pg:6b7bab33-e732-405c-a5dd-4782647ce096", "Table used: myorg.prod.agg_api" ] } }
จากนั้น หากต้องการอัปโหลดข้อมูลดังกล่าวไปยัง Apigee จากเครื่องที่เข้าถึงอินเทอร์เน็ตได้ ให้ใช้คำสั่ง cURL ต่อไปนี้
curl -X POST -H 'Content-Type:application/json' \ -u apigee_analytics_client_id:apigee_analytics_secret \ https://nucleus-api-prod.apigee.com/v1/apigee-analytics-cli-api/traffic/orgs/{org_name}/apis -d '{"environments"...}'
ที่ไหน
- apigee_analytics_client_id:apigee_analytics_secret ระบุข้อมูลเข้าสู่ระบบสำหรับการอัปโหลดข้อมูลไปยัง Apigee ซึ่งได้รับจากทีมสนับสนุนของ Apigee
- {org_name} ระบุองค์กร
- {"environments"...} ประกอบด้วยผลลัพธ์ของคำสั่ง cURL ที่คุณใช้รวบรวมสถิติด้านบน