本頁說明如何查看及刪除使用者事件。如要瞭解如何在使用者事件發生時記錄這些事件,請參閱「記錄即時使用者事件」。如要匯入過去事件的使用者事件資料,請參閱「匯入歷來的使用者事件」。
教學課程:重新彙整使用者事件
本教學課程將說明如何向 userEvents:rejoin
端點提出 POST
要求,重新彙整使用者事件。
如要直接在 Cloud Shell 編輯器中按照逐步指南操作,請按一下「Guide me」:
移除使用者事件的教學課程
本教學課程將說明如何清除使用者事件。
如要直接在 Cloud Shell 編輯器中按照逐步指南操作,請按一下「Guide me」:
查看匯總使用者事件資訊
在「Search for commerce」控制台的「資料」頁面中,點選「事件」分頁標籤,即可查看事件整合指標。這個頁面會顯示去年寫入或匯入的所有事件。資料擷取成功後,指標最多可能需要 24 小時才會顯示。
重新彙整使用者事件
您可以向 userEvents:rejoin
端點提出 POST
要求,重新加入使用者事件。
重新彙整作業會彙整指定事件與最新版的產品目錄。
如果系統擷取特定使用者事件時,相關產品尚未列入目錄,則該事件就會視為未彙整。未彙整的事件缺少詳細的產品資訊,不適合用於訓練模型及提供結果。
重新彙整作業不僅可以處理未彙整的事件,如果事件所彙整的產品目錄有誤,也能加以修正。
您必須具備 Retail AI 管理員 IAM 角色,才能呼叫這個方法。重新加入作業可能需要數小時或數天才能完成。
curl
請根據要重新加入的事件類型設定 userEventRejoinScope
:
USER_EVENT_REJOIN_SCOPE_UNSPECIFIED
:預設值。針對已加入和未加入的事件觸發重新加入。JOINED_EVENTS
:只針對已加入的事件觸發重新加入。UNJOINED_EVENTS
:只針對未加入的事件觸發重新加入。
以下範例只會針對未加入的事件觸發重新加入:
curl -X POST \ -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ -H "Content-Type: application/json; charset=utf-8" \ --data "{ 'userEventRejoinScope': 'UNJOINED_EVENTS' }" \ "https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/userEvents:rejoin"
您應該會收到類似下方的回應物件:
{ "name": "projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/OPERATION_ID" }
你可以查看重新加入的狀態。請將 OPERATION_ID 替換為重新加入方法傳回的作業 ID:
curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/OPERATION_ID"
作業完成後,作業狀態會傳回為 done
:
{ "name": "projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/OPERATION_ID", "done": true, "response": { "@type": "type.googleapis.com/google.cloud.retail.v2.RejoinUserEventsResponse", "rejoinedUserEventsCount": "1" } }
Java
移除使用者事件
一般來說,您應該在記錄使用者事件後,將其保留在原處。我們不建議您清除事件。
事件清除作業最多可能需要幾天才能完成。如果您打算完全重設使用者事件,請考慮改為建立新專案。
如果您有未正確記錄的使用者事件,且需要移除這些事件,可以使用 userEvents.purge
方法。
使用篩選條件字串指定要移除的事件。這項功能可透過 eventTime
、eventType
、visitorID
和 userID
欄位篩選,有選擇地刪除使用者事件。
由於您無法復原刪除作業,因此請先進行模擬執行,再刪除使用者事件,以便測試篩選字串。根據預設,force
欄位會設為 false
;這項設定會傳回要刪除的事件數量,但不會實際刪除事件。準備實際刪除使用者事件時,請將 force
欄位設為 true
。
curl
這個範例會篩選時間範圍,但必須使用 Zulu Time 日期格式。force
欄位已設為 false
。
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token)"" \ -H "Content-Type: application/json; charset=utf-8" \ --data '{ "filter":"eventTime > \"2019-12-23T18:25:43.511Z\" eventTime < \"2019-12-23T18:30:43.511Z\"", "force":"false" }' \ "https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/userEvents:purge"
您應該會收到類似下方的回應物件,其中 purge-user-events-54321
是作業 ID:
{ "name": "projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/purge-user-events-54321" }
以下範例會要求作業狀態:
curl -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \ "https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/OPERATION_ID"
作業狀態範例:
{ "name": "projects/PROJECT_ID/locations/global/catalogs/default_catalog/operations/OPERATION_ID", "done": true, "response": { "@type": "type.googleapis.com/google.cloud.retail.v2.PurgeUserEventsResponse", "purgedEventsCount": "1" } }
將 force
欄位設為 true
會強制執行刪除作業。
curl -X POST \ -H "Authorization: Bearer "$(gcloud auth application-default print-access-token)"" \ -H "Content-Type: application/json; charset=utf-8" \ --data '{ "filter":"eventTime > \"2019-12-23T18:25:43.511Z\" eventTime < \"2019-12-23T18:30:43.511Z\"", "force":"true" }' \ "https://retail.googleapis.com/v2/projects/PROJECT_ID/locations/global/catalogs/default_catalog/userEvents:purge"
Java
使用使用者事件篩選器
您可以篩選要刪除的使用者事件。
篩選器是包含下列一或多個限制的字串:
eventTime
提供時間戳記,用於限定要刪除的事件。您可以使用大於 (>) 或小於 (<) 符號,指定這個篩選器一次或兩次。時間範圍必須是單一連續區塊。
eventType
將要刪除的事件限制為單一事件類型。
visitorID
將要刪除的事件限制為單一訪客 ID。
userID
將要刪除的事件限制在單一使用者 ID。
系統只會刪除符合所有限制條件的使用者活動。
如要刪除 2019 年 2 月 1 日當天或之後記錄的所有 add-to-cart
類型使用者事件,請提供下列篩選字串:
eventTime > "2019-02-01T00:00:00Z" eventType = add-to-cart