diff --git a/opentelemetry_configuration.json b/opentelemetry_configuration.json
index f7c1bb8e..a7594cc4 100644
--- a/opentelemetry_configuration.json
+++ b/opentelemetry_configuration.json
@@ -18,7 +18,7 @@
},
"log_level": {
"$ref": "#/$defs/SeverityNumber",
- "description": "Configure the log level of the internal logger used by the SDK.\nIf omitted, INFO is used.\n"
+ "description": "Configure the log level of the internal logger used by the SDK.\nValues include:\n* DEBUG: DEBUG, severity number 5.\n* DEBUG2: DEBUG2, severity number 6.\n* DEBUG3: DEBUG3, severity number 7.\n* DEBUG4: DEBUG4, severity number 8.\n* ERROR: ERROR, severity number 17.\n* ERROR2: ERROR2, severity number 18.\n* ERROR3: ERROR3, severity number 19.\n* ERROR4: ERROR4, severity number 20.\n* FATAL: FATAL, severity number 21.\n* FATAL2: FATAL2, severity number 22.\n* FATAL3: FATAL3, severity number 23.\n* FATAL4: FATAL4, severity number 24.\n* INFO: INFO, severity number 9.\n* INFO2: INFO2, severity number 10.\n* INFO3: INFO3, severity number 11.\n* INFO4: INFO4, severity number 12.\n* TRACE: TRACE, severity number 1.\n* TRACE2: TRACE2, severity number 2.\n* TRACE3: TRACE3, severity number 3.\n* TRACE4: TRACE4, severity number 4.\n* WARN: WARN, severity number 13.\n* WARN2: WARN2, severity number 14.\n* WARN3: WARN3, severity number 15.\n* WARN4: WARN4, severity number 16.\nIf omitted, INFO is used.\n"
},
"attribute_limits": {
"$ref": "#/$defs/AttributeLimits",
@@ -169,7 +169,7 @@
},
"type": {
"$ref": "#/$defs/AttributeType",
- "description": "The attribute type.\nValues include: string, bool, int, double, string_array, bool_array, int_array, double_array.\nIf omitted, string is used.\n"
+ "description": "The attribute type.\nValues include:\n* bool: Boolean attribute value.\n* bool_array: Boolean array attribute value.\n* double: Double attribute value.\n* double_array: Double array attribute value.\n* int: Integer attribute value.\n* int_array: Integer array attribute value.\n* string: String attribute value.\n* string_array: String array attribute value.\nIf omitted, string is used.\n"
}
},
"required": [
@@ -423,11 +423,11 @@
"properties": {
"temporality_preference": {
"$ref": "#/$defs/ExporterTemporalityPreference",
- "description": "Configure temporality preference.\nValues include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.\nIf omitted, cumulative is used.\n"
+ "description": "Configure temporality preference.\nValues include:\n* cumulative: Use cumulative aggregation temporality for all instrument types.\n* delta: Use delta aggregation for all instrument types except up down counter and asynchronous up down counter.\n* low_memory: Use delta aggregation temporality for counter and histogram instrument types. Use cumulative aggregation temporality for all other instrument types.\nIf omitted, cumulative is used.\n"
},
"default_histogram_aggregation": {
"$ref": "#/$defs/ExporterDefaultHistogramAggregation",
- "description": "Configure default histogram aggregation.\nValues include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.\nIf omitted, explicit_bucket_histogram is used.\n"
+ "description": "Configure default histogram aggregation.\nValues include:\n* base2_exponential_bucket_histogram: TODO\n* explicit_bucket_histogram: TODO\nIf omitted, explicit_bucket_histogram is used.\n"
}
}
},
@@ -738,7 +738,7 @@
},
"minimum_severity": {
"$ref": "#/$defs/SeverityNumber",
- "description": "Configure severity filtering.\nLog records with an non-zero (i.e. unspecified) severity number which is less than minimum_severity are not processed.\nValues include: TRACE, TRACE2, TRACE3, TRACE4, DEBUG, DEBUG2, DEBUG3, DEBUG4, INFO, INFO2, INFO3, INFO4, WARN, WARN2, WARN3, WARN4, ERROR, ERROR2, ERROR3, ERROR4, FATAL, FATAL2, FATAL3, FATAL4.\nIf omitted, severity filtering is not applied.\n"
+ "description": "Configure severity filtering.\nLog records with an non-zero (i.e. unspecified) severity number which is less than minimum_severity are not processed.\nValues include:\n* DEBUG: DEBUG, severity number 5.\n* DEBUG2: DEBUG2, severity number 6.\n* DEBUG3: DEBUG3, severity number 7.\n* DEBUG4: DEBUG4, severity number 8.\n* ERROR: ERROR, severity number 17.\n* ERROR2: ERROR2, severity number 18.\n* ERROR3: ERROR3, severity number 19.\n* ERROR4: ERROR4, severity number 20.\n* FATAL: FATAL, severity number 21.\n* FATAL2: FATAL2, severity number 22.\n* FATAL3: FATAL3, severity number 23.\n* FATAL4: FATAL4, severity number 24.\n* INFO: INFO, severity number 9.\n* INFO2: INFO2, severity number 10.\n* INFO3: INFO3, severity number 11.\n* INFO4: INFO4, severity number 12.\n* TRACE: TRACE, severity number 1.\n* TRACE2: TRACE2, severity number 2.\n* TRACE3: TRACE3, severity number 3.\n* TRACE4: TRACE4, severity number 4.\n* WARN: WARN, severity number 13.\n* WARN2: WARN2, severity number 14.\n* WARN3: WARN3, severity number 15.\n* WARN4: WARN4, severity number 16.\nIf omitted, severity filtering is not applied.\n"
},
"trace_based": {
"type": [
@@ -879,11 +879,11 @@
},
"temporality_preference": {
"$ref": "#/$defs/ExporterTemporalityPreference",
- "description": "Configure temporality preference.\nValues include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.\nIf omitted, cumulative is used.\n"
+ "description": "Configure temporality preference.\nValues include:\n* cumulative: Use cumulative aggregation temporality for all instrument types.\n* delta: Use delta aggregation for all instrument types except up down counter and asynchronous up down counter.\n* low_memory: Use delta aggregation temporality for counter and histogram instrument types. Use cumulative aggregation temporality for all other instrument types.\nIf omitted, cumulative is used.\n"
},
"default_histogram_aggregation": {
"$ref": "#/$defs/ExporterDefaultHistogramAggregation",
- "description": "Configure default histogram aggregation.\nValues include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.\nIf omitted, explicit_bucket_histogram is used.\n"
+ "description": "Configure default histogram aggregation.\nValues include:\n* base2_exponential_bucket_histogram: TODO\n* explicit_bucket_histogram: TODO\nIf omitted, explicit_bucket_histogram is used.\n"
}
}
},
@@ -985,7 +985,7 @@
},
"translation_strategy": {
"$ref": "#/$defs/ExperimentalPrometheusTranslationStrategy",
- "description": "Configure how Prometheus metrics are exposed. Values include:\n\n * UnderscoreEscapingWithSuffixes, the default. This fully escapes metric names for classic Prometheus metric name compatibility, and includes appending type and unit suffixes.\n * UnderscoreEscapingWithoutSuffixes, metric names will continue to escape special characters to _, but suffixes won't be attached.\n * NoUTF8EscapingWithSuffixes will disable changing special characters to _. Special suffixes like units and _total for counters will be attached.\n * NoTranslation. This strategy bypasses all metric and label name translation, passing them through unaltered.\nIf omitted, UnderscoreEscapingWithSuffixes is used.\n"
+ "description": "Configure how Prometheus metrics are exposed.\nValues include:\n* NoTranslation: Special character escaping is disabled. Type and unit suffixes are disabled. Metric names are unaltered.\n* NoUTF8EscapingWithSuffixes: Special character escaping is disabled. Type and unit suffixes are enabled.\n* UnderscoreEscapingWithoutSuffixes: Special character escaping is enabled. Type and unit suffixes are disabled. This represents classic Prometheus metric name compatibility.\n* UnderscoreEscapingWithSuffixes: Special character escaping is enabled. Type and unit suffixes are enabled.\nIf omitted, UnderscoreEscapingWithSuffixes is used.\n"
}
}
},
@@ -1393,7 +1393,7 @@
},
"exemplar_filter": {
"$ref": "#/$defs/ExemplarFilter",
- "description": "Configure the exemplar filter. \nValues include: trace_based, always_on, always_off. For behavior of values see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#metrics-sdk-configuration.\nIf omitted, trace_based is used.\n"
+ "description": "Configure the exemplar filter. \nValues include:\n* always_off: ExemplarFilter which makes no measurements eligible for being an Exemplar.\n* always_on: ExemplarFilter which makes all measurements eligible for being an Exemplar.\n* trace_based: ExemplarFilter which makes measurements recorded in the context of a sampled parent span eligible for being an Exemplar.\nIf omitted, trace_based is used.\n"
},
"meter_configurator/development": {
"$ref": "#/$defs/ExperimentalMeterConfigurator",
@@ -1510,7 +1510,7 @@
"string",
"null"
],
- "description": "Configure compression.\nValues include: gzip, none. Implementations may support other compression algorithms.\nIf omitted or null, none is used.\n"
+ "description": "Configure compression.\nKnown values include: gzip, none. Implementations may support other compression algorithms.\nIf omitted or null, none is used.\n"
},
"timeout": {
"type": [
@@ -1560,7 +1560,7 @@
"string",
"null"
],
- "description": "Configure compression.\nValues include: gzip, none. Implementations may support other compression algorithms.\nIf omitted or null, none is used.\n"
+ "description": "Configure compression.\nKnown values include: gzip, none. Implementations may support other compression algorithms.\nIf omitted or null, none is used.\n"
},
"timeout": {
"type": [
@@ -1572,11 +1572,11 @@
},
"temporality_preference": {
"$ref": "#/$defs/ExporterTemporalityPreference",
- "description": "Configure temporality preference.\nValues include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.\nIf omitted, cumulative is used.\n"
+ "description": "Configure temporality preference.\nValues include:\n* cumulative: Use cumulative aggregation temporality for all instrument types.\n* delta: Use delta aggregation for all instrument types except up down counter and asynchronous up down counter.\n* low_memory: Use delta aggregation temporality for counter and histogram instrument types. Use cumulative aggregation temporality for all other instrument types.\nIf omitted, cumulative is used.\n"
},
"default_histogram_aggregation": {
"$ref": "#/$defs/ExporterDefaultHistogramAggregation",
- "description": "Configure default histogram aggregation.\nValues include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.\nIf omitted, explicit_bucket_histogram is used.\n"
+ "description": "Configure default histogram aggregation.\nValues include:\n* base2_exponential_bucket_histogram: TODO\n* explicit_bucket_histogram: TODO\nIf omitted, explicit_bucket_histogram is used.\n"
}
}
},
@@ -1628,7 +1628,7 @@
"string",
"null"
],
- "description": "Configure compression.\nValues include: gzip, none. Implementations may support other compression algorithms.\nIf omitted or null, none is used.\n"
+ "description": "Configure compression.\nKnown values include: gzip, none. Implementations may support other compression algorithms.\nIf omitted or null, none is used.\n"
},
"timeout": {
"type": [
@@ -1640,7 +1640,7 @@
},
"encoding": {
"$ref": "#/$defs/OtlpHttpEncoding",
- "description": "Configure the encoding used for messages. \nValues include: protobuf, json. Implementations may not support json.\nIf omitted, protobuf is used.\n"
+ "description": "Configure the encoding used for messages. \nImplementations may not support json.\nValues include:\n* json: Protobuf JSON encoding.\n* protobuf: Protobuf binary encoding.\nIf omitted, protobuf is used.\n"
}
}
},
@@ -1682,7 +1682,7 @@
"string",
"null"
],
- "description": "Configure compression.\nValues include: gzip, none. Implementations may support other compression algorithms.\nIf omitted or null, none is used.\n"
+ "description": "Configure compression.\nKnown values include: gzip, none. Implementations may support other compression algorithms.\nIf omitted or null, none is used.\n"
},
"timeout": {
"type": [
@@ -1694,15 +1694,15 @@
},
"encoding": {
"$ref": "#/$defs/OtlpHttpEncoding",
- "description": "Configure the encoding used for messages. \nValues include: protobuf, json. Implementations may not support json.\nIf omitted, protobuf is used.\n"
+ "description": "Configure the encoding used for messages. \nImplementations may not support json.\nValues include:\n* json: Protobuf JSON encoding.\n* protobuf: Protobuf binary encoding.\nIf omitted, protobuf is used.\n"
},
"temporality_preference": {
"$ref": "#/$defs/ExporterTemporalityPreference",
- "description": "Configure temporality preference.\nValues include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.\nIf omitted, cumulative is used.\n"
+ "description": "Configure temporality preference.\nValues include:\n* cumulative: Use cumulative aggregation temporality for all instrument types.\n* delta: Use delta aggregation for all instrument types except up down counter and asynchronous up down counter.\n* low_memory: Use delta aggregation temporality for counter and histogram instrument types. Use cumulative aggregation temporality for all other instrument types.\nIf omitted, cumulative is used.\n"
},
"default_histogram_aggregation": {
"$ref": "#/$defs/ExporterDefaultHistogramAggregation",
- "description": "Configure default histogram aggregation.\nValues include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.\nIf omitted, explicit_bucket_histogram is used.\n"
+ "description": "Configure default histogram aggregation.\nValues include:\n* base2_exponential_bucket_histogram: TODO\n* explicit_bucket_histogram: TODO\nIf omitted, explicit_bucket_histogram is used.\n"
}
}
},
@@ -2236,7 +2236,7 @@
},
"instrument_type": {
"$ref": "#/$defs/InstrumentType",
- "description": "Configure instrument type selection criteria.\nValues include: counter, gauge, histogram, observable_counter, observable_gauge, observable_up_down_counter, up_down_counter.\nIf omitted, all instrument types match.\n"
+ "description": "Configure instrument type selection criteria.\nValues include:\n* counter: Synchronous counter instruments.\n* gauge: Synchronous gauge instruments.\n* histogram: Synchronous histogram instruments.\n* observable_counter: Asynchronous counter instruments.\n* observable_gauge: Asynchronous gauge instruments.\n* observable_up_down_counter: Asynchronous up down counter instruments.\n* up_down_counter: Synchronous up down counter instruments.\nIf omitted, all instrument types match.\n"
},
"unit": {
"type": [
@@ -2288,7 +2288,7 @@
},
"aggregation": {
"$ref": "#/$defs/Aggregation",
- "description": "Configure aggregation of the resulting stream(s). \nValues include: default, drop, explicit_bucket_histogram, base2_exponential_bucket_histogram, last_value, sum. For behavior of values see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#aggregation.\nIf omitted, default is used.\n"
+ "description": "Configure aggregation of the resulting stream(s). \nIf omitted, default is used.\n"
},
"aggregation_cardinality_limit": {
"type": [
diff --git a/schema-docs.md b/schema-docs.md
index 2f56a425..2344270a 100644
--- a/schema-docs.md
+++ b/schema-docs.md
@@ -183,7 +183,7 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | The attribute name.
|
-| `type` | [`AttributeType`](#attributetype) | `false` | If omitted, string is used. | No constraints. | The attribute type.
Values include: string, bool, int, double, string_array, bool_array, int_array, double_array.
|
+| `type` | [`AttributeType`](#attributetype) | `false` | If omitted, string is used. | No constraints. | The attribute type.
|
| `value` | `oneOf` | `true` | Property is required and must be non-null. | No constraints. | The attribute value.
The type of value must match .type.
|
@@ -748,8 +748,8 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
-| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | If omitted, explicit_bucket_histogram is used. | No constraints. | Configure default histogram aggregation.
Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
|
-| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | If omitted, cumulative is used. | No constraints. | Configure temporality preference.
Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
|
+| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | If omitted, explicit_bucket_histogram is used. | No constraints. | Configure default histogram aggregation.
|
+| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | If omitted, cumulative is used. | No constraints. | Configure temporality preference.
|
Language support status
@@ -1534,7 +1534,7 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
-| `exemplar_filter` | [`ExemplarFilter`](#exemplarfilter) | `false` | If omitted, trace_based is used. | No constraints. | Configure the exemplar filter.
Values include: trace_based, always_on, always_off. For behavior of values see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#metrics-sdk-configuration.
|
+| `exemplar_filter` | [`ExemplarFilter`](#exemplarfilter) | `false` | If omitted, trace_based is used. | No constraints. | Configure the exemplar filter.
|
| `readers` | `array` of [`MetricReader`](#metricreader) | `true` | Property is required and must be non-null. | * `minItems`: `1`
| Configure metric readers. |
| `views` | `array` of [`View`](#view) | `false` | If omitted, no views are registered. | * `minItems`: `1`
| Configure views.
Each view has a selector which determines the instrument(s) it applies to, and a configuration for the resulting stream(s).
|
| `meter_configurator/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalMeterConfigurator`](#experimentalmeterconfigurator) | `false` | If omitted, all meters use default values as described in ExperimentalMeterConfig. | No constraints. | Configure meters.
|
@@ -1886,7 +1886,7 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
-| `compression` | one of:
* `string`
* `null`
| `false` | If omitted or null, none is used. | No constraints. | Configure compression.
Values include: gzip, none. Implementations may support other compression algorithms.
|
+| `compression` | one of:
* `string`
* `null`
| `false` | If omitted or null, none is used. | No constraints. | Configure compression.
Known values include: gzip, none. Implementations may support other compression algorithms.
|
| `endpoint` | one of:
* `string`
* `null`
| `false` | If omitted or null, http://localhost:4317 is used. | No constraints. | Configure endpoint.
|
| `headers` | `array` of [`NameStringValuePair`](#namestringvaluepair) | `false` | If omitted, no headers are added. | * `minItems`: `1`
| Configure headers. Entries have higher priority than entries from .headers_list.
If an entry's .value is null, the entry is ignored.
|
| `headers_list` | one of:
* `string`
* `null`
| `false` | If omitted or null, no headers are added. | No constraints. | Configure headers. Entries have lower priority than entries from .headers.
The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
|
@@ -1969,12 +1969,12 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
-| `compression` | one of:
* `string`
* `null`
| `false` | If omitted or null, none is used. | No constraints. | Configure compression.
Values include: gzip, none. Implementations may support other compression algorithms.
|
-| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | If omitted, explicit_bucket_histogram is used. | No constraints. | Configure default histogram aggregation.
Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
|
+| `compression` | one of:
* `string`
* `null`
| `false` | If omitted or null, none is used. | No constraints. | Configure compression.
Known values include: gzip, none. Implementations may support other compression algorithms.
|
+| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | If omitted, explicit_bucket_histogram is used. | No constraints. | Configure default histogram aggregation.
|
| `endpoint` | one of:
* `string`
* `null`
| `false` | If omitted or null, http://localhost:4317 is used. | No constraints. | Configure endpoint.
|
| `headers` | `array` of [`NameStringValuePair`](#namestringvaluepair) | `false` | If omitted, no headers are added. | * `minItems`: `1`
| Configure headers. Entries have higher priority than entries from .headers_list.
If an entry's .value is null, the entry is ignored.
|
| `headers_list` | one of:
* `string`
* `null`
| `false` | If omitted or null, no headers are added. | No constraints. | Configure headers. Entries have lower priority than entries from .headers.
The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
|
-| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | If omitted, cumulative is used. | No constraints. | Configure temporality preference.
Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
|
+| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | If omitted, cumulative is used. | No constraints. | Configure temporality preference.
|
| `timeout` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 10000 is used. | * `minimum`: `0`
| Configure max time (in milliseconds) to wait for each export.
Value must be non-negative. A value of 0 indicates no limit (infinity).
|
| `tls` | [`GrpcTls`](#grpctls) | `false` | If omitted, system default TLS settings are used. | No constraints. | Configure TLS settings for the exporter. |
@@ -2102,8 +2102,8 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
-| `compression` | one of:
* `string`
* `null`
| `false` | If omitted or null, none is used. | No constraints. | Configure compression.
Values include: gzip, none. Implementations may support other compression algorithms.
|
-| `encoding` | [`OtlpHttpEncoding`](#otlphttpencoding) | `false` | If omitted, protobuf is used. | No constraints. | Configure the encoding used for messages.
Values include: protobuf, json. Implementations may not support json.
|
+| `compression` | one of:
* `string`
* `null`
| `false` | If omitted or null, none is used. | No constraints. | Configure compression.
Known values include: gzip, none. Implementations may support other compression algorithms.
|
+| `encoding` | [`OtlpHttpEncoding`](#otlphttpencoding) | `false` | If omitted, protobuf is used. | No constraints. | Configure the encoding used for messages.
Implementations may not support json.
|
| `endpoint` | one of:
* `string`
* `null`
| `false` | If omitted or null, the http://localhost:4318/v1/{signal} (where signal is 'traces', 'logs', or 'metrics') is used. | No constraints. | Configure endpoint, including the signal specific path.
|
| `headers` | `array` of [`NameStringValuePair`](#namestringvaluepair) | `false` | If omitted, no headers are added. | * `minItems`: `1`
| Configure headers. Entries have higher priority than entries from .headers_list.
If an entry's .value is null, the entry is ignored.
|
| `headers_list` | one of:
* `string`
* `null`
| `false` | If omitted or null, no headers are added. | No constraints. | Configure headers. Entries have lower priority than entries from .headers.
The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
|
@@ -2190,13 +2190,13 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
-| `compression` | one of:
* `string`
* `null`
| `false` | If omitted or null, none is used. | No constraints. | Configure compression.
Values include: gzip, none. Implementations may support other compression algorithms.
|
-| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | If omitted, explicit_bucket_histogram is used. | No constraints. | Configure default histogram aggregation.
Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
|
-| `encoding` | [`OtlpHttpEncoding`](#otlphttpencoding) | `false` | If omitted, protobuf is used. | No constraints. | Configure the encoding used for messages.
Values include: protobuf, json. Implementations may not support json.
|
+| `compression` | one of:
* `string`
* `null`
| `false` | If omitted or null, none is used. | No constraints. | Configure compression.
Known values include: gzip, none. Implementations may support other compression algorithms.
|
+| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | If omitted, explicit_bucket_histogram is used. | No constraints. | Configure default histogram aggregation.
|
+| `encoding` | [`OtlpHttpEncoding`](#otlphttpencoding) | `false` | If omitted, protobuf is used. | No constraints. | Configure the encoding used for messages.
Implementations may not support json.
|
| `endpoint` | one of:
* `string`
* `null`
| `false` | If omitted or null, http://localhost:4318/v1/metrics is used. | No constraints. | Configure endpoint.
|
| `headers` | `array` of [`NameStringValuePair`](#namestringvaluepair) | `false` | If omitted, no headers are added. | * `minItems`: `1`
| Configure headers. Entries have higher priority than entries from .headers_list.
If an entry's .value is null, the entry is ignored.
|
| `headers_list` | one of:
* `string`
* `null`
| `false` | If omitted or null, no headers are added. | No constraints. | Configure headers. Entries have lower priority than entries from .headers.
The value is a list of comma separated key-value pairs matching the format of OTEL_EXPORTER_OTLP_HEADERS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md#configuration-options for details.
|
-| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | If omitted, cumulative is used. | No constraints. | Configure temporality preference.
Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
|
+| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | If omitted, cumulative is used. | No constraints. | Configure temporality preference.
|
| `timeout` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 10000 is used. | * `minimum`: `0`
| Configure max time (in milliseconds) to wait for each export.
Value must be non-negative. A value of 0 indicates no limit (infinity).
|
| `tls` | [`HttpTls`](#httptls) | `false` | If omitted, system default TLS settings are used. | No constraints. | Configure TLS settings for the exporter. |
@@ -3454,7 +3454,7 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
| `instrument_name` | one of:
* `string`
* `null`
| `false` | If omitted or null, all instrument names match. | No constraints. | Configure instrument name selection criteria.
|
-| `instrument_type` | [`InstrumentType`](#instrumenttype) | `false` | If omitted, all instrument types match. | No constraints. | Configure instrument type selection criteria.
Values include: counter, gauge, histogram, observable_counter, observable_gauge, observable_up_down_counter, up_down_counter.
|
+| `instrument_type` | [`InstrumentType`](#instrumenttype) | `false` | If omitted, all instrument types match. | No constraints. | Configure instrument type selection criteria.
|
| `meter_name` | one of:
* `string`
* `null`
| `false` | If omitted or null, all meter names match. | No constraints. | Configure meter name selection criteria.
|
| `meter_schema_url` | one of:
* `string`
* `null`
| `false` | If omitted or null, all meter schema URLs match. | No constraints. | Configure meter schema url selection criteria.
|
| `meter_version` | one of:
* `string`
* `null`
| `false` | If omitted or null, all meter versions match. | No constraints. | Configure meter version selection criteria.
|
@@ -3530,7 +3530,7 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
-| `aggregation` | [`Aggregation`](#aggregation) | `false` | If omitted, default is used. | No constraints. | Configure aggregation of the resulting stream(s).
Values include: default, drop, explicit_bucket_histogram, base2_exponential_bucket_histogram, last_value, sum. For behavior of values see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#aggregation.
|
+| `aggregation` | [`Aggregation`](#aggregation) | `false` | If omitted, default is used. | No constraints. | Configure aggregation of the resulting stream(s).
|
| `aggregation_cardinality_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, the metric reader's default cardinality limit is used. | * `exclusiveMinimum`: `0`
| Configure the aggregation cardinality limit.
|
| `attribute_keys` | [`IncludeExclude`](#includeexclude) | `false` | If omitted, all attribute keys are retained. | No constraints. | Configure attribute keys retained in the resulting stream(s).
|
| `description` | one of:
* `string`
* `null`
| `false` | If omitted or null, the instrument's origin description is used. | No constraints. | Configure metric description of the resulting stream(s).
|
@@ -4339,7 +4339,7 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
| `disabled` | one of:
* `boolean`
* `null`
| `false` | If omitted or null, false is used. | No constraints. | Configure if the logger is enabled or not.
|
-| `minimum_severity` | [`SeverityNumber`](#severitynumber) | `false` | If omitted, severity filtering is not applied. | No constraints. | Configure severity filtering.
Log records with an non-zero (i.e. unspecified) severity number which is less than minimum_severity are not processed.
Values include: TRACE, TRACE2, TRACE3, TRACE4, DEBUG, DEBUG2, DEBUG3, DEBUG4, INFO, INFO2, INFO3, INFO4, WARN, WARN2, WARN3, WARN4, ERROR, ERROR2, ERROR3, ERROR4, FATAL, FATAL2, FATAL3, FATAL4.
|
+| `minimum_severity` | [`SeverityNumber`](#severitynumber) | `false` | If omitted, severity filtering is not applied. | No constraints. | Configure severity filtering.
Log records with an non-zero (i.e. unspecified) severity number which is less than minimum_severity are not processed.
|
| `trace_based` | one of:
* `boolean`
* `null`
| `false` | If omitted or null, trace based filtering is not applied. | No constraints. | Configure trace based filtering.
If true, log records associated with unsampled trace contexts traces are not processed. If false, or if a log record is not associated with a trace context, trace based filtering is not applied.
|
@@ -4699,9 +4699,9 @@ Usages:
| Property | Type | Required? | Default and Null Behavior | Constraints | Description |
|---|---|---|---|---|---|
-| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | If omitted, explicit_bucket_histogram is used. | No constraints. | Configure default histogram aggregation.
Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
|
+| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | If omitted, explicit_bucket_histogram is used. | No constraints. | Configure default histogram aggregation.
|
| `output_stream` | one of:
* `string`
* `null`
| `false` | If omitted or null, stdout is used. | No constraints. | Configure output stream.
Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
|
-| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | If omitted, cumulative is used. | No constraints. | Configure temporality preference.
Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
|
+| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | If omitted, cumulative is used. | No constraints. | Configure temporality preference.
|
Language support status
@@ -4927,7 +4927,7 @@ Usages:
|---|---|---|---|---|---|
| `host` | one of:
* `string`
* `null`
| `false` | If omitted or null, localhost is used. | No constraints. | Configure host.
|
| `port` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 9464 is used. | No constraints. | Configure port.
|
-| `translation_strategy` | [`ExperimentalPrometheusTranslationStrategy`](#experimentalprometheustranslationstrategy) | `false` | If omitted, UnderscoreEscapingWithSuffixes is used. | No constraints. | Configure how Prometheus metrics are exposed. Values include:
* UnderscoreEscapingWithSuffixes, the default. This fully escapes metric names for classic Prometheus metric name compatibility, and includes appending type and unit suffixes.
* UnderscoreEscapingWithoutSuffixes, metric names will continue to escape special characters to _, but suffixes won't be attached.
* NoUTF8EscapingWithSuffixes will disable changing special characters to _. Special suffixes like units and _total for counters will be attached.
* NoTranslation. This strategy bypasses all metric and label name translation, passing them through unaltered.
|
+| `translation_strategy` | [`ExperimentalPrometheusTranslationStrategy`](#experimentalprometheustranslationstrategy) | `false` | If omitted, UnderscoreEscapingWithSuffixes is used. | No constraints. | Configure how Prometheus metrics are exposed. |
| `with_resource_constant_labels` | [`IncludeExclude`](#includeexclude) | `false` | If omitted, no resource attributes are added. | No constraints. | Configure Prometheus Exporter to add resource attributes as metrics attributes, where the resource attribute keys match the patterns. |
| `without_scope_info` | one of:
* `boolean`
* `null`
| `false` | If omitted or null, false is used. | No constraints. | Configure Prometheus Exporter to produce metrics without a scope info metric.
|
| `without_target_info` | one of:
* `boolean`
* `null`
| `false` | If omitted or null, false is used. | No constraints. | Configure Prometheus Exporter to produce metrics without a target info metric for the resource.
|
diff --git a/schema/common.yaml b/schema/common.yaml
index b1446539..79f000b6 100644
--- a/schema/common.yaml
+++ b/schema/common.yaml
@@ -81,7 +81,7 @@ $defs:
- "null"
description: |
Configure compression.
- Values include: gzip, none. Implementations may support other compression algorithms.
+ Known values include: gzip, none. Implementations may support other compression algorithms.
defaultBehavior: none is used
timeout:
type:
@@ -96,7 +96,7 @@ $defs:
$ref: "#/$defs/OtlpHttpEncoding"
description: |
Configure the encoding used for messages.
- Values include: protobuf, json. Implementations may not support json.
+ Implementations may not support json.
defaultBehavior: protobuf is used
OtlpHttpEncoding:
type:
@@ -148,7 +148,7 @@ $defs:
- "null"
description: |
Configure compression.
- Values include: gzip, none. Implementations may support other compression algorithms.
+ Known values include: gzip, none. Implementations may support other compression algorithms.
defaultBehavior: none is used
timeout:
type:
diff --git a/schema/logger_provider.yaml b/schema/logger_provider.yaml
index d3b20683..202a4f80 100644
--- a/schema/logger_provider.yaml
+++ b/schema/logger_provider.yaml
@@ -190,7 +190,6 @@ $defs:
description: |
Configure severity filtering.
Log records with an non-zero (i.e. unspecified) severity number which is less than minimum_severity are not processed.
- Values include: TRACE, TRACE2, TRACE3, TRACE4, DEBUG, DEBUG2, DEBUG3, DEBUG4, INFO, INFO2, INFO3, INFO4, WARN, WARN2, WARN3, WARN4, ERROR, ERROR2, ERROR3, ERROR4, FATAL, FATAL2, FATAL3, FATAL4.
defaultBehavior: severity filtering is not applied
trace_based:
type:
diff --git a/schema/meter_provider.yaml b/schema/meter_provider.yaml
index 432d6276..96e237a0 100644
--- a/schema/meter_provider.yaml
+++ b/schema/meter_provider.yaml
@@ -20,7 +20,6 @@ properties:
$ref: "#/$defs/ExemplarFilter"
description: |
Configure the exemplar filter.
- Values include: trace_based, always_on, always_off. For behavior of values see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#metrics-sdk-configuration.
defaultBehavior: trace_based is used
meter_configurator/development:
$ref: "#/$defs/ExperimentalMeterConfigurator"
@@ -273,14 +272,7 @@ $defs:
defaultBehavior: no resource attributes are added
translation_strategy:
$ref: "#/$defs/ExperimentalPrometheusTranslationStrategy"
- description: |
- Configure how Prometheus metrics are exposed. Values include:
-
- * UnderscoreEscapingWithSuffixes, the default. This fully escapes metric names for classic Prometheus metric name compatibility, and includes appending type and unit suffixes.
- * UnderscoreEscapingWithoutSuffixes, metric names will continue to escape special characters to _, but suffixes won't be attached.
- * NoUTF8EscapingWithSuffixes will disable changing special characters to _. Special suffixes like units and _total for counters will be attached.
- * NoTranslation. This strategy bypasses all metric and label name translation, passing them through unaltered.
-
+ description: Configure how Prometheus metrics are exposed.
defaultBehavior: UnderscoreEscapingWithSuffixes is used
ExperimentalPrometheusTranslationStrategy:
type:
@@ -372,7 +364,7 @@ $defs:
- "null"
description: |
Configure compression.
- Values include: gzip, none. Implementations may support other compression algorithms.
+ Known values include: gzip, none. Implementations may support other compression algorithms.
defaultBehavior: none is used
timeout:
type:
@@ -387,19 +379,17 @@ $defs:
$ref: common.yaml#/$defs/OtlpHttpEncoding
description: |
Configure the encoding used for messages.
- Values include: protobuf, json. Implementations may not support json.
+ Implementations may not support json.
defaultBehavior: protobuf is used
temporality_preference:
$ref: "#/$defs/ExporterTemporalityPreference"
description: |
Configure temporality preference.
- Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
defaultBehavior: cumulative is used
default_histogram_aggregation:
$ref: "#/$defs/ExporterDefaultHistogramAggregation"
description: |
Configure default histogram aggregation.
- Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
defaultBehavior: explicit_bucket_histogram is used
OtlpGrpcMetricExporter:
type:
@@ -441,7 +431,7 @@ $defs:
- "null"
description: |
Configure compression.
- Values include: gzip, none. Implementations may support other compression algorithms.
+ Known values include: gzip, none. Implementations may support other compression algorithms.
defaultBehavior: none is used
timeout:
type:
@@ -456,13 +446,11 @@ $defs:
$ref: "#/$defs/ExporterTemporalityPreference"
description: |
Configure temporality preference.
- Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
defaultBehavior: cumulative is used
default_histogram_aggregation:
$ref: "#/$defs/ExporterDefaultHistogramAggregation"
description: |
Configure default histogram aggregation.
- Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
defaultBehavior: explicit_bucket_histogram is used
ExperimentalOtlpFileMetricExporter:
type:
@@ -482,13 +470,11 @@ $defs:
$ref: "#/$defs/ExporterTemporalityPreference"
description: |
Configure temporality preference.
- Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
defaultBehavior: cumulative is used
default_histogram_aggregation:
$ref: "#/$defs/ExporterDefaultHistogramAggregation"
description: |
Configure default histogram aggregation.
- Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
defaultBehavior: explicit_bucket_histogram is used
ConsoleMetricExporter:
type:
@@ -500,13 +486,11 @@ $defs:
$ref: "#/$defs/ExporterTemporalityPreference"
description: |
Configure temporality preference.
- Values include: cumulative, delta, low_memory. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
defaultBehavior: cumulative is used
default_histogram_aggregation:
$ref: "#/$defs/ExporterDefaultHistogramAggregation"
description: |
Configure default histogram aggregation.
- Values include: explicit_bucket_histogram, base2_exponential_bucket_histogram. For behavior of values, see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk_exporters/otlp.md.
defaultBehavior: explicit_bucket_histogram is used
View:
type: object
@@ -538,7 +522,6 @@ $defs:
$ref: "#/$defs/InstrumentType"
description: |
Configure instrument type selection criteria.
- Values include: counter, gauge, histogram, observable_counter, observable_gauge, observable_up_down_counter, up_down_counter.
defaultBehavior: all instrument types match
unit:
type:
@@ -610,7 +593,6 @@ $defs:
$ref: "#/$defs/Aggregation"
description: |
Configure aggregation of the resulting stream(s).
- Values include: default, drop, explicit_bucket_histogram, base2_exponential_bucket_histogram, last_value, sum. For behavior of values see https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#aggregation.
defaultBehavior: default is used
aggregation_cardinality_limit:
type:
diff --git a/schema/resource.yaml b/schema/resource.yaml
index e4796512..0b0c13e9 100644
--- a/schema/resource.yaml
+++ b/schema/resource.yaml
@@ -63,7 +63,6 @@ $defs:
$ref: "#/$defs/AttributeType"
description: |
The attribute type.
- Values include: string, bool, int, double, string_array, bool_array, int_array, double_array.
defaultBehavior: string is used
required:
- name
diff --git a/scripts/compile-schema.js b/scripts/compile-schema.js
index 8c3ffeea..3d03d584 100644
--- a/scripts/compile-schema.js
+++ b/scripts/compile-schema.js
@@ -27,14 +27,14 @@ sourceTypes.sort((a, b) => a.type.localeCompare(b.type));
const defs = {};
sourceTypes.filter(sourceSchemaType => sourceSchemaType.type !== rootTypeName)
.forEach(sourceSchemaType => {
- defs[sourceSchemaType.type] = prepareSchemaForOutput(sourceSchemaType);
+ defs[sourceSchemaType.type] = prepareSchemaForOutput(sourceSchemaType, sourceTypes);
});
const rootType = sourceTypes.find(sourceSchemaType => sourceSchemaType.type === rootTypeName);
if (!rootType) {
throw new Error(`Root type ${rootTypeName} not found in source schema.`);
}
-const rootTypeSchema = prepareSchemaForOutput(rootType);
+const rootTypeSchema = prepareSchemaForOutput(rootType, sourceTypes);
const output = {
"$id": "https://opentelemetry.io/otelconfig/opentelemetry_configuration.json",
@@ -48,14 +48,14 @@ fs.writeFileSync(schemaPath, JSON.stringify(output, null, 2));
// Helper functions
-function prepareSchemaForOutput(sourceSchemaType) {
+function prepareSchemaForOutput(sourceSchemaType, sourceTypes) {
const schema = JSON.parse(JSON.stringify(sourceSchemaType.schema));
delete schema['$defs'];
stripMetadata(schema);
replaceCrossFileRefs(schema);
- enrichDescriptions(sourceSchemaType, schema);
+ enrichDescriptions(sourceSchemaType, schema, sourceTypes);
return schema;
}
@@ -94,7 +94,7 @@ function replaceCrossFileRefs(schema) {
});
}
-function enrichDescriptions(sourceSchemaType, schema) {
+function enrichDescriptions(sourceSchemaType, schema, sourceTypes) {
const properties = schema.properties;
if (!properties) {
return;
@@ -102,9 +102,20 @@ function enrichDescriptions(sourceSchemaType, schema) {
Object.entries(properties).forEach(([propertyKey, propertySchema]) => {
const sourceProperty = sourceSchemaType.properties.find(property => property.property === propertyKey);
let description = propertySchema['description'];
- if (!description.endsWith('\n')) {
- description += '\n';
+
+ // Add enum value descriptions if property is an enum type
+ const enumSourceType = sourceProperty.types.map(type => sourceTypes.find(sourceType => sourceType.type === type)).find(sourceType => sourceType && sourceType.isEnumType());
+ if (enumSourceType) {
+ description = maybeAddLineBreak(description);
+ description += 'Values include:\n';
+ enumSourceType.sortedEnumValues().forEach(enumValue => {
+ const enumDescription = enumSourceType.schema['enumDescriptions'][enumValue];
+ description += `* ${enumValue}: ${enumDescription}\n`;
+ });
}
+
+ // Add default and null behavior
+ description = maybeAddLineBreak(description)
description += sourceProperty.formatDefaultAndNullBehavior();
if (!description.endsWith('\n')) {
description += '\n';
@@ -113,6 +124,13 @@ function enrichDescriptions(sourceSchemaType, schema) {
});
}
+function maybeAddLineBreak(str) {
+ if (!str.endsWith('\n')) {
+ return str + '\n';
+ }
+ return str;
+}
+
// Validation functions
function allPropertiesShouldHaveDescriptions(sourceSchemaType, messages) {