如何识别健康检查请求?
How to identify health check request?
我的应用每小时收到大约 10 个健康检查请求的健康检查,这让我的对话日志变得混乱。
由于健康检查没有屏幕功能,我们的后端服务器将请求响应为Google首页正在请求。
有什么方法可以检测请求是否是健康检查请求?
首先,您应该像Google家一样回应。你必须用有效的输出来回应,否则它会拒绝你。因此,不要试图在您的回复中过于花哨 - 只需使用它来避免使您的分析和日志混乱。
health check 看起来像一个普通的欢迎请求。 ping 将包含一个名为 is_health_check
的参数,其中 boolValue
为真,textValue
为 1。如果您使用的是 Dialogflow,这将是 [=14= 处的参数之一].对于 Actions SDK,它将位于 data.inputs[0]
.
这是 Dialogflow 的部分示例:
{
"originalRequest": {
"source": "google",
"version": "2",
"data": {
"surface": {
"capabilities": [
{
"name": "actions.capability.AUDIO_OUTPUT"
}
]
},
"inputs": [
{
"rawInputs": [
{
"query": "Sample",
"inputType": "VOICE"
}
],
"arguments": [
{
"textValue": "1",
"name": "is_health_check",
"boolValue": true
}
],
"intent": "actions.intent.MAIN"
}
],
...
}
我的应用每小时收到大约 10 个健康检查请求的健康检查,这让我的对话日志变得混乱。 由于健康检查没有屏幕功能,我们的后端服务器将请求响应为Google首页正在请求。
有什么方法可以检测请求是否是健康检查请求?
首先,您应该像Google家一样回应。你必须用有效的输出来回应,否则它会拒绝你。因此,不要试图在您的回复中过于花哨 - 只需使用它来避免使您的分析和日志混乱。
health check 看起来像一个普通的欢迎请求。 ping 将包含一个名为 is_health_check
的参数,其中 boolValue
为真,textValue
为 1。如果您使用的是 Dialogflow,这将是 [=14= 处的参数之一].对于 Actions SDK,它将位于 data.inputs[0]
.
这是 Dialogflow 的部分示例:
{
"originalRequest": {
"source": "google",
"version": "2",
"data": {
"surface": {
"capabilities": [
{
"name": "actions.capability.AUDIO_OUTPUT"
}
]
},
"inputs": [
{
"rawInputs": [
{
"query": "Sample",
"inputType": "VOICE"
}
],
"arguments": [
{
"textValue": "1",
"name": "is_health_check",
"boolValue": true
}
],
"intent": "actions.intent.MAIN"
}
],
...
}