অ্যাপ ইঞ্জিনের সাথে সার্ভার-সাইড ট্যাগিং সেট আপ করুন

এই নির্দেশিকা ব্যাখ্যা করে কিভাবে:

  • Google ক্লাউড প্ল্যাটফর্ম (GCP) অ্যাপ ইঞ্জিনে একটি ট্যাগিং সার্ভারের ব্যবস্থা করুন।
  • লাইভ ট্রাফিক পরিচালনা করতে ট্যাগিং সার্ভার আপগ্রেড করুন।
  • আপনার Google ট্যাগ ম্যানেজার কন্টেইনার চালাচ্ছে এমন সার্ভারের সংখ্যা বাড়ান বা হ্রাস করুন৷
  • সার্ভারের ব্যবস্থা করার পরে আপনার ট্যাগিং সার্ভার সংস্করণ আপডেট রাখুন।

পূর্বশর্ত

  1. আপনার একটি GCP অ্যাকাউন্ট প্রয়োজন। আপনার যদি একটি না থাকে, একটি নতুন GCP অ্যাকাউন্ট তৈরি করুন
  2. আপনার একটি GCP বিলিং অ্যাকাউন্ট প্রয়োজন। আপনার যদি একটি না থাকে, একটি GCP বিলিং অ্যাকাউন্ট তৈরি করুন (বিলিং অ্যাকাউন্ট নির্মাতা ভূমিকা প্রয়োজন)।
  3. আপনার প্রকল্প নির্মাতা এবং বিলিং অ্যাকাউন্ট ব্যবহারকারীর ভূমিকা প্রয়োজন। ভূমিকা যোগ করার বিষয়ে আরও জানুন।

1. একটি সার্ভারের ব্যবস্থা করুন

একটি অ্যাপ ইঞ্জিন উদাহরণে একটি নতুন ট্যাগিং সার্ভার তৈরি করতে, আপনাকে এটি করতে হবে:

  • ট্যাগ ম্যানেজারে একটি নতুন সার্ভার কন্টেইনার তৈরি করুন
  • একটি নতুন Google ক্লাউড প্রকল্প (GCP) তৈরি করুন
  • একটি নতুন অ্যাপ ইঞ্জিন ট্যাগিং সার্ভারের ব্যবস্থা করুন
  • ট্যাগ ম্যানেজার সার্ভার কন্টেইনারে নতুন ট্যাগিং সার্ভারের URL যোগ করুন

একটি Google ট্যাগ ম্যানেজার সার্ভার কন্টেইনার তৈরি করুন

  1. গুগল ট্যাগ ম্যানেজার খুলুন।

  2. অ্যাকাউন্টের সারিতে, ওভারফ্লো মেনুতে ক্লিক করুন > কন্টেইনার তৈরি করুন

  3. একটি নতুন সার্ভার কন্টেইনার তৈরি করুন।

  4. "ম্যানুয়ালি প্রভিশন ট্যাগিং সার্ভার" রেডিও বোতামে ক্লিক করুন। কন্টেইনার কনফিগারেশন নোট করুন। আপনার সার্ভারের ব্যবস্থা করার জন্য আপনার এটির প্রয়োজন হবে।

একটি নতুন GCP প্রকল্প তৈরি করুন

আপনার ট্যাগিং সার্ভারের জন্য একটি নতুন GCP প্রকল্প তৈরি করতে:

  1. গুগল ক্লাউড কনসোল খুলুন।

  2. একটি নতুন GCP প্রকল্প তৈরি করুন

  3. আপনার প্রকল্পের নাম দিন। আমরা সুবিধার জন্য আপনার কন্টেইনার আইডি ব্যবহার করার পরামর্শ দিই। এই নামটি শুধুমাত্র GCP-এর মধ্যে ব্যবহার করা হয়।

  4. GCP প্রোজেক্ট আইডি নোট করুন, কারণ আপনার ট্যাগিং সার্ভার তৈরি করতে আপনার এটির প্রয়োজন হবে।

একটি নতুন ট্যাগিং সার্ভারের ব্যবস্থা করুন

