एपीआई ट्रैफ़िक डेटा को Apigee में अपलोड करना - बीटा रिलीज़

Edge for Private Cloud v4.18.01

प्राइवेट क्लाउड के ग्राहकों के लिए, सभी Edge को एपीआई के बारे में Apigee के आंकड़े सबमिट करना ज़रूरी है प्रॉक्सी ट्रैफ़िक. Apigee का सुझाव है कि ग्राहक इस जानकारी को दिन में एक बार अपलोड करें. इसके लिए, यह तरीका अपनाया जा सकता है एक क्रॉन जॉब बनाना भी शामिल है.

आपको अपने प्रोडक्शन एपीआई के डिप्लॉयमेंट के लिए डेटा सबमिट करना होगा. हालांकि, डेवलपमेंट में चल रहे एपीआई के लिए नहीं या टेस्टिंग डिप्लॉयमेंट. ज़्यादातर Edge इंस्टॉलेशन में, आपको अपने प्रोडक्शन एपीआई के लिए खास संगठनों या एनवायरमेंट तय करने होंगे. आपने जो डेटा सबमिट किया है वह सिर्फ़ उन प्रोडक्शन संगठनों और एनवायरमेंट के लिए है.

इस डेटा को अपलोड करने में मदद करने के लिए, Apigee apigee-analytics-collector कमांड-लाइन की सुविधा का बीटा वर्शन उपलब्ध कराता है. यह सुविधा, एपीआई कॉल की संख्या की रिपोर्ट को Apigee को वापस भेजती है. निजी क्लाउड इंस्टॉलेशन के लिए, हर Edge इस सुविधा का इस्तेमाल करके, Apigee को ट्रैफ़िक डेटा हासिल कर सकता है और उसकी शिकायत कर सकता है.

इसके ज़रिए अपलोड किए गए डेटा को ऐक्सेस करना apigee-analytics-collector

apigee-analytics-collector की मदद से डेटा अपलोड करने के बाद, उसे Apigee 360 में देखा जा सकता है.

डेटा देखने के लिए, Apigee 360 में लॉग इन करें और फिर इस्तेमाल का विकल्प चुनें. कॉन्टेंट बनाने इस्तेमाल पेज पर, आपके हर कीवर्ड के लिए इस्तेमाल का ग्राफ़ और इस्तेमाल के बारे में डेटा की एक टेबल दिखती है Edge संगठन.

apigee-analytics-collector इंस्टॉल करना

apigee-analytics-collector यूटिलिटी एक आरपीएम है. इसे apigee-service यूटिलिटी का इस्तेमाल करके इंस्टॉल किया जाता है.

कहां इंस्टॉल करें

जिस नोड पर apigee-analytics-collector यूटिलिटी इंस्टॉल की जाती है वह कोई भी हो सकता है नोड जो Edge मैनेजमेंट सर्वर पर Edge management API ऐक्सेस कर सकता है. इसे सीधे तौर पर मैनेजमेंट सर्वर पर, Edge इंस्टॉलेशन के किसी दूसरे नोड पर या किसी अलग नोड पर इंस्टॉल किया जा सकता है. हालांकि, इसके लिए ज़रूरी है कि वह नोड, मैनेजमेंट सर्वर से एपीआई अनुरोध कर सके.

इंटरनेट ऐक्सेस करने के लिए ज़रूरी शर्तें

apigee-analytics-collector टूल को ऐसी मशीन पर इंस्टॉल करें जिस पर इंटरनेट का ऐक्सेस हो. इसके बाद, apigee-analytics-collector टूल, डेटा को सीधे Apigee पर अपलोड कर सकता है.

