برچسب گذاری سمت سرور را با Cloud Run تنظیم کنید

این راهنما توضیح می دهد که چگونه:

  • یک سرور پیش نمایش برای فعال کردن ویژگی پیش نمایش برای کانتینر فراهم کنید.
  • یک سرور برچسب‌گذاری برای مدیریت ترافیک زنده تهیه کنید.
  • تعداد سرورهایی را که ظرف Google Tag Manager شما را اجرا می کنند، افزایش یا کاهش دهید.
  • پس از تهیه سرور، نسخه سرور برچسب گذاری خود را به روز نگه دارید.

پیش نیازها

  1. شما به یک حساب GCP نیاز دارید. اگر ندارید، یک حساب GCP جدید ایجاد کنید .
  2. شما به یک حساب صورت‌حساب GCP نیاز دارید. اگر ندارید، یک حساب صورت‌حساب GCP ایجاد کنید (به نقش ایجادکننده حساب صورت‌حساب نیاز دارد).
  3. به نقش سازنده پروژه و نقش کاربر حساب صورت‌حساب نیاز دارید. درباره افزودن نقش ها بیشتر بیاموزید.

ارائه یک سرور پیش نمایش و برچسب گذاری

می توانید یک سرویس Cloud Run را به صورت خودکار در Google Tag Manager یا به صورت دستی در Google Cloud ارائه دهید.

پیکربندی سرویس را ویرایش کنید

برای تغییر پیکربندی سرویس:

  1. Cloud Run را باز کنید .
  2. سرویس مورد نیاز برای تنظیم را انتخاب کنید.
  3. روی Edit & Deploy New Revision کلیک کنید.
  4. تغییرات ایجاد کنید و روی Deploy کلیک کنید.

هزینه اجرای ابری

در این پیکربندی Cloud Run، هر سرور تقریباً 45 دلار در ماه (USD) هزینه دارد. هر سرور یک نمونه Cloud Run با 1 vCPU و 0.5 گیگابایت حافظه با استفاده از مدل قیمت گذاری CPU همیشه اختصاص داده شده است.

توصیه می کنیم حداقل 2 نمونه را برای کاهش خطر از دست دادن داده ها در صورت قطع شدن سرور اجرا کنید. با این حال، ممکن است انتخاب کنید که سرورهای کمتر (یا بیشتر) را اجرا کنید. ما انتظار داریم که مقیاس خودکار 2-10 سرور، 35-350 درخواست در ثانیه را مدیریت کند، اگرچه عملکرد با تعداد تگ ها و کاری که آن برچسب ها انجام می دهند متفاوت است.

Cloud Run به صورت پویا با بارگذاری مقیاس خواهد شد. تنظیم max-instances بدترین سناریو برای اینکه چقدر باید برای منابع بپردازید است. Cloud Run این تعداد نمونه را ارائه نمی دهد مگر اینکه لازم باشد.

ماشین حساب Cloud Run

اختیاری: مهاجرت از App Engine

اگر قبلاً استقرار App Engine را ایجاد کرده‌اید و تأیید کرده‌اید که دیگر ترافیک دریافت نمی‌کند، برنامه App Engine را غیرفعال کنید تا از هزینه‌های صورت‌حساب غیرمنتظره جلوگیری کنید.

اختیاری: استقرار چند منطقه ای

اگر وب سایت شما حضور جهانی دارد یا می خواهید افزونگی را در سرویس ایجاد کنید، سرورهای برچسب گذاری را در چندین منطقه مستقر کنید.

قبل از اینکه تو شروع کنی:

  1. یک بار متعادل کننده ایجاد کنید
  2. به BACKEND_NAME انتخابی خود توجه کنید.