আপনার ট্যাগিং সার্ভার তৈরি করতে:

  1. ক্লাউড শেল খুলুন।

  2. ক্লাউড শেল-এ GCP প্রকল্প সেট করুন। আপনি আগে উল্লেখ করেছেন এমন GCP প্রোজেক্ট আইডি দিয়ে project ID প্রতিস্থাপন করুন:

    gcloud config set project project ID
    
  3. শেল স্ক্রিপ্ট অনুসরণ করে আপনার ট্যাগিং সার্ভার তৈরি করুন। testing স্থাপনার ধরন সেট করুন।

    bash -c "$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)"
    

ট্যাগ ম্যানেজারে ট্যাগিং সার্ভার URL যোগ করুন

  1. গুগল ট্যাগ ম্যানেজার খুলুন।

  2. অ্যাডমিন > কন্টেইনার সেটিংসে , URL যোগ করুন ক্লিক করুন। আপনি যদি আপনার সার্ভারের URL না জানেন তবে ক্লাউড শেলে নিম্নলিখিত কমান্ডটি চালান:

    gcloud app browse
    

    ফলাফল : আপনি একটি ট্যাগিং সার্ভার সেট আপ করেছেন এবং এটি একটি testing কনফিগারেশনের সাথে বিধান করেছেন৷ আপনি এখন সার্ভার-সাইড ট্যাগিং পরীক্ষা করতে পারেন।

প্রাথমিক সার্ভার কনফিগারেশন ( testing )

টেস্টিং কনফিগারেশনটি অল্প পরিমাণে টেস্ট ট্রাফিক পাঠিয়ে এবং ট্যাগ ম্যানেজারে প্রিভিউ বৈশিষ্ট্য ব্যবহার করে পণ্যটি অন্বেষণ করার জন্য উপযুক্ত। এই কনফিগারেশনটি স্ট্যান্ডার্ড এনভায়রনমেন্টে একটি অ্যাপ ইঞ্জিন F1 ইন্সট্যান্স ক্লাস এবং বেশিরভাগ ক্ষেত্রেই আপনাকে কোনো খরচ বহন করতে হবে না।

2. উৎপাদনে অ্যাপ ইঞ্জিন ব্যবহার করা

production কনফিগারেশনে, প্রতিটি সার্ভারের জন্য প্রায় $40/মাস (USD) খরচ হয়। প্রতিটি সার্ভার হল 1 vCPU, 0.5 GB মেমরি, নমনীয় পরিবেশে 10 GB ডিস্ক সহ একটি অ্যাপ ইঞ্জিন উদাহরণ।

অ্যাপ ইঞ্জিন বিলিং এবং কীভাবে বিলিং সতর্কতা কনফিগার করতে হয় তা বোঝার জন্য অ্যাপ ইঞ্জিনের খরচ পরিচালনা দেখুন। আমরা দৃঢ়ভাবে একটি বিলিং সতর্কতা সেট আপ করার সুপারিশ করছি৷

সার্ভার বিভ্রাটের ক্ষেত্রে ডেটা হারানোর ঝুঁকি কমাতে আমরা ন্যূনতম 3টি সার্ভার চালানোর পরামর্শ দিই। যাইহোক, আপনি কম (বা বেশি) সার্ভার চালানো বেছে নিতে পারেন। আমরা আশা করি যে অটোস্কেলিং 3-6 সার্ভার (ডিফল্ট) প্রতি সেকেন্ডে 50-200 অনুরোধগুলি পরিচালনা করবে। কর্মক্ষমতা ট্যাগের সংখ্যা এবং সেই ট্যাগগুলি কী করে তার উপর নির্ভর করে।

