func()

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
}