我们的go应用程序使用Telegraf收集CPU测量值。用户和系统模式都不关闭该值,该值可通过cli 查看
cf应用程序名称
/sys/fs/cgroup/cpuacct/cpuacct.usage*
中的值是否接近您的预期?
CloudFoundry的运行时Diego使用runstats
命令来收集容器统计信息(源代码(。runC似乎利用了cgroup(源代码(上内核的CPU核算子系统。
然而,我不确定这个界面是否是作为用户收集指标的正确方式。在应用程序容器中运行Telegram对我来说似乎很奇怪(它会作为应用程序旁边的sidecar运行吗?sidecar在CF中还没有准备好(。
你的用例是什么,你想实现什么?如果你想获取容器指标进行监控,那么从消防软管中获取指标可能是适合你的界面:消防软管是获取应用程序指标的websocket流。示例应用程序:https://github.com/pivotalservices/app-metrics-nozzle