Private Cloud के सभी ग्राहकों को, एपीआई प्रॉक्सी ट्रैफ़िक से जुड़े Apigee के आंकड़े सबमिट करने होंगे. Apigee का सुझाव है कि ग्राहक उस जानकारी को दिन में एक बार अपलोड करें. इसके लिए, आपको क्रॉन जॉब बनाना होगा.
आपको अपने प्रोडक्शन एपीआई डिप्लॉयमेंट के लिए, डेटा सबमिट करना होगा. हालांकि, डेवलपमेंट या टेस्टिंग डिप्लॉयमेंट में चल रहे एपीआई के लिए डेटा सबमिट नहीं करना होगा. ज़्यादातर Edge इंस्टॉलेशन में, आपको अपने प्रोडक्शन एपीआई के लिए खास संगठन या एनवायरमेंट तय करने होंगे. आपने जो डेटा सबमिट किया है वह सिर्फ़ उन प्रोडक्शन संगठनों और एनवायरमेंट के लिए है.
इस डेटा को अपलोड करने में मदद करने के लिए, Apigee, apigee-analytics-collector
कमांड लाइन सुविधा का बीटा वर्शन उपलब्ध कराता है. यह सुविधा, एपीआई कॉल वॉल्यूम की रिपोर्ट को वापस Apigee को भेजती है. Private Cloud को इंस्टॉल करने के लिए,
हर किनारे इस सुविधा का इस्तेमाल कर सकता है. इससे, ट्रैफ़िक का डेटा
Apigee को भेजा जा सकता है और उसकी रिपोर्ट की जा सकती है.
ज़रूरी है: डेटा अपलोड करने से पहले Apigee सहायता से संपर्क करें
Apigee में डेटा अपलोड करने से पहले, आपको शामिल होने की प्रोसेस पूरी करने के लिए, Apigee Edge की सहायता टीम से संपर्क करना होगा.
apigee-analytics-कलेक्टर इंस्टॉल करें
apigee-analytics-collector
यूटिलिटी एक आरपीएम है. इसे apigee-service
यूटिलिटी का इस्तेमाल करके इंस्टॉल किया जाता है.
कहां इंस्टॉल करें
जिस नोड पर apigee-analytics-collector
यूटिलिटी को इंस्टॉल किया जाता है वह कोई भी ऐसा नोड हो सकता है जो Edge मैनेजमेंट सर्वर पर Edge मैनेजमेंट एपीआई को ऐक्सेस कर सके. इसे सीधे मैनेजमेंट सर्वर, Edge इंस्टॉलेशन के दूसरे नोड पर या अलग नोड पर इंस्टॉल किया जा सकता है, बशर्ते वह नोड मैनेजमेंट सर्वर को एपीआई अनुरोध भेज सकता हो.
इंटरनेट ऐक्सेस करने से जुड़ी ज़रूरी शर्तें
बाहरी इंटरनेट ऐक्सेस करने वाली मशीन पर
apigee-analytics-collector
यूटिलिटी इंस्टॉल करें. इसके बाद, apigee-analytics-collector
यूटिलिटी
सीधे Apigee पर डेटा अपलोड कर सकती है.
अगर कोई नोड नहीं है जो Edge मैनेजमेंट सर्वर पर Edge मैनेजमेंट एपीआई और बाहरी इंटरनेट, दोनों को ऐक्सेस कर सकता है, तो ट्रैफ़िक डेटा को अपने डिवाइस पर सेव करने के लिए, Edge मैनेजमेंट एपीआई का इस्तेमाल किया जा सकता है. इसके बाद, आपको डेटा को इंटरनेट ऐक्सेस वाली किसी मशीन पर ट्रांसफ़र करना होगा, ताकि
Apigee पर डेटा अपलोड किया जा सके. इस स्थिति में, आपको apigee-analytics-collector
इस्तेमाल करने की ज़रूरत नहीं है. ज़्यादा जानकारी के लिए,
Apigee पर मैन्युअल रूप से
डेटा अपलोड करना देखें.
इंस्टॉल करना
apigee-analytics-collector
सुविधा को इंस्टॉल करने के लिए, नीचे दिए गए निर्देश का इस्तेमाल करें. आरपीएम फ़ाइल इंस्टॉल किए जाने की वजह से, यह निर्देश, रूट उपयोगकर्ता या ऐसे उपयोगकर्ता को चलाना चाहिए जिसके पास सूडो का पूरा ऐक्सेस हो. पूरे सूडो ऐक्सेस के लिए, इसका मतलब है कि उपयोगकर्ता के पास रूट की तरह ही कार्रवाइयां करने के लिए
sudo का ऐक्सेस है.
/opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector install
apigee-analytics-कलेक्टर चल रहा है
इस सेक्शन में apigee-analytics-collector
यूटिलिटी चलाने का तरीका बताया गया है.
apigee-analytics-collector चलाने के लिए उपयोगकर्ता को कॉन्फ़िगर करना
आपको apigee-analytics-collector
को नॉन-रूट
उपयोगकर्ता के तौर पर चलाना होगा. इस उपयोगकर्ता के पास "apigee" उपयोगकर्ता के लिए पूरा sudo ऐक्सेस होना चाहिए.
उपयोगकर्ता को "apigee" उपयोगकर्ता का पूरा sudo ऐक्सेस मिले, यह कॉन्फ़िगर करने के लिए, "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
: आपके मैनेजमेंट सर्वर पर मौजूद Edge API का बेस यूआरएल. यह यूआरएल आम तौर पर इस तरह का होता है:http://ms_IP:8080/v1
जहां ms_IP, आईपी पता या मैनेजमेंट सर्वर है और 8080 वह पोर्ट है जिसे Edge API इस्तेमाल करता है. अगर आपने EDGE API के लिए डीएनएस एंट्री बनाई है, तो यूआरएल इस फ़ॉर्मैट में होगा:
http://ms_DNS/v1
अगर आप Edge management API पर TLS को चालू करते हैं, तो यह इस तरह से होता है:
https://ms_IP:8080/v1 https://ms_DNS/v1
apigee_mgmt_api_email
: उस खाते का ईमेल पता जिसके पास Edge/stats
एपीआई का ऐक्सेस है. आम तौर पर यह Edge सिस्टम के एडमिन का ईमेल होगा या आपके प्रोडक्शन संगठनों के लिए संगठन के एडमिन का ईमेल होगा.apigee_mgmt_api_password
:apigee_mgmt_api_email
में बताए गए खाते के लिए Edge पासवर्ड.apigee_analytics_client_id
और apigee_analytics_secret: Apigee पर डेटा अपलोड करने के लिए आपके क्रेडेंशियल.apigee_analytics_client_id
औरapigee_analytics_secret
पाने के लिए, कृपया Apigee Edge की सहायता टीम की मदद से एक टिकट सबमिट करें.
आप ये निर्देश दे सकते हैं
Edge इंस्टॉलेशन में सभी संगठनों और एनवायरमेंट के ट्रैफ़िक डेटा को वापस पाने और उस डेटा को Apigee पर अपलोड करने के लिए, नीचे एक कमांड दिया गया है. ध्यान दें कि apigee-analytics-collector
निर्देश
चलाने के लिए, apigee-service
का इस्तेमाल
कैसे किया जाता है:
/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 पर अपलोड
किए गए डेटा को हटा देता है. इसके बाद, Apigee को डेटा भेजने के लिए, -S
विकल्प के बिना
कमांड को फिर से चलाया जा सकता है.
-S
विकल्प का इस्तेमाल करने की एक वजह यह है कि आपको अलग-अलग तरह का डेटा स्थानीय तौर पर दिखाया जा सकता है. Apigee को सिर्फ़ एपीआई ट्रैफ़िक का डेटा अपलोड करने की ज़रूरत होती है. हालांकि, -D
विकल्प की मदद से एपीआई प्रॉडक्ट, डेवलपर, ऐप्लिकेशन या एपीआई प्रॉक्सी का डेटा दिखाया जा सकता है. नीचे दिए गए उदाहरण में, डेवलपर डेटा को स्थानीय तौर पर दिखाने के लिए, -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
विकल्प शामिल करें. साथ ही, apigee-analytics-collector
से जनरेट किए गए कर्ल कमांड देखने के लिए, -R
विकल्प शामिल करें:
/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 |
Edge मैनेजमेंट एपीआई का यूआरएल. |
-u, --apigee_mgmt_api_email apigee_mgmt_api_email |
उस खाते का ईमेल पता जिसके पास EDGE |
-p, --apigee_mgmt_api_password apigee_mgmt_api_password |
EDGE मैनेजमेंट एपीआई के ईमेल खाते से जुड़ा पासवर्ड, जिसे
|
-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
|
आउटपुट को Apigee पर अपलोड करने के बजाय, टर्मिनल (stdout) में लिखें. |
-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 मैनेजमेंट एपीआई का इस्तेमाल करें. इसके बाद, इंटरनेट ऐक्सेस वाली
मशीन से Apigee पर
उसे अपलोड करने के लिए, curl
कमांड का
इस्तेमाल करें. आपको यह तरीका अपने 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 के मैसेज की गिनती वाले एपीआई का इस्तेमाल करता है. इस निर्देश में:
- apigee_mgmt_api_email:apigee_mgmt_api_password उस खाते के ईमेल पते के बारे में बताता है जिसके पास Edge /stats एपीआई का ऐक्सेस होता है.
- ms_IP, Edge मैनेजमेंट सर्वर का आईपी पता या डीएनएस नाम है.
- org_name और env_name, संगठन और एनवायरमेंट के बारे में बताते हैं.
- apiproxy ऐसा डाइमेंशन है जो एपीआई प्रॉक्सी के हिसाब से मेट्रिक को ग्रुप करता है.
MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&timeUnit=hour
वह समयसीमा है जिसे इकट्ठा करने के लिए, मेट्रिक की समय की इकाइयों में बांटा गया है. ध्यान दें किcurl
निर्देश, समयसीमा में स्पेस के लिए, हेक्स कोड%20
का इस्तेमाल करता है.
उदाहरण के लिए, 24 घंटे में हर घंटे एपीआई प्रॉक्सी मैसेज की संख्या इकट्ठा करने के लिए, नीचे दिए गए एपीआई कॉल का इस्तेमाल करें.
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
में यूआरएल के कोड में बदले गए वर्ण शामिल होते हैं.)
आपको फ़ॉर्म में जवाब दिखेगा:
{ "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 से मिला डेटा अपलोड करने के लिए, apigee_analytics_client_id:apigee_analytics_secret अपने क्रेडेंशियल तय करता है.
- org_name, संगठन का नाम बताता है.
- "environments"... में उस
curl
निर्देश के नतीजे शामिल हैं जिसका इस्तेमाल आपने ऊपर दिए गए आंकड़े इकट्ठा करने के लिए किया था.