1
0
mirror of https://github.com/open-telemetry/opentelemetry-go.git synced 2025-01-07 23:02:15 +02:00
opentelemetry-go/schema
Tyler Yahn fdfc821bac
Add godot linter to golangci (#2845)
Comment should be complete sentences outside of lists with sentence
fragments. This adds the godot linter to check these complete sentences
end with punctuation. If they do not, running fix will append a period.
2022-04-25 13:22:49 -07:00
..
v1.0 Add godot linter to golangci (#2845) 2022-04-25 13:22:49 -07:00
go.mod Update versions of dependences (#2710) 2022-03-21 11:05:16 -04:00
go.sum Update versions of dependences (#2710) 2022-03-21 11:05:16 -04:00
README.md Add ability to parse Schema files according to OTEP 0152 (#2267) 2021-10-15 09:44:13 -07:00

Telemetry Schema Files

The schema module contains packages that help to parse and validate schema files.

Each major.minor schema file format version is implemented as a separate package, with the name of the package in the vmajor.minor form.

To parse a schema file, first decide what file format version you want to parse, then import the corresponding package and use the Parse or ParseFile functions like this:

import schema "go.opentelemetry.io/otel/schema/v1.0"

// Load the schema from a file in v1.0.x file format.
func loadSchemaFromFile() error {
	telSchema, err := schema.ParseFile("schema-file.yaml")
	if err != nil {
		return err
	}
	// Use telSchema struct here.
}

// Alternatively use schema.Parse to read the schema file from io.Reader.
func loadSchemaFromReader(r io.Reader) error {
	telSchema, err := schema.Parse(r)
	if err != nil {
		return err
	}
	// Use telSchema struct here.
}