docker: add container_id also to per cpu stats

currently this field exists only for total cpu usage

closes #1168
This commit is contained in:
Jörg Thalheim 2016-05-09 08:22:53 +00:00 committed by Cameron Sparr
parent 36b9e2e077
commit 5deb22a539
2 changed files with 11 additions and 4 deletions

View File

@ -307,7 +307,11 @@ func gatherContainerStats(
for i, percpu := range stat.CPUStats.CPUUsage.PercpuUsage { for i, percpu := range stat.CPUStats.CPUUsage.PercpuUsage {
percputags := copyTags(tags) percputags := copyTags(tags)
percputags["cpu"] = fmt.Sprintf("cpu%d", i) percputags["cpu"] = fmt.Sprintf("cpu%d", i)
acc.AddFields("docker_container_cpu", map[string]interface{}{"usage_total": percpu}, percputags, now) fields := map[string]interface{}{
"usage_total": percpu,
"container_id": id,
}
acc.AddFields("docker_container_cpu", fields, percputags, now)
} }
for network, netstats := range stat.Networks { for network, netstats := range stat.Networks {

View File

@ -111,13 +111,15 @@ func TestDockerGatherContainerStats(t *testing.T) {
cputags["cpu"] = "cpu0" cputags["cpu"] = "cpu0"
cpu0fields := map[string]interface{}{ cpu0fields := map[string]interface{}{
"usage_total": uint64(1), "usage_total": uint64(1),
"container_id": "123456789",
} }
acc.AssertContainsTaggedFields(t, "docker_container_cpu", cpu0fields, cputags) acc.AssertContainsTaggedFields(t, "docker_container_cpu", cpu0fields, cputags)
cputags["cpu"] = "cpu1" cputags["cpu"] = "cpu1"
cpu1fields := map[string]interface{}{ cpu1fields := map[string]interface{}{
"usage_total": uint64(1002), "usage_total": uint64(1002),
"container_id": "123456789",
} }
acc.AssertContainsTaggedFields(t, "docker_container_cpu", cpu1fields, cputags) acc.AssertContainsTaggedFields(t, "docker_container_cpu", cpu1fields, cputags)
} }
@ -372,7 +374,8 @@ func TestDockerGatherInfo(t *testing.T) {
acc.AssertContainsTaggedFields(t, acc.AssertContainsTaggedFields(t,
"docker_container_cpu", "docker_container_cpu",
map[string]interface{}{ map[string]interface{}{
"usage_total": uint64(1231652), "usage_total": uint64(1231652),
"container_id": "b7dfbb9478a6ae55e237d4d74f8bbb753f0817192b5081334dc78476296e2173",
}, },
map[string]string{ map[string]string{
"container_name": "etcd2", "container_name": "etcd2",