আপনার ট্যাগিং সার্ভার কনফিগার করতে:

  1. Google ক্লাউড প্ল্যাটফর্ম ক্লাউড শেল খুলুন।
  2. ক্লাউড শেলে ক্লাউড প্ল্যাটফর্ম প্রকল্প সেট করুন। project ID GCP প্রোজেক্ট আইডি দিয়ে প্রতিস্থাপন করুন যা আপনি আগে উল্লেখ করেছেন:
    gcloud config set project project ID
  3. একটি উত্পাদন পরিবেশের জন্য ট্যাগিং সার্ভার পুনরায় কনফিগার করতে, নীচের সেটআপ স্ক্রিপ্টটি চালান৷ নিম্নলিখিত কাজগুলি সম্পাদন করুন:
    bash -c "$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)"
    1. production স্থাপনার ধরন পরিবর্তন করুন।
    2. উৎপাদন ট্রাফিক পরিবেশন করতে অতিরিক্ত সার্ভার সেট আপ করুন। আমরা ন্যূনতম তিনটি সার্ভার সুপারিশ করি।

ঐচ্ছিক: লগিং অক্ষম করুন

লগিং অনুরোধ

ডিফল্টরূপে, অ্যাপ ইঞ্জিন প্রতিটি একক অনুরোধ (যেমন অনুরোধের পথ, ক্যোয়ারী প্যারামিটার, ইত্যাদি) সম্পর্কে তথ্য লগ করে যা এটি পায়। যদি আপনার ট্যাগিং সার্ভার প্রতি মাসে প্রচুর অনুরোধ পরিচালনা করে (যেমন 1 মিলিয়নের বেশি), সেই লগ বার্তাগুলির জন্য উল্লেখযোগ্য লগিং চার্জ হতে পারে। লগিং চার্জ কমাতে বা বাদ দিতে, আমরা অ্যাপ ইঞ্জিন অনুরোধ লগিং অক্ষম করার পরামর্শ দিই।

অ্যাপ ইঞ্জিন অনুরোধ লগিং নিষ্ক্রিয় করতে:

  1. Google ক্লাউড প্ল্যাটফর্মে, লগ রাউটার খুলুন। নিশ্চিত করুন যে আপনি সেই প্রকল্পে আছেন যা আপনার কন্টেইনার আইডির সাথে মেলে:
    GCP প্রকল্প নির্বাচকের স্ক্রিনশট, একটি নমুনা ট্যাগ ম্যানেজার কন্টেইনার আইডি দেখাচ্ছে।
  2. প্রকারের জন্য: ক্লাউড লগিং বালতি , নাম : _ডিফল্ট লাইন, ওভারফ্লো মেনু নির্বাচন করুন, তারপরে সিঙ্ক সম্পাদনা করুন ক্লিক করুন।
  3. সিঙ্ক গন্তব্যের অধীনে, লগ বাকেট _ডিফল্ট নির্বাচন করুন।
  4. সিঙ্কে অন্তর্ভুক্ত করার জন্য লগ নির্বাচন করুন এর অধীনে, একটি নতুন লাইন যোগ করুন। বিদ্যমান অন্তর্ভুক্তি ফিল্টারে নিম্নলিখিত নিয়মটি লিখুন:

    NOT LOG_ID("appengine.googleapis.com/nginx.request") AND NOT
    LOG_ID("appengine.googleapis.com/request_log")
    
  5. লোড ব্যালেন্সার থেকে লগিং অক্ষম করতে, একটি নতুন লাইন যোগ করুন এবং বিদ্যমান অন্তর্ভুক্তি ফিল্টারে নিম্নলিখিত নিয়মটি লিখুন:

    NOT LOG_ID("requests")
    
  6. পরিবর্তনগুলি প্রয়োগ করতে সিঙ্ক আপডেট করুন ৷ এখন অ্যাপ ইঞ্জিনের অনুরোধগুলি লগিং থেকে বাদ দেওয়া হবে।

  7. লগ এক্সপ্লোরার লগগুলিতে কোনও নতুন অনুরোধ উপস্থিত হচ্ছে না তা যাচাই করুন৷

কনসোল লগিং

ট্যাগিং সার্ভার, ক্লায়েন্ট বা একটি পাত্রে থাকা ট্যাগগুলি কনসোলে বার্তাগুলি লগ করতে পারে যা লগিং চার্জ বহন করতে পারে৷ লগিং চার্জ কমাতে বা বাদ দিতে, আপনি অবাঞ্ছিত কনসোল লগ বার্তাগুলি অক্ষম করতে পারেন৷

