כל לקוחות Edge for Private Cloud נדרשים לשלוח ל-Apigee נתונים סטטיסטיים לגבי תעבורת הנתונים בשרת proxy ל-API. Apigee ממליצה ללקוחות להעלות את המידע הזה פעם ביום, כנראה על ידי יצירת משימת cron.
עליכם לשלוח את הנתונים עבור פריסות של ממשקי API בסביבת ייצור, אבל לא עבור ממשקי API בפריסות של פיתוח או בדיקה. ברוב ההתקנות של Edge תגדירו ארגונים או סביבות ספציפיים לממשקי ה-API של סביבת הייצור. הנתונים שאתם שולחים מיועדים רק לסביבות ולארגונים בסביבת הייצור.
כדי לעזור בהעלאת הנתונים האלה, Apigee מספקת את גרסת הבטא של כלי שורת הפקודה apigee-analytics-collector
. כלי השירות הזה שולח את דוח נפח הקריאות של ה-API חזרה ל-Apigee. כל Edge להתקנה של ענן פרטי יכול להשתמש בכלי השירות הזה כדי לאחזר נתוני תעבורת נתונים ולדווח עליהם ל-Apigee.
פעולה נדרשת: יש לפנות לתמיכה של Apigee לפני העלאת הנתונים
כדי להעלות נתונים ל-Apigee, יש ליצור קשר עם התמיכה של Apigee Edge כדי להשלים את תהליך ההצטרפות.
התקנה של apigee-analytics-collector
הכלי apigee-analytics-collector
הוא RPM שמתקינים באמצעות כלי השירות apigee-service
.
איפה להתקין
הצומת שבו מתקינים את כלי השירות apigee-analytics-collector
יכול להיות כל צומת שיכול לגשת לממשק ה-API לניהול Edge בשרת הניהול של Edge. אפשר להתקין אותו ישירות בשרת הניהול, בצומת אחר של התקנת Edge או בצומת נפרד, כל עוד הצומת יכול לשלוח בקשות API לשרת הניהול.
דרישות גישה לאינטרנט
צריך להתקין את כלי השירות apigee-analytics-collector
במחשב עם גישה חיצונית לאינטרנט. לאחר מכן, תוכנת השירות apigee-analytics-collector
יכולה להעלות נתונים ישירות ל-Apigee.
אם אין צומת עם גישה ל-Edge Management API בשרת הניהול של Edge וגם גישה לאינטרנט החיצוני, אפשר להשתמש ב-Edge Management API כדי לשמור את נתוני התעבורה באופן מקומי. לאחר מכן צריך להעביר את הנתונים למחשב עם גישה לאינטרנט להעלאה אל
Apigee. בתרחיש הזה, אין צורך להשתמש בכלי העזר apigee-analytics-collector
. מידע נוסף זמין במאמר העלאה ידנית של נתונים ל-Apigee.
התקנה
השתמש בפקודה הבאה כדי להתקין את כלי השירות apigee-analytics-collector
. מכיוון
שמתקינים קובץ RPM, צריך להריץ את הפקודה הזו על ידי משתמש השורש או משתמש עם גישת sudo מלאה. לגישת sudo מלאה, פירוש הדבר שלמשתמש יש גישת sudo לביצוע אותן פעולות כמו של הרמה הבסיסית (root).
/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 או כאשר שרת הניהול 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 Edge כדי לרכוש את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 comma-separated list of items
-x, --exclude_orgs comma-separated list of items
-n, --include_envs comma-separated list of items
-e, --exclude_envs comma-separated list of items
לדוגמה, כדי לציין רק את הארגונים והסביבות בסביבת הייצור, משתמשים באפשרויות -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
בדוגמה הזו, אוספים נתונים רק מסביבת הייצור של 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, מפתחים, אפליקציות או שרתי proxy של 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
כדי לקבל
פלט מילולי ואת האפשרות -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, --help |
מידע על השימוש בפלט |
-D, --dimension dimension |
מאפיין התנועה שרוצים לאסוף. הערכים החוקיים כוללים:
|
-d, --days days
|
מספר הימים האחרונים של נתונים לאיסוף, החל מהתאריך הנוכחי. ברירת המחדל היא 3. אם מציינים |
-m, --apigee_mgmt_api_uri apigee_mgmt_api_uri |
כתובת ה-URL של Edge Management API. |
-u, --apigee_mgmt_api_email apigee_mgmt_api_email |
כתובת האימייל של חשבון עם גישה לממשקי API של |
-p, --apigee_mgmt_api_password apigee_mgmt_api_password |
הסיסמה המשויכת לחשבון האימייל ב-Edge Management API שצוינה על ידי
|
-i, --include_orgs items
|
רשימה מופרדת בפסיקים של ארגונים שיש לכלול בפלט. |
-x, --exclude_orgs items
|
רשימה מופרדת בפסיקים של ארגונים שצריך להחריג מהפלט. |
-n, --include_envs items
|
רשימה מופרדת בפסיקים של סביבות שיש לכלול בפלט. |
-e, --exclude_envs items
|
רשימה של סביבות שצריך לכלול מהפלט, שמופרדות בפסיקים. |
-o, --output path
|
הנתיב ושם הקובץ לשמירת הפלט. |
-s, --time_range_start time_range_start
|
טווח הזמן להתחלת שאילתה על הנתונים הסטטיסטיים של התנועה, בפורמט: "MM/DD/YYYY HH:MM". אם מציינים |
-z, --time_range_end time_range_end
|
תאריך הסיום של טווח הזמן לשליחת שאילתות לגבי נתונים סטטיסטיים של תנועה, בפורמט: "04/01/2016 24:00". אם מציינים |
-t, --time_unit time_unit
|
יחידת הזמן לנתוני תנועה. ערך ברירת המחדל הוא
אם מגדירים את |
-S, --standard_output
|
כותבים את הפלט בטרמינל (stdout), במקום להעלות אותו ל-Apigee. |
-c, --apigee_analytics_client_id apigee_analytics_client_id
|
המזהה שלך להעלאת נתונים ל-Apigee. כדי לקבל כרטיס תמיכה, יש לשלוח פנייה דרך התמיכה של Apigee Edge. |
-r, --apigee_analytics_secret apigee_analytics_secret
|
הסוד שלך להעלאת נתונים ל-Apigee. כדי לקבל כרטיס תמיכה, יש לשלוח פנייה דרך התמיכה של Apigee Edge. |
-R, --include_curl_commands
|
יש לכלול את פקודות |
-v, --verbose
|
הצגת פלט מילולי. |
העלאה ידנית של נתונים ל-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"
פקודה זו משתמשת בממשק ה-API של Edge Get API לספירת הודעות. בפקודה זו:
- השדה apigee_mgmt_api_email:apigee_mgmt_api_password מציין את כתובת האימייל של חשבון עם גישה לממשקי API של Edge /stats.
- ms_IP זוהי כתובת ה-IP או שם ה-DNS של שרת הניהול של Edge.
- המדיניות org_name ו-env_name מציינות את הארגון והסביבה.
- apiproxy הוא המבנה שמקבץ מדדים לפי שרתי proxy של API.
MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour
מציין את טווח הזמן חלקי יחידות הזמן של המדדים שצריך לאסוף. שימו לב שהפקודהcurl
משתמשת בקוד ההקסדצימלי%20
עבור רווחים בטווח הזמן.
לדוגמה, כדי לאסוף ספירות של הודעות proxy ל-API שעה אחר שעה בתקופה של 24 שעות, משתמשים ב קריאה הבאה ל-API.
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&timeUnit=hour"
(לתשומת ליבכם: timeRange
מכיל תווים מקודדים של כתובות URL).
אמורה להופיע תשובה בטופס:
{ "environments" : [ { "dimensions" : [ { "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" } ], "name" : "prod" } ], "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
שבה השתמשת כדי לאסוף נתונים סטטיסטיים למעלה.