برای افزودن مناطق بیشتر به استقرار خود:

  1. REGION با منطقه ای که سرور پیش نمایش در آن مستقر است جایگزین کنید. اگر از گزینه‌های خط فرمان برای ارائه پیش‌نمایش و سرور برچسب‌گذاری پیروی کنید، ممکن است قبلاً پر شده باشد.
  2. CONTAINER_CONFIG با رشته پیکربندی ظرف از Tag Manager جایگزین کنید. اگر از گزینه‌های خط فرمان برای ارائه پیش‌نمایش و سرور برچسب‌گذاری پیروی کنید، ممکن است قبلاً پر شده باشد.
  3. منطقه جدیدی را که می‌خواهید سرور برچسب‌گذاری در آن مستقر شود، جایگزین NEW_REGION کنید.
  4. BACKEND_NAME با نامی که هنگام تهیه بار متعادل کننده انتخاب کردید جایگزین کنید.
  5. اختیاری: برای افزودن یک منطقه دیگر، متغیر NEW_REGION را جایگزین کنید و قطعه کد را دوباره اجرا کنید.
    gcloud run deploy "server-side-tagging" \
    --region NEW_REGION \
    --image gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable \
    --platform managed \
    --ingress all \
    --min-instances 2 \
    --max-instances 10 \
    --timeout 60 \
    --allow-unauthenticated \
    --no-cpu-throttling \
    --update-env-vars PREVIEW_SERVER_URL="$(
      gcloud run services describe server-side-tagging-preview \--region "REGION" \
      --format="value(status.url)")",CONTAINER_CONFIG="CONTAINER_CONFIG" && \

    gcloud compute network-endpoint-groups create server-side-tagging-neg \
    --region=NEW_REGION \
    --network-endpoint-type=SERVERLESS \
    --cloud-run-service="server-side-tagging" && \

    gcloud compute backend-services add-backend --global "BACKEND_NAME" \
    --network-endpoint-group-region=NEW_REGION \
    --network-endpoint-group=server-side-tagging-neg

اختیاری: غیرفعال کردن ورود به سیستم

درخواست ورود به سیستم

به طور پیش فرض، اطلاعات مربوط به هر درخواست منفرد (مانند مسیر درخواست، پارامترهای پرس و جو و غیره) ثبت می شود. اگر سرور برچسب‌گذاری شما درخواست‌های زیادی را در ماه انجام می‌دهد (مثلاً بیش از 1 میلیون)، آن پیام‌های گزارش ممکن است هزینه‌های قابل توجهی را برای ورود به سیستم داشته باشند. برای کاهش یا حذف هزینه‌های گزارش، توصیه می‌کنیم ثبت درخواست را غیرفعال کنید.

برای غیرفعال کردن ثبت درخواست:

  1. در پلتفرم Google Cloud، Logs Router را باز کنید. مطمئن شوید که در پروژه ای هستید که با شناسه کانتینر شما مطابقت دارد:
    تصویری از انتخابگر پروژه GCP، که یک نمونه شناسه ظرف مدیر برچسب را نشان می‌دهد.
  2. برای سطل Type : Cloud Logging ، Name : _Default line، منوی سرریز را انتخاب کنید، سپس روی Edit Sink کلیک کنید.
  3. در قسمت مقصد سینک ، سطل گزارشات _Default را انتخاب کنید.
  4. در بخش Choose logs to in sink ، یک خط جدید اضافه کنید. قانون زیر را در فیلتر گنجاندن موجود وارد کنید:

    NOT LOG_ID("run.googleapis.com/requests")
    
  5. همچنین برای غیرفعال کردن ورود به سیستم از بار متعادل کننده، یک خط جدید اضافه کنید و قانون زیر را به فیلتر موجود وارد کنید:

    NOT LOG_ID("requests")
    
  6. برای اعمال تغییرات ، سینک را به روز کنید . اکنون درخواست ها از ثبت نام حذف می شوند.

  7. بررسی کنید که هیچ درخواست جدیدی در گزارش های Logs Explorer ظاهر نمی شود.

ورود به سیستم کنسول

سرور برچسب‌گذاری، کلاینت‌ها یا برچسب‌ها در یک کانتینر می‌توانند پیام‌هایی را در کنسول ثبت کنند که ممکن است هزینه‌های ثبت را متحمل شوند. برای کاهش یا حذف هزینه‌های گزارش، می‌توانید پیام‌های گزارش ناخواسته کنسول را غیرفعال کنید.

لاگ های ناخواسته کنسول را شناسایی کنید:

  1. در GCP، Logs Explorer را باز کنید.
  2. به دنبال پیام‌های لاگ ناخواسته‌ای باشید که از برچسب‌های شما نشات می‌گیرد. مثلا:

    یک برچسب ممکن است گزارش های زیر را ارسال کند:

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

    به دنبال پیام های گزارش مربوطه در قسمت textPayload بگردید:
    تصویری از GCP Logs Explorer که نمونه گزارش‌ها را نشان می‌دهد.

