我们的go应用使用Telegraf来收集CPU测量值。 用户和系统模式都不会接近该值,该值可通过cli
看到cf app app_name
答案 0 :(得分:3)
/sys/fs/cgroup/cpuacct/cpuacct.usage*
中的值是否接近您的期望?
CloudFoundry的运行时Diego使用runC stats
命令收集容器统计信息(source)。 runC似乎在cgroup(source)上利用了内核的CPU记帐子系统。
但是,我不确定此界面是否适合您(作为用户)收集指标。在应用程序容器中运行telegraf对我来说很奇怪(它会作为应用程序旁边的小汽车运行吗?CF中的小汽车还没有准备好。)
您的用例是什么,您想实现什么?如果您想获取用于监控的容器指标,那么从firehose获取指标可能是适合您的界面:firehose是Websocket流,用于获取应用程序的指标。示例应用:https://github.com/pivotalservices/app-metrics-nozzle