এই নিবন্ধে একটি সার্ভার-সাইড কন্টেইনারে ইভেন্ট পাঠানোর বিভিন্ন উপায় বর্ণনা করা হয়েছে। আপনার যদি আরও পটভূমি তথ্যের প্রয়োজন হয়, তবে সার্ভার-সাইড ট্যাগিং কীভাবে কাজ করে তা দেখে নিতে পারেন।
এই নিবন্ধে আলোচনা করা হয়েছে কীভাবে:
- একটি ওয়েবসাইট থেকে আপনার সার্ভার-সাইড কন্টেইনারে ডেটা পাঠান
- একটি সার্ভার কন্টেইনারে অতিরিক্ত ডেটা পাঠান
- আপনার সার্ভার-সাইড কন্টেইনারে ডেটা গ্রহণ করুন
- ওয়েবসাইট ছাড়া অন্য উৎস থেকে ডেটা পাঠান
শুরু করার আগে
এই নির্দেশিকাটি ধরে নেয় যে আপনার কাছে ইতিমধ্যেই রয়েছে:
১. একটি ওয়েবসাইট থেকে আপনার সার্ভার-সাইড কন্টেইনারে ডেটা পাঠান
আপনি ট্যাগ ম্যানেজার অথবা gtag.js-এর মাধ্যমে সার্ভার-সাইড ইমপ্লিমেন্টেশনে ডেটা রাউট করতে পারেন। আপনার পছন্দের ইমপ্লিমেন্টেশন অপশনটি বেছে নিন।
ঐচ্ছিক: প্রতিটি ইভেন্টের সাথে অতিরিক্ত প্যারামিটার পাঠান
আপনি আরও দুই ধরনের অতিরিক্ত প্যারামিটার পাঠাতে পারেন: কনফিগারেশন-স্তরের প্যারামিটার এবং ইভেন্ট-স্তরের প্যারামিটার। কনফিগারেশন প্যারামিটারগুলো আপনার গুগল ট্যাগের আচরণকে প্রভাবিত করে এবং এগুলো শুধুমাত্র গুগল ট্যাগ স্তরেই সেট করা যায়।
ইভেন্ট প্যারামিটারগুলো একটি ইভেন্ট সম্পর্কে অতিরিক্ত তথ্য নির্দিষ্ট করে এবং এগুলো সমস্ত ইভেন্ট, নির্বাচিত ইভেন্ট বা page_view ইভেন্টের জন্য সেট করা যেতে পারে।
সেটআপ সুপারিশ
সার্ভার কন্টেইনারে ডেটা পাঠানোর জন্য আমরা ওয়েব পেজে GA4 ট্যাগ ব্যবহার করার পরামর্শ দিই। ইভেন্টগুলোর সর্বোত্তম ডেলিভারি হার নিশ্চিত করতে এই ট্যাগটি বিভিন্ন ট্রান্সপোর্ট পদ্ধতি ব্যবহার করতে পারে। এই ধরনের পদ্ধতিগুলোর মধ্যে রয়েছে, তবে এগুলোতেই সীমাবদ্ধ নয়।
- ছবির পিক্সেল
- এপিআই আনুন
- এক্সএইচআর
- সার্ভিস ওয়ার্কার যা আপনার সার্ভার কন্টেইনার ডোমেইন থেকে লোড করা একটি আইফ্রেমে চলে।
সমস্ত পদ্ধতি সমর্থিত কিনা তা নিশ্চিত করতে নিম্নলিখিত বিষয়গুলো যাচাই করুন:
বিষয়বস্তু-নিরাপত্তা নীতি (CSP)
| নির্দেশিকা | বিষয়বস্তু | উদ্দেশ্য |
| img-src | [সার্ভার কন্টেইনার ইউআরএল] | পরিমাপের অনুরোধ |
| সংযোগ-উৎস | [সার্ভার কন্টেইনার ইউআরএল] | পরিমাপের অনুরোধ |
| ফ্রেম-সোর্স | [সার্ভার কন্টেইনার ইউআরএল] | পরিষেবা কর্মী বাস্তবায়ন |
এছাড়াও, X-Frame-Options সার্ভার কন্টেইনার URL থেকে iframe লোড হওয়াকে সীমাবদ্ধ করবে না।
প্রতিটি পণ্যের নির্দিষ্ট নীতিমালার জন্য https://developers.google.com/tag-platform/security/guides/csp দেখুন।
২. আপনার সার্ভার-সাইড কন্টেইনারে ডেটা গ্রহণ করুন
যখন আপনি কোনো সার্ভার কন্টেইনারে HTTP রিকোয়েস্ট পাঠান, তখন ক্লায়েন্টকে সেই রিকোয়েস্টটি গ্রহণ করতে হয়।
উপলব্ধ ক্লায়েন্টদের তালিকা দেখতে:
আপনার সার্ভার কন্টেইনারটি খুলুন।
বাম দিকের নেভিগেশন বারে, ক্লায়েন্টস (Clients) -এ ক্লিক করুন। GA4 ক্লায়েন্টটি ডিফল্টরূপে আপনার সার্ভার-সাইড কন্টেইনারে আগে থেকেই ইনস্টল করা থাকে।
বিবরণ দেখতে বা সম্পাদনা করতে ক্লায়েন্টের নামে ক্লিক করুন।
ঐচ্ছিক ক্লায়েন্ট সেটিংস
বেশিরভাগ ক্ষেত্রে, ক্লায়েন্টের কোনো পরিবর্তনের প্রয়োজন হবে না। তবে, আপনার ব্যবহারের ক্ষেত্রটি ভিন্ন হতে পারে এবং আপনি নিম্নলিখিত সেটিংসগুলির মধ্যে একটি সম্পাদনা করতে চাইতে পারেন:
অগ্রাধিকার: ক্লায়েন্টগুলো কোন ক্রমে চলবে তা নির্ধারণ করে। সংখ্যা যত বেশি, ক্লায়েন্টগুলো প্রথমে চলে এবং আগত অনুরোধের সাথে মিলে যাওয়া প্রথম ক্লায়েন্টটিই সেই অনুরোধের জন্য সক্রিয় ক্লায়েন্ট হয়ে ওঠে।
সক্রিয়করণের মানদণ্ড: সক্রিয়করণের মানদণ্ড নির্ধারণ করে যে ক্লায়েন্ট কখন অনুরোধে সাড়া দেবে:
- নির্দিষ্ট আইডিগুলির জন্য ডিফল্ট gtag.js পাথ: আপনার সার্ভার কন্টেইনার URL-এর মাধ্যমে gtag.js জাভাস্ক্রিপ্ট সার্ভিং সক্ষম করতে এই সেটিংটি ব্যবহার করুন। এটি সক্ষম করা হলে, ডিফল্ট gtag.js রিকোয়েস্ট পাথ, যেমন
/gtag/js?id=TAG_IDকরা অনুরোধের জবাবে এই ক্লায়েন্টটি সক্রিয় হবে। এক বা একাধিক ডেস্টিনেশন আইডি যোগ করতে 'অ্যাড মেজারমেন্ট আইডি' (Add Measurement ID) -তে ক্লিক করুন।
- নির্দিষ্ট আইডিগুলির জন্য ডিফল্ট gtag.js পাথ: আপনার সার্ভার কন্টেইনার URL-এর মাধ্যমে gtag.js জাভাস্ক্রিপ্ট সার্ভিং সক্ষম করতে এই সেটিংটি ব্যবহার করুন। এটি সক্ষম করা হলে, ডিফল্ট gtag.js রিকোয়েস্ট পাথ, যেমন
ঐচ্ছিক: সার্ভার-সাইড ট্যাগ ম্যানেজারে অতিরিক্ত ডেটা গ্রহণ করুন
আপনি যদি অতিরিক্ত প্যারামিটার পাঠান, তাহলে সেই অতিরিক্ত প্যারামিটারগুলো পার্স করতে এবং তা থেকে ইভেন্ট ডেটা তৈরি করার জন্য আপনার সার্ভার কন্টেইনারে গুগল অ্যানালিটিক্স ৪ ক্লায়েন্ট সেট আপ করতে হবে।
কিছু সার্ভার ট্যাগ কোনো সেটআপ ছাড়াই তাদের আউটবাউন্ড অনুরোধে অতিরিক্ত প্যারামিটার অন্তর্ভুক্ত করে। সেই প্যারামিটারগুলো বাদ দিতে, মানটি অপসারণ করার জন্য একটি ট্রান্সফরমেশন তৈরি করুন।
অন্যান্য ট্যাগে অতিরিক্ত প্যারামিটার ব্যবহার করতে:
- আপনার সার্ভার কন্টেইনারে, বাম দিকের নেভিগেশনে থাকা Variables- এ ক্লিক করুন।
- একটি নতুন ব্যবহারকারী-সংজ্ঞায়িত ভেরিয়েবল তৈরি করুন।
- ভেরিয়েবল কনফিগারেশন- এ, ইভেন্ট ডেটা ভেরিয়েবল টাইপটি নির্বাচন করুন।
- Key Path- এ প্যারামিটারের নামটি লিখুন।
- আপনার ভেরিয়েবলটির একটি নাম দিন এবং সংরক্ষণ করুন ।
এখন আপনি আপনার সার্ভার কন্টেইনারের ভেতরের যেকোনো ট্যাগে ইভেন্ট প্যারামিটারটি ব্যবহার করতে পারবেন।
৩. ঐচ্ছিক: ওয়েবসাইট ছাড়া অন্য উৎস থেকে ডেটা পাঠান
গুগল অ্যানালিটিক্স মেজারমেন্ট প্রোটোকল ব্যবহার করে মোবাইল অ্যাপ এবং সার্ভার-টু-সার্ভার অ্যাপ্লিকেশনের মতো উৎস থেকে সার্ভার-সাইড ট্যাগিং সাপোর্ট চালু করা যায়। এই অপশনটি আপনাকে মেজারমেন্ট প্রোটোকল ফরম্যাটে আপনার কন্টেইনারে ইভেন্ট পাঠাতে দেয়। কন্টেইনারটি অন্যান্য সমস্ত SGTM ইভেন্টের মতোই একই পদ্ধতিতে সেই ইভেন্টগুলো গুগল অ্যানালিটিক্সে পাঠায়।
এই বিকল্পটি মেজারমেন্ট প্রোটোকল এন্ডপয়েন্টের সমস্ত বৈশিষ্ট্য সমর্থন করে না, যেমন ট্যাগিং ইভেন্ট থেকে ভৌগোলিক এবং ডিভাইসের তথ্য আহরণ করা।
মোবাইল অ্যাপস
আপনার অ্যান্ড্রয়েড বা আইওএস অ্যাপ থেকে সার্ভার কন্টেইনারে ডেটা পাঠানোর জন্য, আপনাকে একটি কাস্টম ইমেজ ট্যাগ তৈরি করতে হবে এবং মেজারমেন্ট প্রোটোকল ব্যবহার করার জন্য এটি কনফিগার করতে হবে:
- আপনার মোবাইল কন্টেইনারে (অ্যান্ড্রয়েড বা আইওএস), ট্যাগ > নতুন- তে ক্লিক করুন।
- ট্যাগ কনফিগারেশনে কাস্টম ইমেজ ট্যাগ টাইপটি নির্বাচন করুন।
- পূর্বে মেজারমেন্ট প্রোটোকল ক্লায়েন্টে নির্দিষ্ট করা পাথে, সার্ভার কন্টেইনারের একটি পিক্সেল ইমেজের জন্য ইমেজ ইউআরএল (Image URL)- এর মান সেট করুন। আপনার পিক্সেল ইউআরএল-এর শেষে যেকোনো কাঙ্ক্ষিত মেজারমেন্ট প্রোটোকল প্যারামিটার যুক্ত করুন:
https://custom.example.com/app ?v=1&tid=TAG_ID&cid=555&t=screenview&an=myApp&version=1.6.2&aid=com.foo.myapp&cd=home - ‘Enable Cache Busting’ আনচেক করুন।
- ট্যাগটি সংরক্ষণ করুন এবং কন্টেইনারটি প্রকাশ করুন।
- আপনার সার্ভার-সাইড কন্টেইনারে, ক্লায়েন্টস > নিউ-তে ক্লিক করুন।
- ক্লায়েন্ট কনফিগারেশনে , মেজারমেন্ট প্রোটোকল ক্লায়েন্ট টাইপ নির্বাচন করুন।
- আপনার অ্যাপের কালেকশন এন্ডপয়েন্টের পাথে অ্যাক্টিভেশন পাথ সেট করুন।
- ক্লায়েন্ট কনফিগারেশন সংরক্ষণ করুন এবং সার্ভার-সাইড কন্টেইনারটি প্রকাশ করুন।
সার্ভার-টু-সার্ভার অ্যাপস
আপনার সার্ভার কন্টেইনারে মেজারমেন্ট প্রোটোকল ডেটা পাঠাতে, www.google-analytics.com হোস্টনেমটির পরিবর্তে আপনার সার্ভার কন্টেইনারের ডোমেইন নেম ব্যবহার করুন। উদাহরণস্বরূপ:
POST /batch HTTP/1.1
Host: collection.example.com
v=1&tid=TAG_ID&cid=555&t=screenview&an=myApp&version=1.6.2&aid=com.foo.myapp&cd=home
মেজারমেন্ট প্রোটোকল হিট গ্রহণ করার জন্য, আপনার সার্ভার-সাইড ট্যাগ ম্যানেজার ইনস্টলেশনটি একটি মেজারমেন্ট প্রোটোকল ক্লায়েন্ট দিয়ে কনফিগার করুন:
- আপনার সার্ভার-সাইড কন্টেইনারে, ক্লায়েন্টস > নিউ-তে ক্লিক করুন।
- ক্লায়েন্ট কনফিগারেশনে , মেজারমেন্ট প্রোটোকল ক্লায়েন্ট টাইপ নির্বাচন করুন।
- অ্যাক্টিভেশন পাথ আপনার সার্ভারের এন্ডপয়েন্টের পাথে সেট করুন।
- ক্লায়েন্ট কনফিগারেশন সংরক্ষণ করুন এবং কন্টেইনারটি প্রকাশ করুন।
পরবর্তী পদক্ষেপ
প্রকৃত ফার্স্ট-পার্টি প্রেক্ষাপটে ডেটা পাঠাতে হলে, আপনাকে আপনার নিজস্ব সার্ভার থেকে গুগল স্ক্রিপ্ট, যেমন গুগল অ্যানালিটিক্স লাইব্রেরি, পরিবেশন করতে হবে।