Add container status tag to docker input (#4259)
This commit is contained in:
parent
4e9e57e210
commit
98d86df797
|
@ -435,6 +435,23 @@ func (d *Docker) gatherContainer(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if info.State != nil {
|
||||||
|
tags["container_status"] = info.State.Status
|
||||||
|
statefields := map[string]interface{}{
|
||||||
|
"oomkilled": info.State.OOMKilled,
|
||||||
|
"pid": info.State.Pid,
|
||||||
|
"exitcode": info.State.ExitCode,
|
||||||
|
}
|
||||||
|
container_time, err := time.Parse(time.RFC3339, info.State.StartedAt)
|
||||||
|
if err == nil && !container_time.IsZero() {
|
||||||
|
statefields["started_at"] = container_time.UnixNano()
|
||||||
|
}
|
||||||
|
container_time, err = time.Parse(time.RFC3339, info.State.FinishedAt)
|
||||||
|
if err == nil && !container_time.IsZero() {
|
||||||
|
statefields["finished_at"] = container_time.UnixNano()
|
||||||
|
}
|
||||||
|
acc.AddFields("docker_container_status", statefields, tags, time.Now())
|
||||||
|
}
|
||||||
|
|
||||||
if info.State.Health != nil {
|
if info.State.Health != nil {
|
||||||
healthfields := map[string]interface{}{
|
healthfields := map[string]interface{}{
|
||||||
|
|
|
@ -653,6 +653,7 @@ func TestDockerGatherInfo(t *testing.T) {
|
||||||
"label1": "test_value_1",
|
"label1": "test_value_1",
|
||||||
"label2": "test_value_2",
|
"label2": "test_value_2",
|
||||||
"server_version": "17.09.0-ce",
|
"server_version": "17.09.0-ce",
|
||||||
|
"container_status": "running",
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
acc.AssertContainsTaggedFields(t,
|
acc.AssertContainsTaggedFields(t,
|
||||||
|
@ -676,6 +677,7 @@ func TestDockerGatherInfo(t *testing.T) {
|
||||||
"label1": "test_value_1",
|
"label1": "test_value_1",
|
||||||
"label2": "test_value_2",
|
"label2": "test_value_2",
|
||||||
"server_version": "17.09.0-ce",
|
"server_version": "17.09.0-ce",
|
||||||
|
"container_status": "running",
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
|
@ -484,6 +484,12 @@ var containerInspect = types.ContainerJSON{
|
||||||
FailingStreak: 1,
|
FailingStreak: 1,
|
||||||
Status: "Unhealthy",
|
Status: "Unhealthy",
|
||||||
},
|
},
|
||||||
|
Status: "running",
|
||||||
|
OOMKilled: false,
|
||||||
|
Pid: 1234,
|
||||||
|
ExitCode: 0,
|
||||||
|
StartedAt: "2018-06-14T05:48:53.266176036Z",
|
||||||
|
FinishedAt: "0001-01-01T00:00:00Z",
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue