使用云眼Agent
使用云眼Agent
云眼Agent提供 REST API,支持运行灰度发布(特性标帜)规则,例如 A/B 测试和目标标帜交付。
云眼 Agent 提供的功能与我们所有常规的、特定于语言的 SDK 相同。云眼 Agent的核心是云眼 Go SDK。
运行灰度发布(特性标帜)规则
决定终端节点将用户分桶为灰度发布(特性标帜)变体,作为标帜规则的一部分。它在一个标帜的多个启用或一个禁用变体之间进行选择。标帜规则包括 A/B 测试和目标灰度发布(特性标帜)传递。若要运行标帜规则,请使用以下命令:
POST /v1/decide?keys={flagKey}
在请求正文中,包括 和 任何 .完整请求如下所示: application/json``userId``decideOptions
卷曲
curl --location --request POST 'http://localhost:8080/v1/decide?keys=YOUR_FLAG_1&keys=YOUR_FLAG_2' --header 'X-云眼-SDK-Key: YOUR_SDK_KEY' --header 'Accept: text/event-stream' --header 'Content-Type: application/json' --data-raw '{ "decideOptions": [ ], "userId": "string", "userAttributes": { "additionalProp1": {} } }
这将返回一个 云眼Decision 对象数组,其中包含运行标帜规则所需的所有信息,例如:
- 将此用户存储为启用或禁用的灰度发布(特性标帜)变体的决定。
- 任何相应的灰度发布(特性标帜)变量值。
例如:
JSON
{ "userContext": { "UserId": "test-user", "Attributes": { "logged-in": true, "location": "usa" } }, "flagKey": "my-feature-flag", "ruleKey": "my-a-b-test", "enabled": false, "variationKey": "control_variation" "variables": { "my-var-1": "cust-val-default-1", "my-var-2": "cust-va1-default-2" }, "reasons": [] }
响应由为提供的功能密钥定义的 A/B 测试和交付确定,遵循与任何云眼灰度发布(特性标帜)AB实验 SDK 相同的规则。
🚧 重要
如果用户被分桶到 A/B 测试中,则此终结点将调度决策事件。
认证
要进行身份验证,请将开发工具包密钥作为 API 调用中命名的标头传递给云眼Agent。可以在 app.eyeofcloud.com 的**“设置**>环境”>“SDK 密钥”下找到 SDK 密钥。请记住,每个环境都有不同的 SDK 密钥。X-云眼-SDK-Key
获取所有决策
要在单个请求中获取访问者的所有灰度发布(特性标帜)决策,请省略灰度发布(特性标帜)参数:
POST /v1/decide
要获取多个键的决策,请指定多个键参数,例如:
keys=flag_key_1&keys=flag_key_2
若要仅接收访问者的已启用灰度发布(特性标帜),请使用请求正文中的 decide 选项:
application/json
卷曲
--header 'Content-Type: application/json' \ --data-raw '{ "userId": "test-user" "decideOptions": [ "ENABLED_FLAGS_ONLY" ] }'
跟踪转化
要跟踪事件,请使用您在 SDK 的跟踪 API 中使用的相同跟踪终端节点:
POST /v1/track?eventKey={eventKey}
成功的转换事件请求没有响应正文。
接口参考
有关云眼Agent API 的更多详细信息,请参阅完整的Agent API 参考。