func GetPids(c *cgroups.Cgroup) ([]int, error) { cgroupRoot, err := cgroups.FindCgroupMountpoint("cpu") if err != nil { return nil, err } cgroupRoot = filepath.Dir(cgroupRoot) if _, err := os.Stat(cgroupRoot); err != nil { return nil, fmt.Errorf("cgroup root %s not found", cgroupRoot) } cgroup := c.Name if c.Parent != "" { cgroup = filepath.Join(c.Parent, cgroup) } d := &data{ root: cgroupRoot, cgroup: cgroup, c: c, } dir, err := d.path("devices") if err != nil { return nil, err } return cgroups.ReadProcsFile(dir) }
func GetPids(c *cgroups.Cgroup) ([]int, error) { d, err := getCgroupData(c, 0) if err != nil { return nil, err } dir, err := d.path("devices") if err != nil { return nil, err } return cgroups.ReadProcsFile(dir) }
func GetPids(c *cgroups.Cgroup) ([]int, error) { unitName := getUnitName(c) mountpoint, err := cgroups.FindCgroupMountpoint("cpu") if err != nil { return nil, err } props, err := theConn.GetUnitTypeProperties(unitName, getIfaceForUnit(unitName)) if err != nil { return nil, err } cgroup := props["ControlGroup"].(string) return cgroups.ReadProcsFile(filepath.Join(mountpoint, cgroup)) }