in confgenerator/logging_processors.go [136:165]
func (p ParserShared) TypesStatements() (ottl.Statements, error) {
var out ottl.Statements
for field, fieldType := range p.Types {
m, err := filter.NewMemberLegacy(field)
if err != nil {
return nil, err
}
a, err := m.OTTLAccessor()
if err != nil {
return nil, err
}
// See OTTL docs at https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/pkg/ottl/ottlfuncs
switch fieldType {
case "string":
out = out.Append(a.Set(ottl.ToString(a)))
case "integer":
out = out.Append(a.Set(ottl.ToInt(a)))
case "bool":
out = out.Append(a.SetToBool(a))
case "float":
out = out.Append(a.Set(ottl.ToFloat(a)))
case "hex":
// TODO: Not exposed in OTTL
fallthrough
default:
return nil, fmt.Errorf("type %q not supported for field %s", fieldType, m)
}
}
return out, nil
}