অবাঞ্ছিত কনসোল লগ সনাক্ত করুন:

  1. GCP-তে, লগ এক্সপ্লোরার খুলুন।
  2. আপনার ট্যাগ থেকে উদ্ভূত কোনো অবাঞ্ছিত লগ বার্তা সন্ধান করুন। উদাহরণ স্বরূপ:

    একটি ট্যাগ নিম্নলিখিত লগ পাঠাতে পারে:

    const logToConsole = require('logToConsole');
    
    logToConsole('Custom message: ' + data.param1);
    logToConsole('An important message to keep around!');
    data.gtmOnSuccess()
    

    textPayload ফিল্ডে সংশ্লিষ্ট লগ বার্তাগুলি সন্ধান করুন:
    GCP লগ এক্সপ্লোরারের স্ক্রিনশট, নমুনা লগ দেখাচ্ছে।

কনসোল লগ বার্তা নিষ্ক্রিয় করতে:

  1. Google ক্লাউড প্ল্যাটফর্মে, লগ রাউটার খুলুন। নিশ্চিত করুন যে আপনি সেই প্রকল্পে আছেন যা আপনার কন্টেইনার আইডির সাথে মেলে:
    GCP প্রকল্প নির্বাচকের স্ক্রিনশট, একটি নমুনা ট্যাগ ম্যানেজার কন্টেইনার আইডি দেখাচ্ছে।
  2. প্রকারের জন্য: ক্লাউড লগিং বালতি , নাম : _ডিফল্ট লাইন, ওভারফ্লো মেনু নির্বাচন করুন, তারপরে সিঙ্ক সম্পাদনা করুন ক্লিক করুন।
  3. সিঙ্ক গন্তব্যের অধীনে, লগ বাকেট _ডিফল্ট নির্বাচন করুন।
  4. সিঙ্কে অন্তর্ভুক্ত করার জন্য লগ নির্বাচন করুন এর অধীনে, একটি নতুন লাইন যোগ করুন। বিদ্যমান অন্তর্ভুক্তি ফিল্টারে নিম্নলিখিত নিয়মটি লিখুন:

    NOT textPayload:"Custom message:"
    

    আপনার কনসোল লগগুলির জন্য, Custom message: আপনি নিষ্ক্রিয় করতে চান এমন কনসোল লগ থেকে একটি সাবস্ট্রিং সহ পাঠ্য। আরও বিস্তৃত ফিল্টারের জন্য, লগিং ক্যোয়ারী ভাষা ব্যবহার করুন।

  5. পরিবর্তনগুলি প্রয়োগ করতে সিঙ্ক আপডেট করুন ৷ মিলে যাওয়া logToConsole বার্তাটি লগিং থেকে বাদ দেওয়া উচিত৷

  6. যাচাই করুন যে লগ এক্সপ্লোরারে কোন নতুন কনসোল লগ বার্তা উপস্থিত হচ্ছে না৷

3. আপনার কাস্টম ডোমেনে স্থাপনার মানচিত্র করুন

ডিফল্ট সার্ভার-সাইড ট্যাগিং স্থাপনা একটি অ্যাপ ইঞ্জিন ডোমেনে হোস্ট করা হয়। আমরা সুপারিশ করি যে আপনি আপনার ওয়েবসাইটের একটি সাবডোমেন ব্যবহার করার জন্য স্থাপনার পরিবর্তন করুন৷

আপনার ট্যাগিং সার্ভারে আপনার ওয়েবসাইট সাবডোমেন ম্যাপ করুন

4. Google ট্যাগ ম্যানেজারে সার্ভার URL যোগ করুন

এখন আপনার একটি সার্ভার আছে, আপনাকে নিশ্চিত করতে হবে যে Google ট্যাগ ম্যানেজার জানে যে এটি আপনার সার্ভার ব্যবহার করবে।

  1. গুগল ট্যাগ ম্যানেজার খুলুন।

  2. আপনি আপনার ট্যাগিং সার্ভারের দিকে নির্দেশ করতে চান এমন সার্ভার কন্টেইনারে ক্লিক করুন।

  3. অ্যাডমিন ট্যাবে আপনার সার্ভার কন্টেইনার সেটিংস খুলুন > কন্টেইনার সেটিংস

  4. URL যোগ করুন ক্লিক করুন এবং আপনার সার্ভার URL পেস্ট করুন।

  5. সংরক্ষণ করুন এবং আপনার কর্মক্ষেত্রে ফিরে যান।

