Reputation: 2798
I am trying to obtain the amount of cpu (measured in time or percentage, any one) utilized by a specific container deployed using docker as:
docker run <container_name>
or using lxc as:
lxc-start -n <container_name>
I see that the container deployed using lxc has cpu usage statistics stored in /sys/fs/cgroup/cpuacct/cpuacct.stat
However, I want to obtain these stats using the java API that can be obtained from here:
https://github.com/docker-java/docker-java
I see that the API provides methods to start, stop containers, image information, etc. However, I don't see a way that can provide container statistics such as cpu, memory and other resource usage statistics. From this question I see that this should have been present in API 1.0.
How do I get the cpu, memory, network and other resource usage statistics from the java API?
I would also very much appreciate an online blog or tutorial that can provide more insights into this too.
Docker:
Client version: 1.1.2
Client API version: 1.13
Go version (client): go1.2.1
Git commit (client): d84a070
Server version: 1.1.2
Server API version: 1.13
Go version (server): go1.2.1
Git commit (server): d84a070
Host OS:
Upvotes: 0
Views: 1328
Reputation: 1212
If you are still interested, the latest version of cadvisor (github.com/google/cadvisor) added support for networking, filesystem, and many other stats. Give it another try.
Upvotes: 1
Reputation: 8791
You can use this API to monitor cpu and memory usage : https://github.com/google/cadvisor
Upvotes: 0