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

Edge for Private Cloud v4.19.01

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

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

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

ज़रूरी है: डेटा अपलोड करने से पहले, Apigee की सहायता टीम से संपर्क करें

Apigee में डेटा अपलोड करने से पहले, ऑनबोर्डिंग की प्रोसेस को पूरा करने के लिए आपको Apigee Edge की सहायता टीम से संपर्क करना होगा.

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

apigee-analytics-collector उपयोगिता एक आरपीएम है, जिसे apigee-service सुविधा का इस्तेमाल करके इंस्टॉल किया जाता है.

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

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

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

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

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

इंस्टॉल करना

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

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

apigee-analytics-collector चल रहा है

इस सेक्शन में, apigee-analytics-collector सुविधा को चलाने का तरीका बताया गया है.

apigee-analytics-collector चलाने के लिए, किसी उपयोगकर्ता को कॉन्फ़िगर करना

आपको apigee-analytics-collector को नॉन-रूट के तौर पर चलाना होगा उपयोगकर्ता. इस उपयोगकर्ता के पास "apigee" का पूरा सूडो ऐक्सेस होना चाहिए उपयोगकर्ता.

किसी उपयोगकर्ता को "apigee" का पूरा सूडो ऐक्सेस पाने के लिए कॉन्फ़िगर करने के लिए उपयोगकर्ता, "visudo" का उपयोग करें CANNOT TRANSLATE जोड़ने के लिए 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: उस खाते का Edge पासवर्ड, जिसे इसने तय किया है apigee_mgmt_api_email.
  • apigee_analytics_client_id और apigee_analytics_secret: Apigee पर डेटा अपलोड करने के लिए आपके क्रेडेंशियल. जानकारी पाने के लिए, कृपया Apigee Edge की सहायता टीम से टिकट सबमिट करें apigee_analytics_client_id और apigee_analytics_secret.

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

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

निर्देश

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

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

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

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

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

-d, --दिन <days>

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

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

-m, --apigee_mgmt_api_uri &lt;apigee_mgmt_api_uri&gt;

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;

यह Edge management API वाले ईमेल खाते से जुड़ा है जिसे -u ने तय किया है.

-i, --include_orgs &lt;items&gt;

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

-x, --excluded_orgs &lt;items&gt;

आउटपुट से बाहर रखने के लिए संगठनों की कॉमा-सेपरेटेड लिस्ट.

-n, --include_envs &lt;items&gt;

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

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

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

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

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

-s, --time_range_start &lt;time_range_start&gt;

ट्रैफ़िक के आंकड़ों की क्वेरी शुरू करने की समय सीमा, फ़ॉर्म में: "03/01/2016 00:00".

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

-z, --time_range_end &lt;time_range_end&gt;

ट्रैफ़िक के आंकड़ों की क्वेरी करने के लिए समय सीमा खत्म, फ़ॉर्म में: "04/01/2016 24:00".

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

-t, --time_unit &lt;time_unit&gt;

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

-एस, --standard_आउटपुट

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

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

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

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

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

-आर, --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 मैसेज की गिनती करने वाले एपीआई का इस्तेमाल करता है. इस निर्देश में:

  • apigee_mgmt_api_email:apigee_mgmt_api_password, Edge /stats API के ऐक्सेस वाले खाते का ईमेल पता.
  • &lt;ms_IP&gt; Edge का आईपी पता या डीएनएस नाम है मैनेजमेंट सर्वर.
  • {org_name} और {org_name} संगठन और पर्यावरण की सुरक्षा करता है.
  • apiप्रॉक्सी वह डाइमेंशन है जिसमें एपीआई प्रॉक्सी के ज़रिए मेट्रिक को ग्रुप किया जाता है.
  • 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&timeUnit=hour"

आपको इस फ़ॉर्म में जवाब दिखेगा:

{
  "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 निर्देश के नतीजे शामिल हैं जो जिनका इस्तेमाल ऊपर दिए आंकड़े इकट्ठा करने में किया जाता था.