Google Cloud Logging এক্সটেনশন

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন।
তথ্য

ভার্সন 1.6.0

Cloud Logging লগে এন্ট্রি লেখা।

এই এক্সটেনশন কনফিগার ও ব্যবহার করার জন্য এই কন্টেন্ট রেফারেন্স প্রদান করে।

পূর্বশর্ত

API প্রক্সি থেকে এই এক্সটেনশন ব্যবহার করার আগে, আপনাকে অবশ্যই:

  1. IAM-এ, সেই প্রোজেক্ট মেম্বারকে Logging > Logs Writer ভূমিকা অ্যাসাইন করুন যে Cloud Logging সিস্টেমে আপনার এক্সটেনশনের প্রতিনিধিত্ব করবে। কীভাবে ভূমিকা প্রদান করতে হয় সেই সংক্রান্ত নির্দেশাবলীর জন্য, নির্দিষ্ট রিসোর্সের জন্য পরিষেবা অ্যাকাউন্টে ভূমিকা প্রদান করা দেখুন। লগিং ভূমিকা সম্পর্কে আরও জানতে, অ্যাক্সেস কন্ট্রোল গাইড দেখুন।

  2. পরিষেবা অ্যাকাউন্টের জন্য কী তৈরি করতে Google Cloud Console ব্যবহার করুন।

  3. কনফিগারেশন রেফারেন্স ব্যবহার করে এক্সটেনশন যোগ ও কনফিগার করার সময়, ফলাফল হিসেবে প্রাপ্ত কী JSON ফাইলের কন্টেন্ট ব্যবহার করুন।

এই এক্সটেনশন PostClientFlow-তে থাকা ExtensionCallout নীতি দ্বারা কল করার সুবিধা দেয়। PostClientFlow থেকে এই এক্সটেনশন কল করার জন্য ExtensionCallout নীতি ব্যবহার করতে চাইলে, আপনার প্রতিষ্ঠানে features.allowExtensionsInPostClientFlow ফ্ল্যাগ true হিসেবে সেট করা আছে কিনা তা নিশ্চিত করুন।

  • আপনি যদি পাবলিক ক্লাউডের জন্য Apigee Edge গ্রাহক হন, তাহলে আপনার প্রতিষ্ঠানে features.allowExtensionsInPostClientFlow ফ্ল্যাগ true হিসেবে সেট করা আছে কিনা তা নিশ্চিত করতে আপনাকে অবশ্যই Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করতে হবে।

  • আপনি যদি প্রাইভেট ক্লাউডের জন্য Apigee Edge গ্রাহক হন, তাহলে features.allowExtensionsInPostClientFlow ফ্ল্যাগকে true হিসেবে সেট করতে সংস্থা প্রপার্টি আপডেট করুন API ব্যবহার করুন।

Cloud Logging সম্পর্কে

Cloud Logging হল Google Cloud-এর অপারেশন স্যুটের অংশ। এতে লগ স্টোর করার সুবিধা, Logs Explorer নামের একটি ইউজার ইন্টারফেস এবং প্রোগ্রাম্যাটিকভাবে লগ ম্যানেজ করার জন্য একটি API অন্তর্ভুক্ত। Cloud Logging-এর সাহায্যে, আপনি লগ এন্ট্রি পড়তে ও লিখতে, আপনার লগ সার্চ ও ফিল্টার করতে, আপনার লগ এক্সপোর্ট করতে এবং লগ-ভিত্তিক মেট্রিক তৈরি করতে পারবেন।

Cloud Logging এক্সটেনশন বর্তমানে লগে এন্ট্রি লেখে। আরও জানতে, Cloud Logging ডকুমেন্ট দেখুন।

নমুনা

ExtensionCallout নীতি ব্যবহার করে কীভাবে Cloud Logging এক্সটেনশন অ্যাকশনের জন্য সহায়তা কনফিগার করতে হয় তা নিম্নলিখিত উদাহরণ থেকে বোঝা যায়।

গ্লোবাল লগ

নিম্নলিখিত নীতিটি Cloud Global রিসোর্সে example-log নামের একটি লগে This is a test মেসেজটি লেখে। প্রকৃত ব্যবহারের ক্ষেত্রে, আপনি হয়ত মেসেজটি এমন একটি ফ্লো ভেরিয়েবলে রাখবেন যার ভ্যালু আপনি API প্রক্সিতে অন্য কোথাও সেট করেছেন।

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Logging-Extension">
    <DisplayName>Logging Connector</DisplayName>
    <Connector>cloud-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 কনসোল ব্যবহার করে এক্সটেনশন কনফিগার করার ধাপগুলি জানতে, এক্সটেনশন যোগ করা ও কনফিগার করা দেখুন।

