我们在IBM Bluemix上运行了一个Cloud Foundry(Java)应用程序,我们正在寻找一种健康检查方法。我们主要想监视内存使用情况(CF实例内存和JVM堆)。我们知道Auto-Scaling可以做类似的事情,但我们认为它可以使内存使用最近2小时。 (如果我们误解,请纠正我们。)我们希望至少在最近24小时内监控内存使用情况。任何建议或意见必须表示赞赏。谢谢。
答案 0 :(得分:0)
从平台的角度来看,你没有很多选择:
您可以为应用配置基于HTTP的运行状况检查。而不是仅监视应用程序正在侦听的端口,这实际上将发送HTTP请求并检查它是否获得有效响应。如果没有,那么您的应用程序将由平台自动重启。这不会跟踪您列出的任何指标。它只是一个检查,以确定您的应用程序是否还活着。
例如:cf set-health-check my-super-cool-app http --endpoint /health
https://docs.cloudfoundry.org/devguide/deploy-apps/healthchecks.html
您可以连接到firehose并提取指标。这将包括CPU,RAM和&的容器指标。磁盘使用情况。尽管如此,firehose只是一种获取此信息的方法,存储和漂亮图表的整个问题是您仍然需要解决的问题。
firehose插件是执行此操作的最佳示例:https://github.com/cloudfoundry-community/firehose-plugin
除了平台本身,您可能还需要查看APM(应用程序性能监视)工具。我不打算在这里列出例子。通过快速的互联网搜索,您可以找到许多。有些甚至与Java buildpack很好地集成,列出here。
这可能是您想要的解决方案,因为它会为您提供各种指标,包括您在上面提到的指标。
希望有所帮助!