0

我使用 Apigee 作为 API 代理。我为 Apigee 和我的后端服务器之间的连接设置了 2 路 ssl。我从 Apigee 代理(HTTP 状态代码为 404)收到间歇性的 CLASSIFICATION_FAILED 响应代码,而其他时候 Apigee 成功地将请求转发到我的后端服务器。当我为 API 打开跟踪时,当我收到 CLASSIFICATION_FAILED 错误时,Apigee 跟踪甚至不会记录错误请求的事务。我们让这个 API 工作了几个月。这个问题最近才出现。有谁知道是什么原因造成的?

谢谢!

4

4 回答 4

1

部署代理后,工件实际上会部署到集群中的多个节点。在极少数情况下,一个或多个此类节点无法成功部署代理。在这种情况下,您可能会收到间歇性的 404 响应。

克服这个问题

  1. 请重新部署您的应用程序
  2. 检查所有节点上的状态部署。您可以使用以下 API 调用来执行此操作。
curl -v https://api.enterprise.apigee.com/v1/organizations/{your-org-name}/environments/{env-name}/apis/{api-proxy-name}/deployments -u {your -apigee-edge-username}:{您的apigee-edge-password}

响应应如下所示,其中所有节点应显示已部署状态。


{
  “环境”:“产品”,
  “名称”:“您的 api 代理名称”,
  “组织”:“您的组织名称”,
  “修订” : [ {
    “配置” : {
      “basePath”:“/”,
      “脚步” : [ ]
    },
    “名称”:“62”,
    “服务器” : [ {
      “状态”:“已部署”,
      “类型”:[“消息处理器”],
      “uUID”:“e6f83b53-8ab1-4325-bb77-df1bc4df8d59”
    }, {
      “状态”:“已部署”,
      “类型”:[“消息处理器”],
      “uUID”:“8a4549fe-ceff-44cf-967f-ab4a500a0479”
    }, {
      “状态”:“已部署”,
      “类型”:[“路由器”],
      “uUID”:“3341eda0-fa82-4dcb-bbf1-5cf77dc03efc”
    }, {
      “状态”:“已部署”,
      “类型”:[“路由器”],
      “uUID”:“c0b782f2-ccb6-4984-a0c0-0ac1db60a039”
    }, {
      “状态”:“已部署”,
      “类型”:[“路由器”],
      “uUID”:“38f80c53-a22b-4427-ab95-a178482daa6b”
    }, {
      “状态”:“已部署”,
      “类型”:[“路由器”],
      “uUID”:“28d847a2-5bfd-404d-985d-33d079d691d9”
    }, {
      “状态”:“已部署”,
      “类型”:[“路由器”],
      “uUID”:“26467f86-e529-4135-b012-120e274755d3”
    }, {
      “状态”:“已部署”,
      “类型”:[“路由器”],
      “uUID”:“807be0c7-dcc7-4be4-9d1e-30d26fa5519c”
    }],
    “状态”:“已部署”
  }]
}
于 2014-01-09T14:57:06.903 回答
0

由于我们都看到了这个错误,我相信他们可能正在进行一些维护或类似的事情。别担心,不是你;)

编辑:部署也是不可能的,所以并不是说 API 只是一个不起作用的。

于 2014-01-09T05:57:55.173 回答
0

这是一个部署问题。看起来捆绑包并未部署在所有 MP 上。建议使用 maven/APIGEE 边缘管理 API 进行部署。这些工具可以更好地了解每个消息处理器的部署状态。

于 2014-01-17T11:46:25.057 回答
0

当 Apigee 服务器无法找到您的 apiproxy 并因此无法将其路由到您的后端时,通常会发送 CLASSIFICATION_FAILED 响应。

一些检查要点:

  1. 确保您的 api 调用正确,包括您的 apiproxy 中指定的基本路径。

  2. 捆绑包中指定的虚拟主机提到您的 api 调用中未指定主机别名。

于 2014-01-09T06:04:01.080 回答