برای غیرفعال کردن پیام گزارش کنسول:

  1. در پلتفرم Google Cloud، Logs Router را باز کنید. مطمئن شوید که در پروژه ای هستید که با شناسه کانتینر شما مطابقت دارد:
    تصویری از انتخابگر پروژه GCP، که یک نمونه شناسه ظرف مدیر برچسب را نشان می‌دهد.
  2. برای سطل Type : Cloud Logging ، Name : _Default line، منوی سرریز را انتخاب کنید، سپس روی Edit Sink کلیک کنید.
  3. در قسمت مقصد سینک ، سطل گزارشات _Default را انتخاب کنید.
  4. در بخش Choose logs to in sink ، یک خط جدید اضافه کنید. قانون زیر را در فیلتر گنجاندن موجود وارد کنید:

    NOT textPayload:"Custom message:"
    

    برای گزارش‌های کنسول خود، Custom message: متن را با یک رشته فرعی از گزارش کنسول که می‌خواهید غیرفعال کنید، جایگزین کنید. برای فیلترهای دقیق تر، از زبان جستجوی گزارش استفاده کنید.

  5. برای اعمال تغییرات ، سینک را به روز کنید . پیام logToConsole منطبق باید از ورود به سیستم حذف شود.

  6. بررسی کنید که هیچ پیام گزارش جدید کنسول در Logs Explorer ظاهر نمی شود.

2. استقرار را به دامنه سفارشی خود ترسیم کنید

برای راه اندازی یک دامنه سفارشی، از Application Load Balancer خارجی جهانی استفاده کنید.

3. URL سرور را به Google Tag Manager اضافه کنید

اکنون که سرور دارید، باید مطمئن شوید که Google Tag Manager می داند که باید از سرور شما استفاده کند.

  1. گوگل تگ منیجر را باز کنید.

  2. روی محفظه سروری که می‌خواهید به سرور برچسب‌گذاری خود اشاره کنید، کلیک کنید.

  3. تنظیمات ظرف سرور خود را در تب Admin > Container Settings باز کنید.

  4. روی Add URL کلیک کنید و URL سرور خود را جایگذاری کنید.

  5. ذخیره کنید و به فضای کاری خود برگردید.

4. اعتبار سنجی

اکنون که سرور برچسب‌گذاری خود را راه‌اندازی کرده‌اید، مطمئن شوید که همانطور که می‌خواهید کار می‌کند. در فضای کاری Tag Manager خود، روی دکمه Preview کلیک کنید. اگر صفحه پیش نمایش بارگیری شود، همه چیز به درستی تنظیم شده است.

پیش نمایش چندین URL

اگر چندین دامنه را به یک سرور برچسب گذاری نگاشت کرده اید، مطمئن شوید که هر URL به تنظیمات ظرف اضافه شده است.

اگر چندین URL ارائه کرده اید، همه مسیرها (رشته بعد از نام دامنه) باید مطابقت داشته باشند.

آثار کار نمی کند
URL 1: example.com/abc
URL 2: example2.com/abc
URL 1: example.com/abc
URL 2: example2.com/def

اگر چندین URL اضافه شود، نمادی را در کنار دکمه Preview خواهید دید که به شما امکان می دهد URL را برای پیش نمایش انتخاب کنید.

نسخه سرور برچسب گذاری را به روز کنید

به‌روزرسانی‌های جدید سرور برچسب‌گذاری شامل رفع آسیب‌پذیری‌های امنیتی و ویژگی‌های جدید است. توصیه می کنیم حداقل سرور برچسب گذاری خود را برای هر نسخه اصلی به روز کنید (مثلاً ارتقاء از نسخه 1.xx به 2.xx) زمانی که مدیر برچسب به شما اطلاع می دهد که به روز رسانی کنید.

برای به‌روزرسانی سرور برچسب‌گذاری خود، یک نسخه جدید را با استفاده از همان تنظیماتی که قبلاً استفاده می‌کردید، اجرا کنید.

  1. Cloud Run را باز کنید.
  2. سرویسی را که می خواهید به روز کنید انتخاب کنید.
  3. روی Edit & Deploy New Revision کلیک کنید.
  4. مطمئن شوید که URL تصویر Container روی gcr.io/cloud-tagging-10302018/gtm-cloud-image:stable تنظیم شده است و روی Deploy کلیک کنید.

برای تأیید موفقیت آمیز بودن به روز رسانی:

  1. در ظرف سرور خود، روی دکمه Preview کلیک کنید تا یک جلسه اشکال زدایی جدید شروع شود و یک درخواست در یک برگه جداگانه ارسال شود.
  2. در خلاصه، تب Console را انتخاب کنید و مطمئن شوید که هیچ پیامی وجود ندارد که از شما بخواهد سرور برچسب گذاری را به روز کنید.

مدیر برچسب ممکن است پیام هایی را نشان دهد که از شما می خواهد سرور برچسب گذاری خود را تا یک روز پس از به روز رسانی موفقیت آمیز سرور به روز کنید. با این حال، صفحه پیش نمایش یک پیام به روز در مورد نسخه سرور برچسب گذاری نشان می دهد.