Don't use state.json from libcontainer to get cgroup paths.

This confuses cadvisor on systems where cadvisor doesn't see cgroup mounts at the same place as root namespace view.
This commit is contained in:
Rohit Jnagal 2014-12-24 00:25:11 +00:00
parent 7dc60321ee
commit 275b3ed653
3 changed files with 4 additions and 4 deletions

View File

@ -295,7 +295,7 @@ func (self *dockerContainerHandler) GetStats() (stats *info.ContainerStats, err
return
}
stats, err = containerLibcontainer.GetStats(state)
stats, err = containerLibcontainer.GetStats(self.cgroupPaths, state)
if err != nil {
return
}

View File

@ -73,12 +73,12 @@ var supportedSubsystems map[string]struct{} = map[string]struct{}{
}
// Get stats of the specified container
func GetStats(state *libcontainer.State) (*info.ContainerStats, error) {
func GetStats(cgroupPaths map[string]string, state *libcontainer.State) (*info.ContainerStats, error) {
// TODO(vmarmol): Use libcontainer's Stats() in the new API when that is ready.
stats := &libcontainer.ContainerStats{}
var err error
stats.CgroupStats, err = cgroupfs.GetStats(state.CgroupPaths)
stats.CgroupStats, err = cgroupfs.GetStats(cgroupPaths)
if err != nil {
return &info.ContainerStats{}, err
}

View File

@ -273,7 +273,7 @@ func (self *rawContainerHandler) GetStats() (*info.ContainerStats, error) {
}
}
stats, err := libcontainer.GetStats(&state)
stats, err := libcontainer.GetStats(self.cgroupPaths, &state)
if err != nil {
return nil, err
}