अगर Edge मैनेजमेंट सर्वर पर Edge management API के दोनों ऐक्सेस वाला कोई नोड मौजूद नहीं है, तो इसके लिए, आपको Edge मैनेजमेंट एपीआई इस्तेमाल करना होगा, ताकि ट्रैफ़िक को बचाया जा सके स्थानीय तौर पर सेव किया जा सकता है. इसके बाद, आपको Apigee पर अपलोड करने के लिए, डेटा को इंटरनेट ऐक्सेस वाली मशीन पर ट्रांसफ़र करना होगा. इस स्थिति में, आपको apigee-analytics-collector सुविधा का इस्तेमाल करने की ज़रूरत नहीं है. ज़्यादा जानकारी के लिए, नीचे Apigee में डेटा को मैन्युअल तरीके से अपलोड करना देखें.

इंस्टॉल करना

apigee-analytics-collector यूटिलिटी इंस्टॉल करने के लिए, नीचे दिए गए निर्देश का इस्तेमाल करें. RPM फ़ाइल इंस्टॉल करने के लिए, यह कमांड रूट उपयोगकर्ता या ऐसे उपयोगकर्ता को चलाना चाहिए जिसके पास sudo का पूरा ऐक्सेस हो. सूडो के पूरे ऐक्सेस के लिए, इसका मतलब है कि उपयोगकर्ता के पास भी वैसा ही काम करने के लिए सूडो ऐक्सेस है संक्रियाओं को रूट की तरह दिखाएं.

> /opt/apigee/apigee-service/bin/apigee-service apigee-analytics-collector install 

apigee-analytics-collector चलाना

इस सेक्शन में, 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 मैनेजमेंट एपीआई पर टीएलएस चालू किया है, तो यह इस फ़ॉर्मैट में होगा:
    https://ms_IP:8080/v1
    https://ms_DNS/v1
  • apigee_mgmt_api_email: उस खाते का ईमेल पता जिसके पास Edge /stats एपीआई. अक्सर ऐसा होता है Edge सिस्टम एडमिन का ईमेल होगा या संगठन के एडमिन का ईमेल होगा किन बातों का ध्यान रखना चाहिए.
  • apigee_mgmt_api_password: उस खाते का Edge पासवर्ड apigee_mgmt_api_email.
  • apigee_analytics_client_id और apigee_analytics_secret: Apigee पर डेटा अपलोड करने के लिए आपके क्रेडेंशियल. apigee_analytics_client_id और apigee_analytics_secret पाने के लिए, कृपया Apigee सहायता के साथ एक टिकट सबमिट करें.

आप ये निर्देश दे सकते हैं

नीचे उदाहरण के तौर पर एक निर्देश दिया गया है, ताकि सभी संगठनों और एनवायरमेंट को इकट्ठा करता है और उस डेटा को 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, --excluded_orgs <आइटम की कॉमा-सेपरेटेड लिस्ट>
  • -n, --include_envs <comma-separated list of items>
  • -e, --excluded_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

इस उदाहरण में, सिर्फ़ इसके प्रोडक्शन एनवायरमेंट से डेटा इकट्ठा किया जाता है 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 विकल्प शामिल करें वर्बोस आउटपुट और -R विकल्प 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 यूटिलिटी के लिए सभी विकल्पों की सूची दी गई है:

Command

इस्तेमाल करना

-एच, --सहायता

आउटपुट के इस्तेमाल की जानकारी

-D, --आयाम &lt;dimension&gt;

इकट्ठा किया जाने वाला ट्रैफ़िक डाइमेंशन. मान्य डाइमेंशन: apiproducts, devs, apps, apiप्रॉक्सी (डिफ़ॉल्ट)

-d, --दिन &lt;days&gt;

इकट्ठा किए जाने वाले डेटा की तारीख, जो मौजूदा तारीख से शुरू होकर पिछले कुछ दिनों तक की होनी चाहिए. कॉन्टेंट बनाने डिफ़ॉल्ट वैल्यू 3 है.

अगर आप -d तय करते हैं, तो ऐसा करें -s और समय सेट करने के लिए -z रेंज.

-m, --apigee_mgmt_api_uri <apigee_mgmt_api_uri>

Edge management API का यूआरएल.

-u, --apigee_mgmt_api_email &lt;apigee_mgmt_api_email&gt;