5. বৈধতা

এখন আপনি আপনার ট্যাগিং সার্ভার সেট আপ করেছেন, নিশ্চিত করুন যে এটি উদ্দেশ্য অনুযায়ী কাজ করে। আপনার ট্যাগ ম্যানেজার ওয়ার্কস্পেসে, প্রিভিউ বোতামে ক্লিক করুন। যদি পূর্বরূপ পৃষ্ঠা লোড হয়, তাহলে সবকিছু সঠিকভাবে সেট আপ করা হয়েছে।

একাধিক URL-এর পূর্বরূপ দেখা হচ্ছে

আপনি যদি একটি একক ট্যাগিং সার্ভারে একাধিক ডোমেন ম্যাপ করে থাকেন, তাহলে নিশ্চিত করুন যে প্রতিটি URL কন্টেইনার সেটিংসে যোগ করা হয়েছে।

আপনি একাধিক URL প্রদান করলে, সমস্ত পাথ (ডোমেন নামের পরে স্ট্রিং) অবশ্যই মিলবে।

কাজ করে কাজ করে না
URL 1: example.com/abc
URL 2: example2.com/abc
URL 1: example.com/abc
URL 2: example2.com/def

একাধিক URL যোগ করা হলে, আপনি পূর্বরূপ বোতামের পাশে একটি আইকন দেখতে পাবেন যা আপনাকে পূর্বরূপ দেখার জন্য URL নির্বাচন করতে দেয়।

ট্যাগিং সার্ভার সংস্করণ আপডেট করুন

নতুন ট্যাগিং সার্ভার আপডেটে নিরাপত্তা দুর্বলতা সংশোধন এবং নতুন বৈশিষ্ট্য রয়েছে। যখন ট্যাগ ম্যানেজার আপনাকে আপডেট করার জন্য অবহিত করে তখন আমরা প্রতিটি প্রধান সংস্করণ প্রকাশের জন্য (যেমন সংস্করণ 1.xx থেকে 2.xx তে আপগ্রেড করা) জন্য কমপক্ষে আপনার ট্যাগিং সার্ভার আপডেট করার পরামর্শ দিই।

আপনার ট্যাগিং সার্ভার আপডেট করতে, আপনি পূর্বে ব্যবহার করা একই সেটিংস ব্যবহার করে সেটআপ স্ক্রিপ্টটি পুনরায় চালান। বিদ্যমান সেটিংস ডিফল্টরূপে সেট করা হয়।

আপনার ট্যাগিং সার্ভার আপডেট করতে:

  1. Google ক্লাউড প্ল্যাটফর্ম ক্লাউড শেল খুলুন।
  2. ক্লাউড শেলে ক্লাউড প্ল্যাটফর্ম প্রকল্প সেট করুন। আপনি আগে উল্লেখ করেছেন এমন GCP প্রোজেক্ট আইডি দিয়ে project ID প্রতিস্থাপন করুন:
    gcloud config set project project ID
  3. আপনি পূর্বে ব্যবহার করা একই সেটিংস ব্যবহার করে সেটআপ স্ক্রিপ্ট চালান। বিদ্যমান সেটিংস ডিফল্টরূপে সেট করা হয়।
    bash -c "$(curl -fsSL https://googletagmanager.com/static/serverjs/setup.sh)"

আপডেটটি সফল হয়েছে তা যাচাই করতে:

  1. আপনার সার্ভার কন্টেইনারে, একটি নতুন ডিবাগ সেশন শুরু করতে পূর্বরূপ বোতামে ক্লিক করুন এবং একটি পৃথক ট্যাবে একটি অনুরোধ পাঠান৷
  2. সারাংশে, কনসোল ট্যাবটি নির্বাচন করুন এবং নিশ্চিত করুন যে আপনাকে ট্যাগিং সার্ভার আপডেট করার জন্য কোন বার্তা নেই।

