आपको Apigee Edge का दस्तावेज़ दिख रहा है.
Apigee X के दस्तावेज़ पर जाएं. info
वर्शन 1.2.0
Stackdriver Logging लॉग में एंट्री लिखता है.
इस कॉन्टेंट में, इस एक्सटेंशन को कॉन्फ़िगर करने और इस्तेमाल करने के बारे में जानकारी दी गई है.
ज़रूरी शर्तें
एपीआई प्रॉक्सी से इस एक्सटेंशन का इस्तेमाल करने से पहले, आपको ये काम करने होंगे:
आईएएम में, प्रोजेक्ट के उस सदस्य को Logging > Logs Writer की अनुमति असाइन करें जो Stackdriver Logging सिस्टम में आपके एक्सटेंशन का प्रतिनिधित्व करेगा. भूमिकाएं असाइन करने के निर्देशों के लिए, किसी सेवा खाते को चुनिंदा संसाधनों के लिए भूमिकाएं असाइन करना लेख पढ़ें. लॉगिंग की भूमिकाओं के बारे में ज़्यादा जानने के लिए, ऐक्सेस कंट्रोल गाइड देखें.
GCP Console का इस्तेमाल करके, सेवा खाते के लिए कुंजी जनरेट करें.
कॉन्फ़िगरेशन रेफ़रंस का इस्तेमाल करके एक्सटेंशन को जोड़ने और कॉन्फ़िगर करने के दौरान, जनरेट हुई कुंजी वाली JSON फ़ाइल के कॉन्टेंट का इस्तेमाल करें.
Stackdriver Logging के बारे में जानकारी
Stackdriver Logging, Google Cloud Platform (GCP) में Stackdriver के प्रॉडक्ट सुइट का हिस्सा है. इसमें लॉग को सेव करने की सुविधा, लॉग व्यूअर नाम का यूज़र इंटरफ़ेस, और प्रोग्राम के हिसाब से लॉग मैनेज करने के लिए एक एपीआई शामिल है. Stackdriver Logging की मदद से, लॉग एंट्री पढ़ी और लिखी जा सकती हैं. साथ ही, लॉग खोजे और फ़िल्टर किए जा सकते हैं, लॉग एक्सपोर्ट किए जा सकते हैं, और लॉग के आधार पर मेट्रिक बनाई जा सकती हैं.
फ़िलहाल, यह एक्सटेंशन लॉग में एंट्री लिखता है.
ज़्यादा जानकारी के लिए, Stackdriver Logging के दस्तावेज़ देखें.
सैंपल
यहां दिए गए उदाहरणों में, ExtensionCallout नीति का इस्तेमाल करके, Stackdriver Logging एक्सटेंशन की कार्रवाइयों के लिए सहायता को कॉन्फ़िगर करने का तरीका बताया गया है.
ग्लोबल लॉग
नीचे दी गई नीति, Stackdriver Global संसाधन में example-log नाम के लॉग में "This is a test" मैसेज लिखती है. असल में, आपके पास मैसेज को फ़्लो वैरिएबल में शामिल करने का विकल्प होता है. इसकी वैल्यू, एपीआई प्रॉक्सी में कहीं और सेट की जाती है.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Logging-Extension">
<DisplayName>Logging Connector</DisplayName>
<Connector>stackdriver-extension-sample</Connector>
<Action>log</Action>
<Input><![CDATA[{
"logName": "example-log",
"metadata": {
"resource": {
"type": "global",
"labels": {
"project_id": "my-test"
}
}
},
"message": "This is a test"
}]]></Input>
</ConnectorCallout>
इस कॉन्टेंट में, इस एक्सटेंशन को कॉन्फ़िगर करने और इस्तेमाल करने के बारे में जानकारी दी गई है. Apigee कंसोल का इस्तेमाल करके एक्सटेंशन को कॉन्फ़िगर करने का तरीका जानने के लिए, एक्सटेंशन जोड़ना और उसे कॉन्फ़िगर करना लेख पढ़ें.
कार्रवाइयां
लॉग
यह फ़ंक्शन, लॉग में कोई मैसेज लिखता है.
इस कार्रवाई से, Stackdriver लॉग एंट्री लिखी जाती है. लॉग एंट्री में मेटाडेटा और एंट्री डेटा शामिल होता है. लॉग एंट्री के बारे में ज़्यादा जानने के लिए, एंट्री का रेफ़रंस देखें. metadata प्रॉपर्टी के कॉन्टेंट के बारे में जानकारी पाने के लिए, Stackdriver Logging के दस्तावेज़ में LogEntry ऑब्जेक्ट देखें.
सिंटैक्स
<Action>log</Action>
<Input><![CDATA[{
"logName" : "stackdriver-log-name-to-use",
"metadata" : JSON-structured-metadata,
"message" : "data-to-log-as-entry"
}]]></Input>
उदाहरण
<Action>log</Action>
<Input><![CDATA[{
"logName" : "stackdriver-log-name-to-use",
"metadata" : { "resource" : { "type" : "global" } },
"message" : "data-to-log-as-entry"
}]]></Input>
अनुरोध के पैरामीटर
| पैरामीटर | ब्यौरा | टाइप | डिफ़ॉल्ट | ज़रूरी है |
|---|---|---|---|---|
| logName | उस लॉग का नाम जिससे यह एंट्री जुड़ी है. | स्ट्रिंग | कोई नहीं. | हां. |
| मेटाडेटा | लॉग एंट्री के बारे में मेटाडेटा.metadata में type और labels सेट करने के बारे में ज़्यादा जानकारी और विकल्पों के लिए, MonitoredResource देखें. |
JSON | कोई नहीं. | नहीं. |
| मैसेज | इस लॉग एंट्री के लिए वैल्यू के तौर पर इस्तेमाल किया जाने वाला डेटा. | स्ट्रिंग | कोई नहीं. | हां. |
जवाब
अगर मैसेज को लॉग में लिखा गया है, तो कोई भी नहीं. ऐसा न होने पर, अनुरोध में गड़बड़ी दिखेगी. एक्सटेंशन को डीबग करना लेख भी पढ़ें.
कॉन्फ़िगरेशन का रेफ़रंस
एपीआई प्रॉक्सी में इस एक्सटेंशन का इस्तेमाल करने के लिए, इसे कॉन्फ़िगर और डिप्लॉय करते समय यहां दी गई जानकारी का इस्तेमाल करें.
सामान्य एक्सटेंशन प्रॉपर्टी
हर प्रॉपर्टी के लिए नीचे दी गई प्रॉपर्टी मौजूद हैं.
| प्रॉपर्टी | जानकारी | डिफ़ॉल्ट | ज़रूरी है |
|---|---|---|---|
name |
वह नाम, जिसे आप एक्सटेंशन का यह कॉन्फ़िगरेशन दे रहे हैं. | कभी नहीं | हां |
packageName |
एक्सटेंशन पैकेज का नाम, जो Apigee Edge से दिया गया है. | कभी नहीं | हां |
version |
उस एक्सटेंशन पैकेज का वर्शन नंबर जिससे आपको एक्सटेंशन कॉन्फ़िगर करना है. | कभी नहीं | हां |
configuration |
आप जिस एक्सटेंशन को जोड़ रहे हैं उसके लिए खास तौर पर कॉन्फ़िगरेशन वैल्यू. इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी देखें | कभी नहीं | हां |
इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी
इस एक्सटेंशन के लिए, कॉन्फ़िगरेशन की इन प्रॉपर्टी की वैल्यू तय करें.
| प्रॉपर्टी | ब्यौरा | डिफ़ॉल्ट | ज़रूरी है |
|---|---|---|---|
| projectId | वह GCP प्रोजेक्ट आईडी जहां लॉग बनाए जाने चाहिए. | कोई नहीं. | हां. |
| क्रेडेंशियल | Apigee Edge कंसोल में डालने पर, यह आपकी सेवा खाते की कुंजी फ़ाइल का कॉन्टेंट होता है. Management API के ज़रिए भेजे जाने पर, यह सेवा खाते के मुख्य फ़ाइल से जनरेट की गई base64-encoded वैल्यू होती है. | कोई नहीं. | हां. |