伺服器端代碼簡介

伺服器端代碼是使用 Google 代碼管理工具指定 跨裝置使用應用程式伺服器容器使用相同的代碼、觸發條件和 您慣用的變數模型,同時提供新工具 可評估任何事件發生的使用者活動

未設定伺服器端代碼的情況下,通常採用 將評估資料傳送到各種收集伺服器。 圖 1 舉例說明 Google 代碼管理工具網站容器在 網路瀏覽器會將資料傳送至多個伺服器。

圖表:採用 Google 代碼管理工具網站容器的檢測網站

圖 1:採用 Google 代碼管理工具網站容器的檢測網站示意圖。

相反地,伺服器容器不會在使用者的瀏覽器或 電話。而是在控管的伺服器上執行。

這張圖表顯示使用伺服器端代碼容器進行檢測的網站。

圖 2:使用伺服器容器的標記設定範例。

伺服器會在您自己的 Google Cloud Platform 專案中執行 ,且只有您 存取伺服器中的資料,直到您選擇傳送至其他地方。您 完全掌控資料的形狀及資料轉送方式 伺服器標記是使用 採用沙箱機制的 JavaScript 技術。權限可讓您瞭解代碼的功能,以及 政策能讓您設定容器的邊界

伺服器會接收來自使用者裝置的網路要求,然後轉換這些要求 要求組成事件每個事件都會由容器的 代碼、觸發條件和變數伺服器中的代碼、觸發條件和變數 容器的運作方式與在其他類型的容器中相同:觸發條件 請檢查每個事件來找出特定情況,並在適當的情況下觸發火災 代碼,傳送要處理的事件資料。

這個模型會衍生出兩個伺服器容器的重要問題:

  • 評估資料如何從使用者裝置傳輸到伺服器容器?
  • 傳送至伺服器容器的評估資料如何轉換成事件?

這兩個問題的答案都是一種新的實體,可用於伺服器容器:用戶端

客戶的運作方式

用戶端是指使用者裝置上所執行軟體與裝置之間的轉接器 伺服器容器用戶端從裝置接收測量資料,然後轉換 將資料轉換為一或多個事件、在容器中處理要處理的資料 並封裝結果以傳回要求者。

內容好多!接下來分別介紹各個部分。 圖 3 顯示從使用者網頁傳送至伺服器容器的資料 並將網頁伺服器傳遞至伺服器容器

這張圖表顯示使用伺服器端代碼容器進行檢測的網站。

圖 3:由不同用戶端處理每個資料串流。

用戶端從裝置接收測量資料。假設您要 分別在三個地方評估使用者活動:網站、手機應用程式和智慧型 烤麵包機。你的網站使用 Google Analytics,但手機應用程式使用 Firebase Analytics 和烤麵包機採用名為「ToastMeasure」的專屬通訊協定。

如果要使用 Google 代碼管理工具檢查這三種裝置,通常都需要用到 不同的容器由於伺服器容器並未執行 則能透過同一容器處理所有使用者的數據分析檢測 三個裝置平台不過,發生問題。這些裝置的通訊方式不盡相同。Google Analytics 通訊協定與 ToastMeasure 通訊協定這時客戶就能共襄盛舉。

如為這三個容器,伺服器容器有三個用戶端。 傳送至容器的每個要求都會由 優先順序最高的客戶。每個客戶首先 才是決定知道該如何處理這類要求。可以的話 客戶「版權聲明」並繼續處理 和資料處理之間宣稱要求的行為可避免後續用戶端 備用資源如果用戶端無法處理該要求,就不會執行任何動作,且會允許 其他用戶端決定是否處理要求。

用戶端會將要求資料轉換為一或多個事件。 ToastMeasure 用戶端聲明要求的擁有權後,必須將 容器的其他部分都能理解內容那是 一組事件

事件是您想要評估的事件,可以是任何內容: start_toastingfinish_toastingbuy_bread。此外還有 建議 但唯一的必要條件是 讓容器能理解這些特徵

用戶端執行容器。用戶端已認領並處理要求 轉換為事件接下來要處理代碼、觸發條件和變數了。用戶端 會將每個事件傳遞至容器的其餘部分進行後續處理

用戶端會封裝結果,並傳回裝置。產生 容器已執行完畢,現在該回應烤箱。回應程序 產生的內容也許客戶直接說「好,完成了」也許其中一個標記 將要求重新導向至其他收集伺服器。也可能是其中一個標記 指示烤麵包機上的燈光變換顏色。無論如何 此時,用戶端應負責封裝結果,再將結果 傳送給要求者

幸好,代碼管理工具會為您處理大部分的相關作業。伺服器容器 當中包含三個客戶:Google Analytics 4、Google Analytics:通用 Analytics 和 Measurement Protocol客戶會提供您需要的工具 建立 都會在 Docker 容器中執行

簡短範例

以下舉一個簡單的例子,說明所有元素如何彼此搭配運作。於 在這個範例中,您將建立下列項目:

  1. 使用 gtag.js 傳送 click 事件至 伺服器容器
  2. 接收事件的 Google Analytics 4 用戶端。
  3. 透過 click 事件觸發的觸發條件。
  4. 將事件資料傳送至 Google Analytics 的 Google Analytics 4 代碼 和資料處理之間

在這個範例中,我們假設您已建立 已部署 管理伺服器容器

設定 gtag.js

首先,請設定 gtag.js 將資料傳送至您的伺服器容器。取代為 gtag.js 則是將資料傳送至伺服器容器的做法,就像將資料傳送到伺服器容器一樣。 Google Analytics,然後進行一次修改。如下方範例頁面所示,將 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 替換成您的代碼 ID。 將 https://analytics.example.com 替換成您的伺服器容器網址。

接下來,新增 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 替換為您的代碼 ID。將 https://analytics.example.com 替換成您的伺服器容器網址。

透過這項設定,事件處理常式 (例如 sendEvent() 函式) 要加入此範例的運算子,則會將 click 事件傳送至伺服器容器。

Google Analytics 4 客戶

容器在連上伺服器後必須接收用戶端來接收事件。 幸好,伺服器容器內建 Google Analytics 4 用戶端 ,因此這個步驟已完成。

點擊觸發條件

接著,建立透過 click 事件觸發的觸發條件。建立自訂 觸發條件事件名稱內建變數等於時觸發 「按一下」。

觸發條件設定

Google Analytics 4 代碼

最後,將 GA4 代碼附加至觸發條件。就像用戶端一樣 隨附 GA4 代碼建立代碼、調整設定 而且容器已完成連結GA4 用戶端和 GA4 代碼經過特別設計 共同合作也就是說,您只需要建立 GA4 代碼 系統會自動從 用戶端。

預覽容器

容器設定完成後,請按一下「預覽」,透過以下方式造訪您的網站: 另一個瀏覽器視窗。將要求和事件傳送至伺服器時 您會在容器的左側看到 預覽頁面。

如果對變更感到滿意,請發布伺服器容器。

將伺服器設為使用第一方放送模式的實際工作環境模式

傳送任何正式環境流量至您的伺服器容器之前,我們強烈建議您 建議您在 第一方網域和 將伺服器升級至 實際工作環境模式