将搜索分析事件绑定到用户
默认情况下,Meilisearch 使用 IP 地址来识别用户并计算总用户指标。本指南将向您展示如何使用 X-MS-USER-ID
HTTP 标头手动将分析事件链接到特定用户。
如果您从后端进行搜索,这将非常有用,因为否则所有搜索都将显示为来自服务器的 IP 地址,这使得难以准确跟踪单个用户的数量。
要求
- 已启用分析和监控功能的 Meilisearch Cloud 项目
- 用于提交分析事件的工作管道
将 X-MS-USER-ID
添加到您的搜索查询中
在搜索请求中包含 X-MS-USER-ID
标头
curl \
-X POST 'http://127.0.0.1:7700/indexes/INDEX_NAME/search' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer DEFAULT_SEARCH_API_KEY' \
-H 'X-MS-USER-ID: MEILISEARCH_USER_ID' \
--data-binary '{}'
将 MEILISEARCH_USER_ID
替换为任何唯一标识该用户的 value。当从您自己的后端运行搜索时,这可能是经过身份验证的用户 ID,或者可能是用户 IP 地址的哈希值。
将 X-MS-USER-ID
添加到分析事件中
接下来,将您的分析事件提交到分析端点。在您的 API 调用中发送相同的标头和 value
curl \
-X POST 'https://edge.meilisearch.com/events' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer DEFAULT_SEARCH_API_KEY' \
-H 'X-MS-USER-ID: MEILISEARCH_USER_ID' \
--data-binary '{
"eventType": "click",
"eventName": "Search Result Clicked",
"indexUid": "products",
"objectId": "0",
"position": 0
}'
结论
在本指南中,您了解了如何通过为搜索请求和分析事件指定相同的 HTTP 标头来将分析事件绑定到特定用户。