in providers/linux/process_linux.go [190:214]
func (p *process) Environment() (map[string]string, error) {
// TODO: add Environment to procfs
content, err := os.ReadFile(p.path("environ"))
if err != nil {
return nil, err
}
env := map[string]string{}
pairs := bytes.Split(content, []byte{0})
for _, kv := range pairs {
parts := bytes.SplitN(kv, []byte{'='}, 2)
if len(parts) != 2 {
continue
}
key := string(bytes.TrimSpace(parts[0]))
if key == "" {
continue
}
env[key] = string(parts[1])
}
return env, nil
}