সার্ভার সফলভাবে আপডেট হওয়ার পর ট্যাগ ম্যানেজার আপনাকে আপনার ট্যাগিং সার্ভার আপডেট করার জন্য বার্তা দেখাতে পারে। যাইহোক, পূর্বরূপ পৃষ্ঠা ট্যাগিং সার্ভার সংস্করণ সম্পর্কে একটি আপ টু ডেট বার্তা দেখাবে।

প্রোডাকশন ডিপ্লয়মেন্ট টাইমআউটের সমস্যা সমাধান করুন

আপনি যখন ট্যাগিং সার্ভার তৈরি বা পুনরায় কনফিগার করতে সেটআপ স্ক্রিপ্ট চালান, তখন স্ক্রিপ্টের সময় শেষ হতে পারে। এটি ঘটতে পারে এমন কয়েকটি কারণ রয়েছে। সবচেয়ে সাধারণ দুটি হল:

  1. পরিষেবা অ্যাকাউন্টগুলির ভুল অনুমতি রয়েছে - কম্পিউট ইঞ্জিন এবং অ্যাপ ইঞ্জিন পরিষেবা অ্যাকাউন্টগুলি উত্পাদন স্থাপনা স্থাপন এবং রক্ষণাবেক্ষণের জন্য দায়ী৷ ডিফল্টরূপে, এগুলি যথাযথ অনুমতির সাথে প্রি-কনফিগার করা হয়। যাইহোক, কিছু ক্ষেত্রে, একটি প্রতিষ্ঠানের নীতি তাদের ভুল হতে পারে।

    1. Google ক্লাউড কনসোলে বাঁ-হাতের নেভিগেশন বারে IAM এবং অ্যাডমিন পৃষ্ঠাতে নেভিগেট করুন।
    2. কম্পিউট ইঞ্জিন পরিষেবা অ্যাকাউন্ট <project_number>-compute@developer.gserviceaccount.com এবং অ্যাপ ইঞ্জিন পরিষেবা অ্যাকাউন্ট <project_name>@appspot.gserviceaccount.com খুঁজুন।
    3. উভয় পরিষেবা অ্যাকাউন্টেরই Editor ভূমিকা থাকতে হবে । যদি উভয় অ্যাকাউন্টে Editor ভূমিকা না থাকে, তাহলে অ্যাকাউন্টের ডানদিকে পেন্সিল আইকনে ক্লিক করে, বিদ্যমান ভূমিকার ড্রপডাউনে ক্লিক করে, শীর্ষে স্ক্রোল করে এবং প্রকল্পে ক্লিক করে, তারপর সম্পাদকে ক্লিক করে ভূমিকাটি আপডেট করুন।
  2. অপর্যাপ্ত কোটা - উৎপাদন স্থাপনা কম্পিউট ইঞ্জিন কোটা গ্রহণ করে। প্রকল্পের পর্যাপ্ত কোটা না থাকলে, সংস্থানগুলি সরবরাহ করার চেষ্টা করার সময় স্থাপনার সময় শেষ হতে পারে।

    1. Google ক্লাউড কনসোলে বাঁ-হাতের নেভিগেশন বারে IAM এবং অ্যাডমিন পৃষ্ঠাতে নেভিগেট করুন, তারপরে বাঁ-হাতের নেভিগেশন বারে কোটা ট্যাবে ক্লিক করুন।
    2. পৃষ্ঠার উপরের দিকে, টেক্সট বক্সে ক্লিক করুন যা ফিল্টার টেবিল বলে এবং Compute Engine API এ টাইপ করুন। শুধুমাত্র ফলাফল ক্লিক করুন.
    3. যাচাই করুন যে সমস্ত কোটা স্থিতি সীমার মধ্যে আছে বা একটি সবুজ চেকমার্ক আছে।
    4. CPU- তে খুঁজুন এবং ক্লিক করুন। যাচাই করুন যে বর্তমান ব্যবহার এবং মোতায়েন করা দৃষ্টান্তের সংখ্যা এখনও স্থাপনার অঞ্চলের সীমার নীচে থাকবে৷