Edge /stats एपीआई का ऐक्सेस रखने वाले खाते का ईमेल पता. अक्सर यह Edge सिस्टम एडमिन का ईमेल या संगठन के एडमिन का ईमेल के लिए भी कर सकते हैं.

-p, --apigee_mgmt_api_password &lt;apigee_mgmt_api_password&gt;

-u से तय किए गए Edge Management API ईमेल खाते से जुड़ा पासवर्ड.

-i, --include_orgs <items>

आउटपुट में शामिल करने के लिए, कॉमा लगाकर अलग किए गए संगठनों की सूची.

-x, --exclude_orgs <items>

आउटपुट से बाहर रखने के लिए, कॉमा लगाकर अलग की गई संगठनों की सूची.

-n, --include_envs <items>

आउटपुट में शामिल करने के लिए, एनवायरमेंट की कॉमा-सेपरेटेड लिस्ट.

-e, --excluded_envs &lt;items&gt;

आउटपुट से शामिल करने के लिए एनवायरमेंट की कॉमा-सेपरेटेड लिस्ट.

-o, --आउटपुट &lt;path&gt;

आउटपुट सेव करने के लिए पाथ और फ़ाइल का नाम.

-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 &lt;time_unit&gt;

ट्रैफ़िक डेटा के लिए समय की इकाई. डिफ़ॉल्ट हफ़्ता. घंटे के हिसाब से डिफ़ॉल्ट यूनिट. समय की मान्य इकाइयां: सेकंड, मिनट, घंटा, दिन, हफ़्ता.

-S, --standard_आउटपुट

आउटपुट को Apigee पर अपलोड करने के बजाय, टर्मिनल (stdout) में लिखें.

-c, --apigee_analytics_client_id &lt;apigee_analytics_client_id&gt;

Apigee पर डेटा अपलोड करने के लिए आपका आईडी. इसे पाने के लिए, कृपया Apigee की सहायता टीम के पास टिकट सबमिट करें.

-r, --apigee_analytics_secret &lt;apigee_analytics_secret&gt;

Apigee पर डेटा अपलोड करने के लिए आपका पासवर्ड. कृपया Apigee सहायता से टिकट सबमिट करें, ताकि पाएं.

-R, --include_curl_commands

डीबग करने के लिए, आउटपुट में जनरेट किए गए cURL कमांड शामिल करें.

-v, --वर्बज़

ज़्यादा शब्दों में आउटपुट दिखाएं.

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 API के ऐक्सेस वाले खाते का ईमेल पता.
  • <ms_IP>, Edge मैनेजमेंट सर्वर का आईपी पता या डीएनएस नेम है.
  • {org_name} और {org_name} संगठन और पर्यावरण की सुरक्षा करता है.
  • apiproxy वह डाइमेंशन है जिसमें एपीआई प्रॉक्सी के ज़रिए मेट्रिक को ग्रुप किया जाता है.
  • MM/DD/YYYY%20HH:MM~MM/DD/YYYY%20HH:MM&amp;timeUnit=hour इकट्ठा करने के लिए मेट्रिक की समय इकाइयों में विभाजित समय सीमा को. ध्यान दें कि cURL आदेश समयसीमा में मौजूद स्पेस के लिए, हेक्स कोड %20 का इस्तेमाल किया जाता है.

उदाहरण के लिए, 24 घंटे की अवधि में API प्रॉक्सी मैसेज की संख्या घंटे दर घंटे इकट्ठा करने के लिए, का अनुसरण किया जा रहा है मैनेजमेंट एपीआई कॉल भी शामिल है. TimeRange में यूआरएल-एन्कोडेड वर्ण शामिल होते हैं.

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} से संगठन का पता चलता है.
  • {&quot;environments&quot;...} में cURL कमांड के नतीजे शामिल होते हैं, जो जिनका इस्तेमाल ऊपर दिए आंकड़े इकट्ठा करने में किया जाता था.