agent/utils/json.go
func JsonKeys(b []byte) ([]string, error) {
	var keyMap map[string]interface{}

	err := json.Unmarshal(b, &keyMap)
	if err != nil {
		return []string{}, err
	}

	keys := make([]string, len(keyMap))
	ndx := 0
	for k := range keyMap {
		keys[ndx] = k
		ndx++
	}
	return keys, nil
}
func JsonKeys(b []byte) ([]string, error) {
	var keyMap map[string]interface{}

	err := json.Unmarshal(b, &keyMap)
	if err != nil {
		return []string{}, err
	}

	keys := make([]string, len(keyMap))
	ndx := 0
	for k := range keyMap {
		keys[ndx] = k
		ndx++
	}
	return keys, nil
}
// JsonKeys takes an arbitrary byte array representing a json stringified object
// and returns all the keys of that object.