Google Stackdriver लॉगिंग एक्सटेंशन

यहां Apigee Edge का दस्तावेज़ देखा जा रहा है.
Go to the Apigee X documentation.
info

वर्शन 2.0.1

Stackdriver Logging के लॉग में एंट्री लिखें.

इस कॉन्टेंट में, इस एक्सटेंशन को कॉन्फ़िगर करने और इसका इस्तेमाल करने के बारे में जानकारी दी गई है.

ज़रूरी शर्तें

एपीआई प्रॉक्सी से इस एक्सटेंशन का इस्तेमाल करने से पहले, आपको ये काम करने होंगे:

  1. आईएएम में, प्रोजेक्ट के उस सदस्य को लॉगिंग > लॉग राइटर की अनुमति असाइन करें जो Stackdriver Logging सिस्टम के लिए, आपके एक्सटेंशन की भूमिका निभाएगा. भूमिकाएं देने के तरीके के बारे में जानने के लिए, खास संसाधनों के लिए सेवा खाते को भूमिकाएं देना लेख पढ़ें. लॉगिंग की भूमिकाओं के बारे में ज़्यादा जानने के लिए, ऐक्सेस कंट्रोल गाइड देखें.

  2. सेवा खाते के लिए कुंजी जनरेट करने के लिए, Google Cloud Console का इस्तेमाल करें.

  3. एक्सटेंशन को जोड़ने और कॉन्फ़िगर करने के लिए, कॉन्फ़िगरेशन रेफ़रंस का इस्तेमाल करते समय, जनरेट हुई कुंजी की JSON फ़ाइल के कॉन्टेंट का इस्तेमाल करें.

Stackdriver Logging के बारे में जानकारी

Stackdriver Logging, Google Cloud में Stackdriver प्रॉडक्ट सुइट का हिस्सा है. इसमें लॉग सेव करने की सुविधा, Logs Viewer नाम का यूज़र इंटरफ़ेस (यूआई) और प्रोग्राम की मदद से लॉग मैनेज करने के लिए एक एपीआई शामिल है. Stackdriver Logging की मदद से, लॉग एंट्री पढ़ी और लिखी जा सकती हैं. साथ ही, लॉग खोजे और फ़िल्टर किए जा सकते हैं, एक्सपोर्ट किए जा सकते हैं, और लॉग के आधार पर मेट्रिक बनाई जा सकती हैं.

यह एक्सटेंशन, लॉग में एंट्री लिखता है.

ज़्यादा जानकारी के लिए, Stackdriver Logging के दस्तावेज़ देखें.

सैंपल

यहां दिए गए उदाहरणों में, ExtensionCallout नीति का इस्तेमाल करके, Stackdriver Logging एक्सटेंशन की कार्रवाइयों के लिए सहायता कॉन्फ़िगर करने का तरीका बताया गया है.

ग्लोबल लॉग

यहां दी गई नीति, Stackdriver के ग्लोबल संसाधन में example-log नाम के लॉग में "यह एक टेस्ट है" मैसेज लिखती है. असल में, आपके पास शायद कोई ऐसा फ़्लो वैरिएबल होगा जिसमें मैसेज शामिल होगा. इसकी वैल्यू, एपीआई प्रॉक्सी में कहीं और सेट की जाती है.

<?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 कंसोल का इस्तेमाल करके, एक्सटेंशन को कॉन्फ़िगर करने के चरणों के लिए, एक्सटेंशन जोड़ना और कॉन्फ़िगर करना लेख पढ़ें.

कार्रवाइयां

log

यह फ़ंक्शन, लॉग में कोई मैसेज लिखता है.

इस कार्रवाई से, 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" : "example-log",
  "metadata" : { "resource" : { "type" : "global" } },
  "message": "This is a test."
}]]></Input>

उदाहरण: JSON

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "example-log",
  "metadata" : { "resource" : { "type" : "global" } },
  "message" : { "info" :  "This is a test." }
}]]></Input>

अनुरोध के पैरामीटर

पैरामीटर ब्यौरा टाइप डिफ़ॉल्ट ज़रूरी है
logName उस लॉग का नाम जिसमें यह एंट्री शामिल है. स्ट्रिंग कोई नहीं. हां.
metadata लॉग एंट्री के बारे में मेटाडेटा.
metadata में type और labels सेट करने के बारे में ज़्यादा जानकारी और विकल्प जानने के लिए, MonitoredResource देखें.
JSON कोई नहीं. नहीं.
message इस लॉग एंट्री की वैल्यू के तौर पर इस्तेमाल किया जाने वाला डेटा. आपके पास कोई स्ट्रिंग तय करने या ज़्यादा स्ट्रक्चर्ड मैसेज लॉग करने के लिए, JSON का इस्तेमाल करने का विकल्प है. स्ट्रिंग या JSON कोई नहीं. हां.

जवाब

अगर मैसेज लॉग में लिखा गया है, तो कोई जवाब नहीं मिलेगा. इसके अलावा, अनुरोध में गड़बड़ी दिखेगी. एक्सटेंशन को डीबग करना लेख भी देखें.

कॉन्फ़िगरेशन रेफ़रंस

एपीआई प्रॉक्सी में इस एक्सटेंशन को कॉन्फ़िगर और डिप्लॉय करते समय, यहां दी गई जानकारी का इस्तेमाल करें.

एक्सटेंशन की सामान्य प्रॉपर्टी

हर प्रॉपर्टी के लिए नीचे दी गई प्रॉपर्टी मौजूद हैं.

प्रॉपर्टी जानकारी डिफ़ॉल्ट ज़रूरी है
name वह नाम, जिसे आप एक्सटेंशन का यह कॉन्फ़िगरेशन दे रहे हैं. कभी नहीं हां
packageName एक्सटेंशन पैकेज का नाम, जो Apigee Edge से दिया गया है. कभी नहीं हां
version उस एक्सटेंशन पैकेज का वर्शन नंबर जिससे आपको एक्सटेंशन कॉन्फ़िगर करना है. कभी नहीं हां
configuration आप जिस एक्सटेंशन को जोड़ रहे हैं उसके लिए खास तौर पर कॉन्फ़िगरेशन वैल्यू. इस एक्सटेंशन पैकेज के लिए प्रॉपर्टी देखें कभी नहीं हां

इस एक्सटेंशन पैकेज की प्रॉपर्टी

इस एक्सटेंशन के लिए, यहां दी गई कॉन्फ़िगरेशन प्रॉपर्टी की वैल्यू तय करें.

प्रॉपर्टी ब्यौरा डिफ़ॉल्ट ज़रूरी है
projectId वह Google Cloud प्रोजेक्ट आईडी जहां लॉग बनाए जाने चाहिए. कोई नहीं. हां.
credentials Apigee Edge कंसोल में डालने पर, यह आपके सेवा खाते की कुंजी वाली फ़ाइल का कॉन्टेंट होता है. मैनेजमेंट एपीआई का इस्तेमाल करके भेजने पर, यह सेवा खाते की कुंजी वाली फ़ाइल से जनरेट की गई, base64 में एनकोड की गई वैल्यू होती है. कोई नहीं. हां.