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

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

ভার্সন 2.0.0

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

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

পূর্বশর্ত

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

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

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

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

Stackdriver Logging সম্পর্কে

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

এই এক্সটেনশন লগে এন্ট্রি লেখে।

আরও জানতে, Stackdriver Logging ডকুমেন্ট দেখুন।

নমুনা

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

গ্লোবাল লগ

নিচের নীতিটি Stackdriver গ্লোবাল রিসোর্সে example-log নামের একটি লগে "এটি একটি পরীক্ষা" মেসেজটি লেখে। বাস্তবে, আপনি সম্ভবত একটি ফ্লো ভেরিয়েবলে মেসেজটি রাখবেন, যার মান আপনি 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>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>

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

রেসপন্স

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

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

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

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

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

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

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

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

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