ক্রিয়াসমূহ

লগ

লগে মেসেজ লেখে।

এই অ্যাকশন Cloud Logging লগ এন্ট্রি লেখে। লগ এন্ট্রিতে মেটাডেটা ও এন্ট্রি ডেটা থাকে। লগ এন্ট্রি সম্পর্কে আরও জানতে, এন্ট্রি রেফারেন্স দেখুন। metadata প্রপার্টির কন্টেন্ট সম্পর্কে তথ্য পেতে, Cloud Logging ডকুমেন্টেশনে LogEntry অবজেক্ট দেখুন।

সিন্ট্যাক্স

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "cloud-log-name-to-use",
  "metadata" : JSON-structured-metadata,
  "message" : "data-to-log-as-entry"
}]]></Input>

উদাহরণ: String

<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 লগ এন্ট্রি সম্পর্কে মেটাডেটা।
type ও labels সেট করা সম্পর্কে আরও তথ্য ও বিকল্পের জন্য metadata-এ MonitoredResource দেখুন।
JSON কোনওটিই নয় না
message এই লগ এন্ট্রির ভ্যালু হিসেবে ব্যবহার করার জন্য ডেটা। আপনি একটি সাধারণ স্ট্রিং নির্দিষ্ট করতে পারেন অথবা আরও স্ট্রাকচার্ড মেসেজ লগ করার জন্য JSON ব্যবহার করতে পারেন। স্ট্রিং বা JSON কোনওটিই নয় হ্যাঁ

রেসপন্স

None যদি মেসেজটি লগ ফাইলে লেখা হয়ে থাকে। অন্যথায়, অনুরোধের উত্তরে সমস্যা দেখানো হবে। এছাড়াও, এক্সটেনশন ডিবাগ করা দেখুন।

কনফিগারেশন রেফারেন্স

API প্রক্সিতে ব্যবহারের জন্য এই এক্সটেনশন কনফিগার ও ডেপ্লয় করার সময় নিম্নলিখিত বিষয়গুলি ব্যবহার করুন।

এক্সটেনশনের সাধারণ প্রপার্টি

নিম্নলিখিত বৈশিষ্ট্যগুলি প্রতিটি এক্সটেনশনের জন্য উপস্থিত রয়েছে।

সম্পত্তি বর্ণনা ডিফল্ট প্রয়োজন
name আপনি এক্সটেনশনের এই কনফিগারেশনের নাম দিন। কোনোটিই নয় হ্যাঁ
packageName Apigee Edge দ্বারা প্রদত্ত এক্সটেনশন প্যাকেজের নাম। কোনোটিই নয় হ্যাঁ
version যে এক্সটেনশন প্যাকেজ থেকে আপনি একটি এক্সটেনশন কনফিগার করছেন তার সংস্করণ নম্বর। কোনোটিই নয় হ্যাঁ
configuration আপনি যে এক্সটেনশনটি যোগ করছেন তার জন্য নির্দিষ্ট কনফিগারেশন মান। এই এক্সটেনশন প্যাকেজের বৈশিষ্ট্য দেখুন কোনোটিই নয় হ্যাঁ

এই এক্সটেনশন প্যাকেজের প্রপার্টি

এই এক্সটেনশনের জন্য নির্দিষ্ট নিম্নলিখিত কনফিগারেশন প্রপার্টির ভ্যালু উল্লেখ করুন।

প্রপার্টি বিবরণ ডিফল্ট প্রয়োজনীয়
projectId লগ তৈরি করার জন্য Google Cloud প্রোজেক্ট আইডি। কোনওটিই নয় হ্যাঁ
credentials Apigee Edge কনসোলে এটি প্রবেশ করানো হলে, এটি আপনার পরিষেবা অ্যাকাউন্ট কী ফাইলের কন্টেন্ট। ম্যানেজমেন্ট API-এর মাধ্যমে পাঠানো হলে, এটি হল পরিষেবা অ্যাকাউন্ট কী ফাইল থেকে তৈরি হওয়া base64-এনকোড করা ভ্যালু। কোনওটিই নয় হ্যাঁ