مقدمة عن وضع العلامات من جهة الخادم

يُعتبر وضع العلامات من جهة الخادم طريقة جديدة لاستخدام أداة "إدارة العلامات من Google" لقياس التطبيق عبر الأجهزة. تستخدم حاويات الخادم نفس العلامة والمشغِّل الذي اعتدت عليه، مع توفير أدوات جديدة تسمح أيضًا قياس نشاط المستخدم أينما حدث.

تعتمد الإعدادات النموذجية لوضع العلامات بدون وضع العلامات من جهة الخادم على في الصفحة لإرسال بيانات القياس إلى خوادم جمع متنوعة. يوضِّح الشكل 1 مثالاً على كيفية تشغيل حاوية ويب في أداة "إدارة العلامات من Google" في متصفح الويب يرسل البيانات إلى خوادم متعددة.

مخطّط بياني لموقع إلكتروني مصمّم لاستخدام حاوية ويب على أداة "إدارة العلامات من Google"

الشكل 1: رسم بياني لموقع إلكتروني تم إعداده لاستخدام حاوية ويب في أداة "إدارة العلامات من Google".

وعلى النقيض من ذلك، لا يتم تشغيل حاوية الخادم في متصفح المستخدم أو على هاتفك. وبدلاً من ذلك، يتم تشغيله على خادم تتحكم فيه.

مخطّط بياني لموقع يتمّ قياسه باستخدام حاوية وضع العلامات من جهة الخادم

الشكل 2: مثال على إعدادات وضع العلامات التي تستخدِم حاوية خادم

يعمل الخادم في مشروعك على Google Cloud Platform أو في بيئة مختلفة من اختيارك - ولن يكون لدى أحد سواك إلى البيانات في الخادم إلى أن تختار إرسالها إلى مكان آخر. لديك تحكمًا كاملاً في كيفية تشكيل تلك البيانات، وأين يتم توجيهها من الخادم. يتم إنشاء العلامات باستخدام وضع JavaScript في وضع الحماية التكنولوجيا. وتمنحك الأذونات مستوى رؤية لما يمكن أن تفعله العلامة، تتيح لك وضع حدود حول الحاوية.

يتلقى الخادم طلبات الويب من جهاز المستخدم ويحول تلك الطلبات الطلبات إلى فعاليات. تتم معالجة كل حدث من خلال حدث العلامات والمشغلات والمتغيرات. العلامات وعوامل التشغيل والمتغيّرات في الخادم الحاوية تعمل تمامًا كما تعمل في أنواع الحاويات الأخرى: المشغلات فحص كل حدث للبحث عن شروط معينة، وعند الضرورة، تنشيط العلامات التي تُرسِل بيانات الأحداث لتتم معالجتها.

يطرح هذا النموذج سؤالَين مهمّين لحاويات الخوادم:

  • كيف يتم نقل بيانات القياس من جهاز المستخدم إلى حاوية الخادم؟
  • كيف يتم تحويل بيانات القياس المُرسَلة إلى حاوية خادم إلى حدث؟

الإجابة عن كلا السؤالين هي نوع جديد من الكيانات يمكن استخدامها في الخادم الحاويات: client.

آلية عمل العملاء

البرامج العميلة هي محوّلات بين البرنامج الذي يعمل على جهاز المستخدم حاوية الخادم. يتلقى العميل بيانات القياس من أحد الأجهزة، ويحول هذه البيانات إلى حدث واحد أو أكثر، أو مسارات البيانات لتتم معالجتها في الحاوية، وحزم النتائج لإرسالها مرة أخرى إلى مقدم الطلب.

هذه كثير من الأشياء! لنلقِ نظرة عن كثب على كل جزء على حدة. يعرض الشكل 3 البيانات التي تتدفق إلى حاوية الخادم من شبكة ويب المستخدم المتصفح، ومن خادم الويب إلى حاوية الخادم.

مخطّط بياني لموقع يتمّ قياسه باستخدام حاوية وضع العلامات من جهة الخادم

الشكل 3: يتعامل برنامج مختلف مع كل مصدر من البيانات.

