Open aledsage opened 7 years ago
My output from docker stats --no-stream $(cat pid.txt)
is:
CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
bf29e117ac83803eb92dbec77d5a5e29d3453cc5c04a6a5ad98537160b77f90d 1.39% 685.9MiB / 3.518GiB 19.04% 0B / 0B 909kB / 760MB 0
We should be able to instead usedocker stats --no-stream --format "table {{.CPUPerc}}" $(cat pid.txt)
, which gives:
CPU %
1.46%
And docker stats --no-stream --format "table {{.MemPerc}}" $(cat pid.txt)
, which gives:
MEM %
19.04%
(But we'd still need to strip off the %
for this to be coerced to a double).
In that case you could do
docker stats --no-stream --format "table {{.CPUPerc}}" $(cat pid.txt) | sed -n '2s/%//p'
to get just the 1.46
and similarly for the memory percent.
In the logs, I see the two exceptions shown below:
This tells us that the bash below (from https://github.com/brooklyncentral/clocker/blob/master/common/catalog/docker/docker.bom#L543-L562) is incorrect - i.e. the
cut
commands are picking up the wrong characters. It looks really brittle. I'd have though we should split it on the separator, rather than looking for a specific character range.