Cloud foundry “在云铸造健康检查”中;[HEALTH/0]错误无法向';发出HTTP请求健康';在端口8080上:收到状态代码404,单位为0ms“;

Cloud foundry “在云铸造健康检查”中;[HEALTH/0]错误无法向';发出HTTP请求健康';在端口8080上:收到状态代码404,单位为0ms“;,cloud-foundry,Cloud Foundry,[问题] 是否可以将此错误日志中的“端口8080”输出为“端口80” [程序] $ cf push $ cf set-health-check <myapp> --endpoint / health $ cf logs <myapp> -   [HEALTH / 0] ERR Failed to make HTTP request to '/ health' on port 8080: received status code 404 in 0ms   [CELL / 0

[问题] 是否可以将此错误日志中的“端口8080”输出为“端口80”

[程序]

$ cf push
$ cf set-health-check <myapp> --endpoint / health
$ cf logs <myapp>
-
  [HEALTH / 0] ERR Failed to make HTTP request to '/ health' on port 8080: received status code 404 in 0ms
  [CELL / 0] ERR Timed out after 10m0s: health check never passed.
-
$cf推送
$cf设置运行状况检查--端点/运行状况
$cf日志
-
[HEALTH/0]错误无法向端口8080上的“/HEALTH”发出HTTP请求:在0毫秒内收到状态代码404
[CELL/0]错误在10毫秒后超时:从未通过运行状况检查。
-

看起来您的某个命令可能有输入错误。
cf set health check
命令中的
/
health
之间有一个空格。这似乎是在健康检查所使用的URL中注入了一个空格,因此它试图到达文本URL
/%20health
,该URL不存在,因此得到了404响应

尝试
cf set health check--endpoint”/health“
,看看是否有效

对不起,这个问题我不太清楚

是否可以将此错误日志中的“端口8080”输出为“端口80”

你的应用程序似乎在正确的端口上侦听,因为有一个404,这意味着有东西正在侦听和响应。端口8080也是Cloud Foundry应用程序的正确端口,您的应用程序99.9%的时间都应该在该端口上进行侦听,因此我不会尝试改变这一点


希望有帮助

谢谢你的回复。是否无法使用port80检查运行状况?因为应用程序正在端口80上等待。如果这是buildpack应用程序,则不会。平台将为您分配一个端口,您需要监听该端口。但看起来好像有什么东西在监听端口8080。你的应用程序也在该端口上侦听吗?如果您正在部署Docker容器,则可以对拾取的端口进行控制。Diego将选择从您的图像中发现的第一个端口并使用它。事实上,buildpack应用程序并非100%如此。如果您使用的是足够新的Cloud Foundry版本,则支持此功能。我相信支持是在2019年4月左右添加的,所以之后的版本应该支持它。你可以在这里看到文档。它确实需要一些
cf curl
,因此目前的用户体验有点粗糙。也许可以尝试一下,看看你的提供商是否支持它。谢谢你的回复。这个案子似乎已经了结了。