يتلقّى العملاء بيانات القياس من أحد الأجهزة. لنفترض أنك تريد قياس نشاط المستخدِم في ثلاثة أماكن: موقع إلكتروني، وتطبيق على الهاتف، وموقع ذكي محمصة خبز. يستخدِم موقعك الإلكتروني "إحصاءات Google"، في حين أنّ تطبيق هاتفك يستخدم Firebase. وتستخدم أداة "إحصاءات Google" بروتوكولاً خاصًا باسم "Toastmeasure".

يتطلب قياس أداء هذه الأجهزة الثلاثة باستخدام "إدارة العلامات من Google" عادةً حاوية مختلفة لكل نظام أساسي. وبما أنّ حاوية الخادم لا تعمل على الجهاز، يمكن للحاوية نفسها معالجة أدوات التحليلات لجميع بثلاث منصات للأجهزة. لكن هناك مشكلة. هذه الأجهزة لا تناسب جميع تواصل بالطريقة ذاتها. لا يتطابق بروتوكول Google Analytics مع بروتوكول ToastMeasurement. هنا يأتي دور العملاء.

بدلًا من هذه الحاويات الثلاث، تحتوي حاوية الخادم على ثلاثة عملاء. ستتم معالجة كل طلب يأتي في الحاوية من قِبل كل عميل في ترتيب الأولوية، العميل ذو الأولوية الأعلى أولاً. أول شيء سيحدده كل عميل فعله هو أن تقرر ما إذا كان يعرف كيفية معالجة هذا النوع من الطلبات. إذا كان ذلك ممكنًا، العميل "يطالب" الطلب ويستمر إلى المرحلة التالية من قيد المعالجة. تؤدي المطالبة بالطلب إلى منع العملاء اللاحقين من الجري. فإذا لم يتمكن العميل من معالجة الطلب، فلن يفعل أي شيء ويسمح عملاء آخرين ليقرروا ما إذا كانوا سيتعاملون مع الطلب أم لا.

يحوّل العملاء بيانات الطلب إلى حدث واحد أو أكثر. بعد أن يطالب عميل ToastMeasurement بطلب، يجب تحويل تطلبه إلى شيء تفهمه بقية الحاوية. هذا شيء مجموعة من الأحداث.

الأحداث هي الأشياء التي تحدث وتريد قياسها. ويمكن أن تكون أي شيء: start_toasting أو finish_toasting أو buy_bread تتوفر بعض التوصيات حول بنية وينشئها أي عميل، ولكن المطلب الوحيد هو أن باقي تستوعبها الحاوية.

يشغّل العملاء الحاوية. طالَب العميل بالطلب وسلّمه. إلى أحداث. حان الوقت الآن للعلامات والمشغلات والمتغيرات. العميل يمرر كل حدث إلى باقي الحاوية لإجراء مزيد من المعالجة.

يحزم العملاء النتائج لإرسالها مرة أخرى إلى الجهاز. بمجرد تم تشغيل الحاوية، فقد حان الوقت للرد على محمصة الخبز. يمكن أن يستغرق الرد بأشكال عديدة. ربما يقول العميل "حسنًا، تم". ربما تريد إحدى العلامات إعادة توجيه الطلب إلى خادم مجموعة آخر. أو ربما تكون إحدى العلامات يخبر المصابيح على محمصة الخبز بتغيير ألوانها. كل ما كان من المفترض أن تتمثل مهمة العميل في تجميع النتائج وإعادة إرسالها إلى مقدم الطلب.

ولحسن الحظ، تتعامل أداة "إدارة العلامات من Google" مع الكثير من هذه العمليات نيابةً عنك. تأتي حاويات الخادم ثلاثة عملاء من بينهم: "إحصاءات Google 4" و"إحصاءات Google": Universal و"إحصاءات Google" وMeasurement Protocol. يقدم هؤلاء العملاء الأدوات التي تحتاجها لبدء قياس حالة تطبيقك فور الانتهاء من إنشاء .

مثال قصير

لنستعرض مثالاً سريعًا لنرى كيف تتلاءم جميع القطع معًا. ضِمن هذا المثال، ستقوم بإنشاء ما يلي:

  1. موقع إلكتروني بسيط يستخدِم gtag.js لإرسال حدث click إلى حاوية الخادم.
  2. عميل "إحصاءات Google 4" يتلقّى الحدث.
  3. عامل مشغِّل يتم تنشيطه على حدث click.
  4. علامة "إحصاءات Google 4" التي تُرسِل بيانات الحدث إلى "إحصاءات Google" للحساب قيد المعالجة.

في هذا المثال، سنفترض أنك قمت بالفعل بإنشاء تم النشر حاوية الخادم.

ضبط مقتطف gtag.js

أولاً، يجب ضبط gtag.js لإرسال البيانات إلى حاوية الخادم. مع gtag.js، يعمل إرسال البيانات إلى حاوية الخادم تمامًا مثل إرسال البيانات إلى "إحصاءات Google"، مع تعديل واحد وكما في صفحة المثال أدناه، قم بتعيين خيار إعداد server_container_url للتوجيه إلى حاوية الخادم.

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'TAG_ID', {
    server_container_url: 'https://analytics.example.com',
  });
</script>

استبدِل TAG_ID بـ رقم تعريف العلامة. استبدِل https://analytics.example.com بعنوان URL لحاوية الخادم.

بعد ذلك، أضِف الدالة sendEvent() للتعامل مع أحداث click:

<!-- Google tag (gtag.js) -->
<script async src="https://www.googletagmanager.com/gtag/js?id=TAG_ID"></script>
<script>
  window.dataLayer = window.dataLayer || [];
  function gtag(){dataLayer.push(arguments);}
  gtag('js', new Date());

  gtag('config', 'TAG_ID', {
    server_container_url: 'https://analytics.example.com',
  });

  function sendEvent() {
    gtag('event', 'click');
  }
</script>

<button onclick="javascript:sendEvent()">Send Event</button>

استبدِل TAG_ID بـ رقم تعريف العلامة. استبدِل https://analytics.example.com بعنوان URL لحاوية الخادم.

باستخدام هذه الإعدادات، يمكن استخدام معالِجات الأحداث، مثل الدالة sendEvent(). في هذا المثال، سيتم إرسال حدث click إلى حاوية الخادم.

عميل "إحصاءات Google 4"

تحتاج حاويتك إلى عميل لتلقّي الحدث فور وصوله إلى الخادم. لحسن الحظ، تأتي حاويات الخوادم مع برنامج "إحصاءات Google 4". مثبتة مسبقًا، وبذلك تكون قد أنجزت هذه الخطوة بالفعل.

مشغِل النقر

بعد ذلك، أنشِئ عامل تشغيل يتم تنشيطه على حدث click. إنشاء رمز مخصّص المشغِّل الذي يتم تنشيطه عندما يكون المتغيّر المُضمَّن في اسم الحدث يساوي "انقر".

إعداد المشغِّل

علامة "إحصاءات Google 4"

أخيرًا، أرفِق علامة "إحصاءات Google 4" بعامل التفعيل. وكما هو الحال مع العملاء، فإن حاوية الخادم مع علامة "إحصاءات Google 4" ما عليك سوى إنشاء العلامة وضبط إعداداتك والآن قمت بتوصيل حاويتك. يتم تصميم برامج "إحصاءات Google 4" وعلامات "إحصاءات Google 4". للعمل معًا. وهذا يعني أنّ كل ما عليك فعله هو إنشاء علامة "إحصاءات Google 4" تلقائيًا من الأحداث التي تصدر من البرنامج.

معاينة الحاوية

الآن بعد إعداد الحاوية، انقر على معاينة. زيارة موقعك الإلكتروني نافذة متصفح مختلفة. عند إرسال الطلبات والأحداث إلى خادمك فستجد الطلبات والأحداث مدرجة على الجانب الأيمن من صفحة المعاينة.

عندما تكون راضيًا عن التغييرات، انشر حاوية الخادم.

ضبط خادمك في وضع الإنتاج من خلال عرض الطرف الأول

قبل إرسال أي حركة زيارات إنتاجية إلى حاوية الخادم، فإننا ننصح ننصح بتثبيت الخادم على نطاق الطرف الأول تجري ترقية الخادم إلى وضع الإنتاج: