diff --git a/opentelemetry_configuration.json b/opentelemetry_configuration.json index 3ae275ea..091d9134 100644 --- a/opentelemetry_configuration.json +++ b/opentelemetry_configuration.json @@ -7,7 +7,7 @@ "properties": { "file_format": { "type": "string", - "description": "The file format version.\nThe yaml format is documented at\nhttps://github.com/open-telemetry/opentelemetry-configuration/tree/main/schema\n" + "description": "The file format version.\nThe yaml format is documented at\nhttps://github.com/open-telemetry/opentelemetry-configuration/tree/main/schema\nProperty is required and must be non-null.\n" }, "disabled": { "type": [ @@ -21,11 +21,11 @@ "string", "null" ], - "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.\nIf omitted or null, info is used.\n" }, "attribute_limits": { "$ref": "#/$defs/AttributeLimits", - "description": "Configure general attribute limits. See also tracer_provider.limits, logger_provider.limits.\n" + "description": "Configure general attribute limits. See also tracer_provider.limits, logger_provider.limits.\nIf omitted, default values as described in AttributeLimits are used.\n" }, "logger_provider": { "$ref": "#/$defs/LoggerProvider", @@ -49,7 +49,7 @@ }, "instrumentation/development": { "$ref": "#/$defs/ExperimentalInstrumentation", - "description": "Configure instrumentation.\n" + "description": "Configure instrumentation.\nIf omitted, instrumentation defaults are used.\n" } }, "required": [ @@ -64,27 +64,27 @@ "properties": { "default": { "$ref": "#/$defs/DefaultAggregation", - "description": "TODO" + "description": "Configure aggregation to be the default aggregation for the instrument type.\nSee https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#default-aggregation for details.\nIf omitted, ignore.\n" }, "drop": { "$ref": "#/$defs/DropAggregation", - "description": "TODO" + "description": "Configure the aggregation to be drop.\nSee https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#drop-aggregation for details.\nIf omitted, ignore.\n" }, "explicit_bucket_histogram": { "$ref": "#/$defs/ExplicitBucketHistogramAggregation", - "description": "Configure aggregation to be explicit_bucket_histogram." + "description": "Configure aggregation to be explicit_bucket_histogram.\nSee https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#explicit-bucket-histogram-aggregation for details.\nIf omitted, ignore. If present and null, default values as described in ExplicitBucketHistogramAggregation are used.\n" }, "base2_exponential_bucket_histogram": { "$ref": "#/$defs/Base2ExponentialBucketHistogramAggregation", - "description": "TODO" + "description": "Configure aggregation to be base2_exponential_bucket_histogram.\nSee https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#base2-exponential-bucket-histogram-aggregation for details.\nIf omitted, ignore. If present and null, default values as described in Base2ExponentialBucketHistogramAggregation are used.\n" }, "last_value": { "$ref": "#/$defs/LastValueAggregation", - "description": "TODO" + "description": "Configure the aggregation to be last_value.\nSee https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#last-value-aggregation for details.\nIf omitted, ignore.\n" }, "sum": { "$ref": "#/$defs/SumAggregation", - "description": "TODO" + "description": "Configure the aggregation to be sum.\nSee https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#sum-aggregation for details.\nIf omitted, ignore.\n" } } }, @@ -130,7 +130,7 @@ "properties": { "name": { "type": "string", - "description": "The attribute name.\n" + "description": "The attribute name.\nProperty is required and must be non-null.\n" }, "value": { "oneOf": [ @@ -168,11 +168,11 @@ "minItems": 1 } ], - "description": "The attribute value.\nThe type of value must match .type.\n" + "description": "The attribute value.\nThe type of value must match .type.\nProperty is required and must be non-null.\n" }, "type": { "$ref": "#/$defs/AttributeType", - "description": "The attribute type.\nValues include: string, bool, int, double, string_array, bool_array, int_array, double_array.\nIf omitted or null, string is used.\n" + "description": "The attribute type.\nValues include: string, bool, int, double, string_array, bool_array, int_array, double_array.\nIf omitted, string is used.\n" } }, "required": [ @@ -231,7 +231,7 @@ ], "minimum": -10, "maximum": 20, - "description": "TODO" + "description": "TODO\nIf omitted or null, 20 is used.\n" }, "max_size": { "type": [ @@ -239,14 +239,14 @@ "null" ], "minimum": 2, - "description": "TODO" + "description": "TODO\nIf omitted or null, 160 is used.\n" }, "record_min_max": { "type": [ "boolean", "null" ], - "description": "TODO" + "description": "TODO\nIf omitted or null, true is used.\n" } } }, @@ -288,7 +288,7 @@ }, "exporter": { "$ref": "#/$defs/LogRecordExporter", - "description": "Configure exporter." + "description": "Configure exporter.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -333,7 +333,7 @@ }, "exporter": { "$ref": "#/$defs/SpanExporter", - "description": "Configure exporter." + "description": "Configure exporter.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -426,11 +426,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 or null, cumulative is used.\n" + "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" }, "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 or null, explicit_bucket_histogram is used.\n" + "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" } } }, @@ -482,23 +482,23 @@ "properties": { "root": { "$ref": "#/$defs/ExperimentalComposableSampler", - "description": "Configures the sampler for spans with no parent." + "description": "Configures the sampler for spans with no parent.\nIf omitted, ignore.\n" }, "remote_parent_sampled": { "$ref": "#/$defs/ExperimentalComposableSampler", - "description": "Configures the sampler for spans with a remote parent that is sampled." + "description": "Configures the sampler for spans with a remote parent that is sampled.\nIf omitted, ignore.\n" }, "remote_parent_not_sampled": { "$ref": "#/$defs/ExperimentalComposableSampler", - "description": "Configures the sampler for spans with a remote parent that is not sampled." + "description": "Configures the sampler for spans with a remote parent that is not sampled.\nIf omitted, ignore.\n" }, "local_parent_sampled": { "$ref": "#/$defs/ExperimentalComposableSampler", - "description": "Configures the sampler for spans with a local parent that is sampled." + "description": "Configures the sampler for spans with a local parent that is sampled.\nIf omitted, ignore.\n" }, "local_parent_not_sampled": { "$ref": "#/$defs/ExperimentalComposableSampler", - "description": "Configures the sampler for spans with a local parent that is not sampled." + "description": "Configures the sampler for spans with a local parent that is not sampled.\nIf omitted, ignore.\n" } } }, @@ -533,19 +533,19 @@ "properties": { "always_off": { "$ref": "#/$defs/ExperimentalComposableAlwaysOffSampler", - "description": "Configure sampler to be always_off." + "description": "Configure sampler to be always_off.\nIf omitted, ignore.\n" }, "always_on": { "$ref": "#/$defs/ExperimentalComposableAlwaysOnSampler", - "description": "Configure sampler to be always_on." + "description": "Configure sampler to be always_on.\nIf omitted, ignore.\n" }, "parent_based": { "$ref": "#/$defs/ExperimentalComposableParentBasedSampler", - "description": "Configure sampler to be parent_based." + "description": "Configure sampler to be parent_based.\nIf omitted, ignore.\n" }, "probability": { "$ref": "#/$defs/ExperimentalComposableProbabilitySampler", - "description": "Configure sampler to be probability." + "description": "Configure sampler to be probability.\nIf omitted, ignore.\n" } } }, @@ -562,11 +562,11 @@ "properties": { "peer": { "$ref": "#/$defs/ExperimentalPeerInstrumentation", - "description": "Configure instrumentations following the peer semantic conventions.\nSee peer semantic conventions: https://opentelemetry.io/docs/specs/semconv/attributes-registry/peer/\n" + "description": "Configure instrumentations following the peer semantic conventions.\nSee peer semantic conventions: https://opentelemetry.io/docs/specs/semconv/attributes-registry/peer/\nIf omitted, defaults as described in ExperimentalPeerInstrumentation are used.\n" }, "http": { "$ref": "#/$defs/ExperimentalHttpInstrumentation", - "description": "Configure instrumentations following the http semantic conventions.\nSee http semantic conventions: https://opentelemetry.io/docs/specs/semconv/http/\n" + "description": "Configure instrumentations following the http semantic conventions.\nSee http semantic conventions: https://opentelemetry.io/docs/specs/semconv/http/\nIf omitted, defaults as described in ExperimentalHttpInstrumentation are used.\n" } } }, @@ -587,14 +587,15 @@ "items": { "type": "string" }, - "description": "Configure headers to capture for outbound http requests.\n" + "description": "Configure headers to capture for outbound http requests.\nIf omitted, no outbound request headers are captured.\n" }, "response_captured_headers": { "type": "array", + "minItems": 1, "items": { "type": "string" }, - "description": "Configure headers to capture for inbound http responses.\n" + "description": "Configure headers to capture for inbound http responses.\nIf omitted, no inbound response headers are captured.\n" } } }, @@ -604,11 +605,11 @@ "properties": { "client": { "$ref": "#/$defs/ExperimentalHttpClientInstrumentation", - "description": "Configure instrumentations following the http client semantic conventions." + "description": "Configure instrumentations following the http client semantic conventions.\nIf omitted, defaults as described in ExperimentalHttpClientInstrumentation are used.\n" }, "server": { "$ref": "#/$defs/ExperimentalHttpServerInstrumentation", - "description": "Configure instrumentations following the http server semantic conventions." + "description": "Configure instrumentations following the http server semantic conventions.\nIf omitted, defaults as described in ExperimentalHttpServerInstrumentation are used.\n" } } }, @@ -622,7 +623,7 @@ "items": { "type": "string" }, - "description": "Configure headers to capture for inbound http requests.\n" + "description": "Configure headers to capture for inbound http requests.\nIf omitted, no request headers are captured.\n" }, "response_captured_headers": { "type": "array", @@ -630,7 +631,7 @@ "items": { "type": "string" }, - "description": "Configure headers to capture for outbound http responses.\n" + "description": "Configure headers to capture for outbound http responses.\nIf omitted, no response headers are captures.\n" } } }, @@ -640,51 +641,51 @@ "properties": { "general": { "$ref": "#/$defs/ExperimentalGeneralInstrumentation", - "description": "Configure general SemConv options that may apply to multiple languages and instrumentations.\nInstrumenation may merge general config options with the language specific configuration at .instrumentation..\n" + "description": "Configure general SemConv options that may apply to multiple languages and instrumentations.\nInstrumenation may merge general config options with the language specific configuration at .instrumentation..\nIf omitted, default values as described in ExperimentalGeneralInstrumentation are used.\n" }, "cpp": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure C++ language-specific instrumentation libraries." + "description": "Configure C++ language-specific instrumentation libraries.\nIf omitted, instrumentation defaults are used.\n" }, "dotnet": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure .NET language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure .NET language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "erlang": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure Erlang language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure Erlang language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "go": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure Go language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure Go language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "java": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure Java language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure Java language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "js": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure JavaScript language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure JavaScript language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "php": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure PHP language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure PHP language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "python": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure Python language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure Python language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "ruby": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure Ruby language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure Ruby language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "rust": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure Rust language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure Rust language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" }, "swift": { "$ref": "#/$defs/ExperimentalLanguageSpecificInstrumentation", - "description": "Configure Swift language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\n" + "description": "Configure Swift language-specific instrumentation libraries.\nEach entry's key identifies a particular instrumentation library. The corresponding value configures it.\nIf omitted, instrumentation defaults are used.\n" } } }, @@ -697,10 +698,9 @@ "properties": { "endpoint": { "type": [ - "string", - "null" + "string" ], - "description": "TODO" + "description": "Configure the endpoint of the jaeger remote sampling service.\nProperty is required and must be non-null.\n" }, "interval": { "type": [ @@ -708,13 +708,17 @@ "null" ], "minimum": 0, - "description": "TODO" + "description": "Configure the polling interval (in milliseconds) to fetch from the remote sampling service.\nIf omitted or null, 60000 is used.\n" }, "initial_sampler": { "$ref": "#/$defs/Sampler", - "description": "TODO" + "description": "Configure the initial sampler used before first configuration is fetched.\nProperty is required and must be non-null.\n" } - } + }, + "required": [ + "endpoint", + "initial_sampler" + ] }, "ExperimentalLanguageSpecificInstrumentation": { "type": "object", @@ -737,7 +741,7 @@ }, "minimum_severity": { "$ref": "#/$defs/ExperimentalSeverityNumber", - "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 or null, 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: 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" }, "trace_based": { "type": [ @@ -756,7 +760,7 @@ "properties": { "default_config": { "$ref": "#/$defs/ExperimentalLoggerConfig", - "description": "Configure the default logger config used there is no matching entry in .logger_configurator/development.loggers." + "description": "Configure the default logger config used there is no matching entry in .logger_configurator/development.loggers.\nIf omitted, unmatched .loggers use default values as described in ExperimentalLoggerConfig.\n" }, "loggers": { "type": "array", @@ -764,7 +768,7 @@ "items": { "$ref": "#/$defs/ExperimentalLoggerMatcherAndConfig" }, - "description": "Configure loggers." + "description": "Configure loggers.\nIf omitted, all loggers use .default_config.\n" } } }, @@ -778,11 +782,11 @@ "type": [ "string" ], - "description": "Configure logger names to match, evaluated as follows:\n\n * If the logger name exactly matches.\n * If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\n" + "description": "Configure logger names to match, evaluated as follows:\n\n * If the logger name exactly matches.\n * If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalLoggerConfig", - "description": "The logger config." + "description": "The logger config.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -800,7 +804,7 @@ "type": [ "boolean" ], - "description": "Configure if the meter is enabled or not." + "description": "Configure if the meter is enabled or not.\nIf omitted, false is used.\n" } } }, @@ -812,7 +816,7 @@ "properties": { "default_config": { "$ref": "#/$defs/ExperimentalMeterConfig", - "description": "Configure the default meter config used there is no matching entry in .meter_configurator/development.meters." + "description": "Configure the default meter config used there is no matching entry in .meter_configurator/development.meters.\nIf omitted, unmatched .meters use default values as described in ExperimentalMeterConfig.\n" }, "meters": { "type": "array", @@ -820,7 +824,7 @@ "items": { "$ref": "#/$defs/ExperimentalMeterMatcherAndConfig" }, - "description": "Configure meters." + "description": "Configure meters.\nIf omitted, all meters used .default_config.\n" } } }, @@ -834,11 +838,11 @@ "type": [ "string" ], - "description": "Configure meter names to match, evaluated as follows:\n\n * If the meter name exactly matches.\n * If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\n" + "description": "Configure meter names to match, evaluated as follows:\n\n * If the meter name exactly matches.\n * If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalMeterConfig", - "description": "The meter config." + "description": "The meter config.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -878,11 +882,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 or null, cumulative is used.\n" + "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" }, "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 or null, explicit_bucket_histogram is used.\n" + "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" } } }, @@ -896,7 +900,7 @@ "items": { "$ref": "#/$defs/ExperimentalPeerServiceMapping" }, - "description": "Configure the service mapping for instrumentations following peer.service semantic conventions.\nSee peer.service semantic conventions: https://opentelemetry.io/docs/specs/semconv/general/attributes/#general-remote-service-attributes\n" + "description": "Configure the service mapping for instrumentations following peer.service semantic conventions.\nSee peer.service semantic conventions: https://opentelemetry.io/docs/specs/semconv/general/attributes/#general-remote-service-attributes\nIf omitted, no peer service mappings are used.\n" } } }, @@ -906,11 +910,11 @@ "properties": { "peer": { "type": "string", - "description": "The IP address to map.\n" + "description": "The IP address to map.\nProperty is required and must be non-null.\n" }, "service": { "type": "string", - "description": "The logical name corresponding to the IP address of .peer.\n" + "description": "The logical name corresponding to the IP address of .peer.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -980,11 +984,11 @@ }, "with_resource_constant_labels": { "$ref": "#/$defs/IncludeExclude", - "description": "Configure Prometheus Exporter to add resource attributes as metrics attributes, where the resource attribute keys match the patterns." + "description": "Configure Prometheus Exporter to add resource attributes as metrics attributes, where the resource attribute keys match the patterns.\nIf omitted, no resource attributes are added.\n" }, "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.\n\nIf omitted or null, UnderscoreEscapingWithSuffixes is used.\n" + "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" } } }, @@ -1006,7 +1010,7 @@ "properties": { "attributes": { "$ref": "#/$defs/IncludeExclude", - "description": "Configure attributes provided by resource detectors." + "description": "Configure attributes provided by resource detectors.\nIf omitted, all attributes from resource detectors are added.\n" }, "detectors": { "type": "array", @@ -1014,7 +1018,7 @@ "items": { "$ref": "#/$defs/ExperimentalResourceDetector" }, - "description": "Configure resource detectors.\nResource detector names are dependent on the SDK language ecosystem. Please consult documentation for each respective language. \nIf omitted or null, no resource detectors are enabled.\n" + "description": "Configure resource detectors.\nResource detector names are dependent on the SDK language ecosystem. Please consult documentation for each respective language. \nIf omitted, no resource detectors are enabled.\n" } } }, @@ -1031,19 +1035,19 @@ "properties": { "container": { "$ref": "#/$defs/ExperimentalContainerResourceDetector", - "description": "Enable the container resource detector, which populates container.* attributes.\n" + "description": "Enable the container resource detector, which populates container.* attributes.\nIf omitted, ignore.\n" }, "host": { "$ref": "#/$defs/ExperimentalHostResourceDetector", - "description": "Enable the host resource detector, which populates host.* and os.* attributes.\n" + "description": "Enable the host resource detector, which populates host.* and os.* attributes.\nIf omitted, ignore.\n" }, "process": { "$ref": "#/$defs/ExperimentalProcessResourceDetector", - "description": "Enable the process resource detector, which populates process.* attributes.\n" + "description": "Enable the process resource detector, which populates process.* attributes.\nIf omitted, ignore.\n" }, "service": { "$ref": "#/$defs/ExperimentalServiceResourceDetector", - "description": "Enable the service detector, which populates service.name based on the OTEL_SERVICE_NAME environment variable and service.instance.id.\n" + "description": "Enable the service detector, which populates service.name based on the OTEL_SERVICE_NAME environment variable and service.instance.id.\nIf omitted, ignore.\n" } } }, @@ -1096,7 +1100,7 @@ "type": [ "boolean" ], - "description": "Configure if the tracer is enabled or not." + "description": "Configure if the tracer is enabled or not.\nIf omitted, false is used.\n" } } }, @@ -1108,7 +1112,7 @@ "properties": { "default_config": { "$ref": "#/$defs/ExperimentalTracerConfig", - "description": "Configure the default tracer config used there is no matching entry in .tracer_configurator/development.tracers." + "description": "Configure the default tracer config used there is no matching entry in .tracer_configurator/development.tracers.\nIf omitted, unmatched .tracers use default values as described in ExperimentalTracerConfig.\n" }, "tracers": { "type": "array", @@ -1116,7 +1120,7 @@ "items": { "$ref": "#/$defs/ExperimentalTracerMatcherAndConfig" }, - "description": "Configure tracers." + "description": "Configure tracers.\nIf omitted, all tracers use .default_config.\n" } } }, @@ -1130,11 +1134,11 @@ "type": [ "string" ], - "description": "Configure tracer names to match, evaluated as follows:\n\n * If the tracer name exactly matches.\n * If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\n" + "description": "Configure tracer names to match, evaluated as follows:\n\n * If the tracer name exactly matches.\n * If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalTracerConfig", - "description": "The tracer config." + "description": "The tracer config.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -1315,15 +1319,15 @@ "items": { "$ref": "#/$defs/LogRecordProcessor" }, - "description": "Configure log record processors." + "description": "Configure log record processors.\nProperty is required and must be non-null.\n" }, "limits": { "$ref": "#/$defs/LogRecordLimits", - "description": "Configure log record limits. See also attribute_limits." + "description": "Configure log record limits. See also attribute_limits.\nIf omitted, default values as described in LogRecordLimits are used.\n" }, "logger_configurator/development": { "$ref": "#/$defs/ExperimentalLoggerConfigurator", - "description": "Configure loggers.\n" + "description": "Configure loggers.\nIf omitted, all loggers use default values as described in ExperimentalLoggerConfig.\n" } }, "required": [ @@ -1343,19 +1347,19 @@ "properties": { "otlp_http": { "$ref": "#/$defs/OtlpHttpExporter", - "description": "Configure exporter to be OTLP with HTTP transport." + "description": "Configure exporter to be OTLP with HTTP transport.\nIf omitted, ignore.\n" }, "otlp_grpc": { "$ref": "#/$defs/OtlpGrpcExporter", - "description": "Configure exporter to be OTLP with gRPC transport." + "description": "Configure exporter to be OTLP with gRPC transport.\nIf omitted, ignore.\n" }, "otlp_file/development": { "$ref": "#/$defs/ExperimentalOtlpFileExporter", - "description": "Configure exporter to be OTLP with file transport.\n" + "description": "Configure exporter to be OTLP with file transport.\nIf omitted, ignore.\n" }, "console": { "$ref": "#/$defs/ConsoleExporter", - "description": "Configure exporter to be console." + "description": "Configure exporter to be console.\nIf omitted, ignore.\n" } } }, @@ -1394,11 +1398,11 @@ "properties": { "batch": { "$ref": "#/$defs/BatchLogRecordProcessor", - "description": "Configure a batch log record processor." + "description": "Configure a batch log record processor.\nIf omitted, ignore.\n" }, "simple": { "$ref": "#/$defs/SimpleLogRecordProcessor", - "description": "Configure a simple log record processor." + "description": "Configure a simple log record processor.\nIf omitted, ignore.\n" } } }, @@ -1412,7 +1416,7 @@ "items": { "$ref": "#/$defs/MetricReader" }, - "description": "Configure metric readers." + "description": "Configure metric readers.\nProperty is required and must be non-null.\n" }, "views": { "type": "array", @@ -1420,15 +1424,15 @@ "items": { "$ref": "#/$defs/View" }, - "description": "Configure views. \nEach view has a selector which determines the instrument(s) it applies to, and a configuration for the resulting stream(s).\n" + "description": "Configure views. \nEach view has a selector which determines the instrument(s) it applies to, and a configuration for the resulting stream(s).\nIf omitted, no views are registered.\n" }, "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 or null, trace_based is used.\n" + "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" }, "meter_configurator/development": { "$ref": "#/$defs/ExperimentalMeterConfigurator", - "description": "Configure meters.\n" + "description": "Configure meters.\nIf omitted, all meters use default values as described in ExperimentalMeterConfig.\n" } }, "required": [ @@ -1448,7 +1452,7 @@ "properties": { "opencensus": { "$ref": "#/$defs/OpenCensusMetricProducer", - "description": "Configure metric producer to be opencensus." + "description": "Configure metric producer to be opencensus.\nIf omitted, ignore.\n" } } }, @@ -1460,11 +1464,11 @@ "properties": { "periodic": { "$ref": "#/$defs/PeriodicMetricReader", - "description": "Configure a periodic metric reader." + "description": "Configure a periodic metric reader.\nIf omitted, ignore.\n" }, "pull": { "$ref": "#/$defs/PullMetricReader", - "description": "Configure a pull based metric reader." + "description": "Configure a pull based metric reader.\nIf omitted, ignore.\n" } } }, @@ -1474,14 +1478,14 @@ "properties": { "name": { "type": "string", - "description": "The name of the pair." + "description": "The name of the pair.\nProperty is required and must be non-null.\n" }, "value": { "type": [ "string", "null" ], - "description": "The value of the pair." + "description": "The value of the pair.\nProperty must be present, but if null TODO.\n" } }, "required": [ @@ -1519,7 +1523,7 @@ }, "tls": { "$ref": "#/$defs/GrpcTls", - "description": "Configure TLS settings for the exporter." + "description": "Configure TLS settings for the exporter.\nIf omitted, system default TLS settings are used.\n" }, "headers": { "type": "array", @@ -1527,7 +1531,7 @@ "items": { "$ref": "#/$defs/NameStringValuePair" }, - "description": "Configure headers. Entries have higher priority than entries from .headers_list.\nIf an entry's .value is null, the entry is ignored.\n" + "description": "Configure headers. Entries have higher priority than entries from .headers_list.\nIf an entry's .value is null, the entry is ignored.\nIf omitted, no headers are added.\n" }, "headers_list": { "type": [ @@ -1569,7 +1573,7 @@ }, "tls": { "$ref": "#/$defs/GrpcTls", - "description": "Configure TLS settings for the exporter." + "description": "Configure TLS settings for the exporter.\nIf omitted, system default TLS settings are used.\n" }, "headers": { "type": "array", @@ -1577,7 +1581,7 @@ "items": { "$ref": "#/$defs/NameStringValuePair" }, - "description": "Configure headers. Entries have higher priority than entries from .headers_list.\nIf an entry's .value is null, the entry is ignored.\n" + "description": "Configure headers. Entries have higher priority than entries from .headers_list.\nIf an entry's .value is null, the entry is ignored.\nIf omitted, no headers are added.\n" }, "headers_list": { "type": [ @@ -1603,11 +1607,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 or null, cumulative is used.\n" + "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" }, "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 or null, explicit_bucket_histogram is used.\n" + "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" } } }, @@ -1637,7 +1641,7 @@ }, "tls": { "$ref": "#/$defs/HttpTls", - "description": "Configure TLS settings for the exporter." + "description": "Configure TLS settings for the exporter.\nIf omitted, system default TLS settings are used.\n" }, "headers": { "type": "array", @@ -1645,7 +1649,7 @@ "items": { "$ref": "#/$defs/NameStringValuePair" }, - "description": "Configure headers. Entries have higher priority than entries from .headers_list.\nIf an entry's .value is null, the entry is ignored.\n" + "description": "Configure headers. Entries have higher priority than entries from .headers_list.\nIf an entry's .value is null, the entry is ignored.\nIf omitted, no headers are added.\n" }, "headers_list": { "type": [ @@ -1671,7 +1675,7 @@ }, "encoding": { "$ref": "#/$defs/OtlpHttpEncoding", - "description": "Configure the encoding used for messages. \nValues include: protobuf, json. Implementations may not support json.\nIf omitted or null, protobuf is used.\n" + "description": "Configure the encoding used for messages. \nValues include: protobuf, json. Implementations may not support json.\nIf omitted, protobuf is used.\n" } } }, @@ -1691,7 +1695,7 @@ }, "tls": { "$ref": "#/$defs/HttpTls", - "description": "Configure TLS settings for the exporter." + "description": "Configure TLS settings for the exporter.\nIf omitted, system default TLS settings are used.\n" }, "headers": { "type": "array", @@ -1699,7 +1703,7 @@ "items": { "$ref": "#/$defs/NameStringValuePair" }, - "description": "Configure headers. Entries have higher priority than entries from .headers_list.\nIf an entry's .value is null, the entry is ignored.\n" + "description": "Configure headers. Entries have higher priority than entries from .headers_list.\nIf an entry's .value is null, the entry is ignored.\nIf omitted, no headers are added.\n" }, "headers_list": { "type": [ @@ -1725,15 +1729,15 @@ }, "encoding": { "$ref": "#/$defs/OtlpHttpEncoding", - "description": "Configure the encoding used for messages. \nValues include: protobuf, json. Implementations may not support json.\nIf omitted or null, protobuf is used.\n" + "description": "Configure the encoding used for messages. \nValues include: protobuf, json. Implementations may not support json.\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 or null, cumulative is used.\n" + "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" }, "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 or null, explicit_bucket_histogram is used.\n" + "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" } } }, @@ -1746,23 +1750,23 @@ "properties": { "root": { "$ref": "#/$defs/Sampler", - "description": "Configure root sampler.\nIf omitted or null, always_on is used.\n" + "description": "Configure root sampler.\nIf omitted, always_on is used.\n" }, "remote_parent_sampled": { "$ref": "#/$defs/Sampler", - "description": "Configure remote_parent_sampled sampler.\nIf omitted or null, always_on is used.\n" + "description": "Configure remote_parent_sampled sampler.\nIf omitted, always_on is used.\n" }, "remote_parent_not_sampled": { "$ref": "#/$defs/Sampler", - "description": "Configure remote_parent_not_sampled sampler.\nIf omitted or null, always_off is used.\n" + "description": "Configure remote_parent_not_sampled sampler.\nIf omitted, always_off is used.\n" }, "local_parent_sampled": { "$ref": "#/$defs/Sampler", - "description": "Configure local_parent_sampled sampler.\nIf omitted or null, always_on is used.\n" + "description": "Configure local_parent_sampled sampler.\nIf omitted, always_on is used.\n" }, "local_parent_not_sampled": { "$ref": "#/$defs/Sampler", - "description": "Configure local_parent_not_sampled sampler.\nIf omitted or null, always_off is used.\n" + "description": "Configure local_parent_not_sampled sampler.\nIf omitted, always_off is used.\n" } } }, @@ -1788,7 +1792,7 @@ }, "exporter": { "$ref": "#/$defs/PushMetricExporter", - "description": "Configure exporter." + "description": "Configure exporter.\nProperty is required and must be non-null.\n" }, "producers": { "type": "array", @@ -1796,11 +1800,11 @@ "items": { "$ref": "#/$defs/MetricProducer" }, - "description": "Configure metric producers." + "description": "Configure metric producers.\nIf omitted, no metric producers are added.\n" }, "cardinality_limits": { "$ref": "#/$defs/CardinalityLimits", - "description": "Configure cardinality limits." + "description": "Configure cardinality limits.\nIf omitted, default values as described in CardinalityLimits are used.\n" } }, "required": [ @@ -1817,14 +1821,14 @@ "items": { "$ref": "#/$defs/TextMapPropagator" }, - "description": "Configure the propagators in the composite text map propagator. Entries from .composite_list are appended to the list here with duplicates filtered out.\nBuilt-in propagator keys include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party keys include: xray. \nIf the resolved list of propagators (from .composite and .composite_list) is empty, a noop propagator is used.\n" + "description": "Configure the propagators in the composite text map propagator. Entries from .composite_list are appended to the list here with duplicates filtered out.\nBuilt-in propagator keys include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party keys include: xray. \nIf omitted, and .composite_list is omitted or null, a noop propagator is used.\n" }, "composite_list": { "type": [ "string", "null" ], - "description": "Configure the propagators in the composite text map propagator. Entries are appended to .composite with duplicates filtered out.\nThe value is a comma separated list of propagator identifiers matching the format of OTEL_PROPAGATORS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration for details.\nBuilt-in propagator identifiers include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party identifiers include: xray. \nIf the resolved list of propagators (from .composite and .composite_list) is empty, a noop propagator is used.\n" + "description": "Configure the propagators in the composite text map propagator. Entries are appended to .composite with duplicates filtered out.\nThe value is a comma separated list of propagator identifiers matching the format of OTEL_PROPAGATORS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration for details.\nBuilt-in propagator identifiers include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party identifiers include: xray. \nIf omitted or null, and .composite is omitted or null, a noop propagator is used.\n" } } }, @@ -1841,7 +1845,7 @@ "properties": { "prometheus/development": { "$ref": "#/$defs/ExperimentalPrometheusMetricExporter", - "description": "Configure exporter to be prometheus.\n" + "description": "Configure exporter to be prometheus.\nIf omitted, ignore.\n" } } }, @@ -1851,7 +1855,7 @@ "properties": { "exporter": { "$ref": "#/$defs/PullMetricExporter", - "description": "Configure exporter." + "description": "Configure exporter.\nProperty is required and must be non-null.\n" }, "producers": { "type": "array", @@ -1859,11 +1863,11 @@ "items": { "$ref": "#/$defs/MetricProducer" }, - "description": "Configure metric producers." + "description": "Configure metric producers.\nIf omitted, no metric producers are added.\n" }, "cardinality_limits": { "$ref": "#/$defs/CardinalityLimits", - "description": "Configure cardinality limits." + "description": "Configure cardinality limits.\nIf omitted, default values as described in CardinalityLimits are used.\n" } }, "required": [ @@ -1883,19 +1887,19 @@ "properties": { "otlp_http": { "$ref": "#/$defs/OtlpHttpMetricExporter", - "description": "Configure exporter to be OTLP with HTTP transport.\n" + "description": "Configure exporter to be OTLP with HTTP transport.\nIf omitted, ignore.\n" }, "otlp_grpc": { "$ref": "#/$defs/OtlpGrpcMetricExporter", - "description": "Configure exporter to be OTLP with gRPC transport.\n" + "description": "Configure exporter to be OTLP with gRPC transport.\nIf omitted, ignore.\n" }, "otlp_file/development": { "$ref": "#/$defs/ExperimentalOtlpFileMetricExporter", - "description": "Configure exporter to be OTLP with file transport.\n" + "description": "Configure exporter to be OTLP with file transport.\nIf omitted, ignore.\n" }, "console": { "$ref": "#/$defs/ConsoleMetricExporter", - "description": "Configure exporter to be console.\n" + "description": "Configure exporter to be console.\nIf omitted, ignore.\n" } } }, @@ -1909,11 +1913,11 @@ "items": { "$ref": "#/$defs/AttributeNameValue" }, - "description": "Configure resource attributes. Entries have higher priority than entries from .resource.attributes_list.\n" + "description": "Configure resource attributes. Entries have higher priority than entries from .resource.attributes_list.\nIf omitted, no resource attributes are added.\n" }, "detection/development": { "$ref": "#/$defs/ExperimentalResourceDetection", - "description": "Configure resource detection.\nIf omitted or null, resource detection is disabled.\n" + "description": "Configure resource detection.\nIf omitted, resource detection is disabled.\n" }, "schema_url": { "type": [ @@ -1944,31 +1948,31 @@ "properties": { "always_off": { "$ref": "#/$defs/AlwaysOffSampler", - "description": "Configure sampler to be always_off." + "description": "Configure sampler to be always_off.\nIf omitted, ignore.\n" }, "always_on": { "$ref": "#/$defs/AlwaysOnSampler", - "description": "Configure sampler to be always_on." + "description": "Configure sampler to be always_on.\nIf omitted, ignore.\n" }, "composite/development": { "$ref": "#/$defs/ExperimentalComposableSampler", - "description": "Configure sampler to be composite." + "description": "Configure sampler to be composite.\nIf omitted, v.\n" }, "jaeger_remote/development": { "$ref": "#/$defs/ExperimentalJaegerRemoteSampler", - "description": "TODO" + "description": "Configure sampler to be jaeger_remote.\nIf omitted, ignore.\n" }, "parent_based": { "$ref": "#/$defs/ParentBasedSampler", - "description": "Configure sampler to be parent_based." + "description": "Configure sampler to be parent_based.\nIf omitted, ignore.\n" }, "probability/development": { "$ref": "#/$defs/ExperimentalProbabilitySampler", - "description": "Configure sampler to be probability." + "description": "Configure sampler to be probability.\nIf omitted, ignore.\n" }, "trace_id_ratio_based": { "$ref": "#/$defs/TraceIdRatioBasedSampler", - "description": "Configure sampler to be trace_id_ratio_based." + "description": "Configure sampler to be trace_id_ratio_based.\nIf omitted, ignore.\n" } } }, @@ -1978,7 +1982,7 @@ "properties": { "exporter": { "$ref": "#/$defs/LogRecordExporter", - "description": "Configure exporter." + "description": "Configure exporter.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -1991,7 +1995,7 @@ "properties": { "exporter": { "$ref": "#/$defs/SpanExporter", - "description": "Configure exporter." + "description": "Configure exporter.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -2011,23 +2015,23 @@ "properties": { "otlp_http": { "$ref": "#/$defs/OtlpHttpExporter", - "description": "Configure exporter to be OTLP with HTTP transport." + "description": "Configure exporter to be OTLP with HTTP transport.\nIf omitted, ignore.\n" }, "otlp_grpc": { "$ref": "#/$defs/OtlpGrpcExporter", - "description": "Configure exporter to be OTLP with gRPC transport." + "description": "Configure exporter to be OTLP with gRPC transport.\nIf omitted, ignore.\n" }, "otlp_file/development": { "$ref": "#/$defs/ExperimentalOtlpFileExporter", - "description": "Configure exporter to be OTLP with file transport.\n" + "description": "Configure exporter to be OTLP with file transport.\nIf omitted, ignore.\n" }, "console": { "$ref": "#/$defs/ConsoleExporter", - "description": "Configure exporter to be console." + "description": "Configure exporter to be console.\nIf omitted, ignore.\n" }, "zipkin": { "$ref": "#/$defs/ZipkinSpanExporter", - "description": "Configure exporter to be zipkin." + "description": "Configure exporter to be zipkin.\nIf omitted, ignore.\n" } } }, @@ -2098,11 +2102,11 @@ "properties": { "batch": { "$ref": "#/$defs/BatchSpanProcessor", - "description": "Configure a batch span processor." + "description": "Configure a batch span processor.\nIf omitted, ignore.\n" }, "simple": { "$ref": "#/$defs/SimpleSpanProcessor", - "description": "Configure a simple span processor." + "description": "Configure a simple span processor.\nIf omitted, ignore.\n" } } }, @@ -2126,27 +2130,27 @@ "properties": { "tracecontext": { "$ref": "#/$defs/TraceContextPropagator", - "description": "Include the w3c trace context propagator." + "description": "Include the w3c trace context propagator.\nIf omitted, ignore.\n" }, "baggage": { "$ref": "#/$defs/BaggagePropagator", - "description": "Include the w3c baggage propagator." + "description": "Include the w3c baggage propagator.\nIf omitted, ignore.\n" }, "b3": { "$ref": "#/$defs/B3Propagator", - "description": "Include the zipkin b3 propagator." + "description": "Include the zipkin b3 propagator.\nIf omitted, ignore.\n" }, "b3multi": { "$ref": "#/$defs/B3MultiPropagator", - "description": "Include the zipkin b3 multi propagator." + "description": "Include the zipkin b3 multi propagator.\nIf omitted, ignore.\n" }, "jaeger": { "$ref": "#/$defs/JaegerPropagator", - "description": "Include the jaeger propagator." + "description": "Include the jaeger propagator.\nIf omitted, ignore.\n" }, "ottrace": { "$ref": "#/$defs/OpenTracingPropagator", - "description": "Include the opentracing propagator." + "description": "Include the opentracing propagator.\nIf omitted, ignore.\n" } } }, @@ -2185,11 +2189,11 @@ "items": { "$ref": "#/$defs/SpanProcessor" }, - "description": "Configure span processors." + "description": "Configure span processors.\nProperty is required and must be non-null.\n" }, "limits": { "$ref": "#/$defs/SpanLimits", - "description": "Configure span limits. See also attribute_limits." + "description": "Configure span limits. See also attribute_limits.\nIf omitted, default values as described in SpanLimits are used.\n" }, "sampler": { "$ref": "#/$defs/Sampler", @@ -2197,7 +2201,7 @@ }, "tracer_configurator/development": { "$ref": "#/$defs/ExperimentalTracerConfigurator", - "description": "Configure tracers.\n" + "description": "Configure tracers.\nIf omitted, all tracers use default values as described in ExperimentalTracerConfig.\n" } }, "required": [ @@ -2210,11 +2214,11 @@ "properties": { "selector": { "$ref": "#/$defs/ViewSelector", - "description": "Configure view selector. \nSelection criteria is additive as described in https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#instrument-selection-criteria.\n" + "description": "Configure view selector. \nSelection criteria is additive as described in https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#instrument-selection-criteria.\nProperty is required and must be non-null.\n" }, "stream": { "$ref": "#/$defs/ViewStream", - "description": "Configure view stream." + "description": "Configure view stream.\nProperty is required and must be non-null.\n" } }, "required": [ @@ -2235,7 +2239,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 or null, all instrument types match.\n" + "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" }, "unit": { "type": [ @@ -2299,7 +2303,7 @@ }, "attribute_keys": { "$ref": "#/$defs/IncludeExclude", - "description": "Configure attribute keys retained in the resulting stream(s).\n" + "description": "Configure attribute keys retained in the resulting stream(s).\nIf omitted, all attribute keys are retained.\n" } } }, diff --git a/schema-docs.md b/schema-docs.md index f950e60a..026c6e1c 100644 --- a/schema-docs.md +++ b/schema-docs.md @@ -14,14 +14,14 @@ This document is an auto-generated view of the declarative configuration JSON sc ## Aggregation -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `base2_exponential_bucket_histogram` | [`Base2ExponentialBucketHistogramAggregation`](#base2exponentialbuckethistogramaggregation) | `false` | No constraints. | TODO | -| `default` | [`DefaultAggregation`](#defaultaggregation) | `false` | No constraints. | TODO | -| `drop` | [`DropAggregation`](#dropaggregation) | `false` | No constraints. | TODO | -| `explicit_bucket_histogram` | [`ExplicitBucketHistogramAggregation`](#explicitbuckethistogramaggregation) | `false` | No constraints. | Configure aggregation to be explicit_bucket_histogram. | -| `last_value` | [`LastValueAggregation`](#lastvalueaggregation) | `false` | No constraints. | TODO | -| `sum` | [`SumAggregation`](#sumaggregation) | `false` | No constraints. | TODO | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `base2_exponential_bucket_histogram` | [`Base2ExponentialBucketHistogramAggregation`](#base2exponentialbuckethistogramaggregation) | `false` | If omitted, ignore. If present and null, default values as described in Base2ExponentialBucketHistogramAggregation are used. | No constraints. | Configure aggregation to be base2_exponential_bucket_histogram.
See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#base2-exponential-bucket-histogram-aggregation for details.
| +| `default` | [`DefaultAggregation`](#defaultaggregation) | `false` | If omitted, ignore. | No constraints. | Configure aggregation to be the default aggregation for the instrument type.
See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#default-aggregation for details.
| +| `drop` | [`DropAggregation`](#dropaggregation) | `false` | If omitted, ignore. | No constraints. | Configure the aggregation to be drop.
See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#drop-aggregation for details.
| +| `explicit_bucket_histogram` | [`ExplicitBucketHistogramAggregation`](#explicitbuckethistogramaggregation) | `false` | If omitted, ignore. If present and null, default values as described in ExplicitBucketHistogramAggregation are used. | No constraints. | Configure aggregation to be explicit_bucket_histogram.
See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#explicit-bucket-histogram-aggregation for details.
| +| `last_value` | [`LastValueAggregation`](#lastvalueaggregation) | `false` | If omitted, ignore. | No constraints. | Configure the aggregation to be last_value.
See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#last-value-aggregation for details.
| +| `sum` | [`SumAggregation`](#sumaggregation) | `false` | If omitted, ignore. | No constraints. | Configure the aggregation to be sum.
See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#sum-aggregation for details.
|
Language support status @@ -130,10 +130,10 @@ Usages: ## AttributeLimits -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max attribute count.
Value must be non-negative.
If omitted or null, 128 is used.
| -| `attribute_value_length_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max attribute value size.
Value must be non-negative.
If omitted or null, there is no limit.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 128 is used. | * `minimum`: `0`
| Configure max attribute count.
Value must be non-negative.
| +| `attribute_value_length_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, there is no limit. | * `minimum`: `0`
| Configure max attribute value size.
Value must be non-negative.
|
Language support status @@ -180,11 +180,11 @@ Usages: ## AttributeNameValue -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `name` | `string` | `true` | No constraints. | The attribute name.
| -| `type` | [`AttributeType`](#attributetype) | `false` | No constraints. | The attribute type.
Values include: string, bool, int, double, string_array, bool_array, int_array, double_array.
If omitted or null, string is used.
| -| `value` | `oneOf` | `true` | No constraints. | The attribute value.
The type of value must match .type.
| +| 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.
| +| `value` | `oneOf` | `true` | Property is required and must be non-null. | No constraints. | The attribute value.
The type of value must match .type.
|
Language support status @@ -399,11 +399,11 @@ Usages: ## Base2ExponentialBucketHistogramAggregation -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `max_scale` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `-10`
* `maximum`: `20`
| TODO | -| `max_size` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `2`
| TODO | -| `record_min_max` | one of:
* `boolean`
* `null`
| `false` | No constraints. | TODO | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `max_scale` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 20 is used. | * `minimum`: `-10`
* `maximum`: `20`
| TODO | +| `max_size` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 160 is used. | * `minimum`: `2`
| TODO | +| `record_min_max` | one of:
* `boolean`
* `null`
| `false` | If omitted or null, true is used. | No constraints. | TODO |
Language support status @@ -461,13 +461,13 @@ Usages: ## BatchLogRecordProcessor -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `export_timeout` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure maximum allowed time (in milliseconds) to export data.
Value must be non-negative. A value of 0 indicates no limit (infinity).
If omitted or null, 30000 is used.
| -| `exporter` | [`LogRecordExporter`](#logrecordexporter) | `true` | No constraints. | Configure exporter. | -| `max_export_batch_size` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure maximum batch size. Value must be positive.
If omitted or null, 512 is used.
| -| `max_queue_size` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure maximum queue size. Value must be positive.
If omitted or null, 2048 is used.
| -| `schedule_delay` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure delay interval (in milliseconds) between two consecutive exports.
Value must be non-negative.
If omitted or null, 1000 is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `export_timeout` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 30000 is used. | * `minimum`: `0`
| Configure maximum allowed time (in milliseconds) to export data.
Value must be non-negative. A value of 0 indicates no limit (infinity).
| +| `exporter` | [`LogRecordExporter`](#logrecordexporter) | `true` | Property is required and must be non-null. | No constraints. | Configure exporter. | +| `max_export_batch_size` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 512 is used. | * `exclusiveMinimum`: `0`
| Configure maximum batch size. Value must be positive.
| +| `max_queue_size` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 2048 is used. | * `exclusiveMinimum`: `0`
| Configure maximum queue size. Value must be positive.
| +| `schedule_delay` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 1000 is used. | * `minimum`: `0`
| Configure delay interval (in milliseconds) between two consecutive exports.
Value must be non-negative.
|
Language support status @@ -538,13 +538,13 @@ Usages: ## BatchSpanProcessor -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `export_timeout` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure maximum allowed time (in milliseconds) to export data.
Value must be non-negative. A value of 0 indicates no limit (infinity).
If omitted or null, 30000 is used.
| -| `exporter` | [`SpanExporter`](#spanexporter) | `true` | No constraints. | Configure exporter. | -| `max_export_batch_size` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure maximum batch size. Value must be positive.
If omitted or null, 512 is used.
| -| `max_queue_size` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure maximum queue size. Value must be positive.
If omitted or null, 2048 is used.
| -| `schedule_delay` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure delay interval (in milliseconds) between two consecutive exports.
Value must be non-negative.
If omitted or null, 5000 is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `export_timeout` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 30000 is used. | * `minimum`: `0`
| Configure maximum allowed time (in milliseconds) to export data.
Value must be non-negative. A value of 0 indicates no limit (infinity).
| +| `exporter` | [`SpanExporter`](#spanexporter) | `true` | Property is required and must be non-null. | No constraints. | Configure exporter. | +| `max_export_batch_size` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 512 is used. | * `exclusiveMinimum`: `0`
| Configure maximum batch size. Value must be positive.
| +| `max_queue_size` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 2048 is used. | * `exclusiveMinimum`: `0`
| Configure maximum queue size. Value must be positive.
| +| `schedule_delay` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 5000 is used. | * `minimum`: `0`
| Configure delay interval (in milliseconds) between two consecutive exports.
Value must be non-negative.
|
Language support status @@ -615,16 +615,16 @@ Usages: ## CardinalityLimits -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `counter` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for counter instruments.
If omitted or null, the value from .default is used.
| -| `default` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for all instrument types.
Instrument-specific cardinality limits take priority.
If omitted or null, 2000 is used.
| -| `gauge` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for gauge instruments.
If omitted or null, the value from .default is used.
| -| `histogram` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for histogram instruments.
If omitted or null, the value from .default is used.
| -| `observable_counter` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for observable_counter instruments.
If omitted or null, the value from .default is used.
| -| `observable_gauge` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for observable_gauge instruments.
If omitted or null, the value from .default is used.
| -| `observable_up_down_counter` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for observable_up_down_counter instruments.
If omitted or null, the value from .default is used.
| -| `up_down_counter` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for up_down_counter instruments.
If omitted or null, the value from .default is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `counter` | one of:
* `integer`
* `null`
| `false` | If omitted or null, the value from .default is used. | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for counter instruments.
| +| `default` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 2000 is used. | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for all instrument types.
Instrument-specific cardinality limits take priority.
| +| `gauge` | one of:
* `integer`
* `null`
| `false` | If omitted or null, the value from .default is used. | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for gauge instruments.
| +| `histogram` | one of:
* `integer`
* `null`
| `false` | If omitted or null, the value from .default is used. | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for histogram instruments.
| +| `observable_counter` | one of:
* `integer`
* `null`
| `false` | If omitted or null, the value from .default is used. | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for observable_counter instruments.
| +| `observable_gauge` | one of:
* `integer`
* `null`
| `false` | If omitted or null, the value from .default is used. | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for observable_gauge instruments.
| +| `observable_up_down_counter` | one of:
* `integer`
* `null`
| `false` | If omitted or null, the value from .default is used. | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for observable_up_down_counter instruments.
| +| `up_down_counter` | one of:
* `integer`
* `null`
| `false` | If omitted or null, the value from .default is used. | * `exclusiveMinimum`: `0`
| Configure default cardinality limit for up_down_counter instruments.
|
Language support status @@ -746,10 +746,10 @@ Usages: ## ConsoleMetricExporter -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | 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.
If omitted or null, explicit_bucket_histogram is used.
| -| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | 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.
If omitted or null, cumulative is used.
| +| 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.
|
Language support status @@ -884,10 +884,10 @@ Usages: ## ExplicitBucketHistogramAggregation -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `boundaries` | `array` of `number` | `false` | * `minItems`: `0`
| Configure bucket boundaries.
If omitted, [0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, 10000] is used.
| -| `record_min_max` | one of:
* `boolean`
* `null`
| `false` | No constraints. | Configure record min and max.
If omitted or null, true is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `boundaries` | `array` of `number` | `false` | If omitted, [0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, 10000] is used. | * `minItems`: `0`
| Configure bucket boundaries.
| +| `record_min_max` | one of:
* `boolean`
* `null`
| `false` | If omitted or null, true is used. | No constraints. | Configure record min and max.
|
Language support status @@ -1025,12 +1025,12 @@ Usages: ## GrpcTls -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `ca_file` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure certificate used to verify a server's TLS credentials.
Absolute path to certificate file in PEM format.
If omitted or null, system default certificate verification is used for secure connections.
| -| `cert_file` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure mTLS client certificate.
Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
If omitted or null, mTLS is not used.
| -| `insecure` | one of:
* `boolean`
* `null`
| `false` | No constraints. | Configure client transport security for the exporter's connection.
Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
If omitted or null, false is used.
| -| `key_file` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure mTLS private client key.
Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
If omitted or null, mTLS is not used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `ca_file` | one of:
* `string`
* `null`
| `false` | If omitted or null, system default certificate verification is used for secure connections. | No constraints. | Configure certificate used to verify a server's TLS credentials.
Absolute path to certificate file in PEM format.
| +| `cert_file` | one of:
* `string`
* `null`
| `false` | If omitted or null, mTLS is not used. | No constraints. | Configure mTLS client certificate.
Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
| +| `insecure` | one of:
* `boolean`
* `null`
| `false` | If omitted or null, false is used. | No constraints. | Configure client transport security for the exporter's connection.
Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure.
| +| `key_file` | one of:
* `string`
* `null`
| `false` | If omitted or null, mTLS is not used. | No constraints. | Configure mTLS private client key.
Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
|
Language support status @@ -1093,11 +1093,11 @@ Usages: ## HttpTls -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `ca_file` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure certificate used to verify a server's TLS credentials.
Absolute path to certificate file in PEM format.
If omitted or null, system default certificate verification is used for secure connections.
| -| `cert_file` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure mTLS client certificate.
Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
If omitted or null, mTLS is not used.
| -| `key_file` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure mTLS private client key.
Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
If omitted or null, mTLS is not used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `ca_file` | one of:
* `string`
* `null`
| `false` | If omitted or null, system default certificate verification is used for secure connections. | No constraints. | Configure certificate used to verify a server's TLS credentials.
Absolute path to certificate file in PEM format.
| +| `cert_file` | one of:
* `string`
* `null`
| `false` | If omitted or null, mTLS is not used. | No constraints. | Configure mTLS client certificate.
Absolute path to client certificate file in PEM format. If set, .client_key must also be set.
| +| `key_file` | one of:
* `string`
* `null`
| `false` | If omitted or null, mTLS is not used. | No constraints. | Configure mTLS private client key.
Absolute path to client key file in PEM format. If set, .client_certificate must also be set.
|
Language support status @@ -1153,10 +1153,10 @@ Usages: ## IncludeExclude -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `excluded` | `array` of `string` | `false` | * `minItems`: `1`
| Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).
Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
If omitted, .included attributes are included.
| -| `included` | `array` of `string` | `false` | * `minItems`: `1`
| Configure list of value patterns to include.
Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
If omitted, all values are included.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `excluded` | `array` of `string` | `false` | If omitted, .included attributes are included. | * `minItems`: `1`
| Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).
Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| `included` | `array` of `string` | `false` | If omitted, all values are included. | * `minItems`: `1`
| Configure list of value patterns to include.
Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
|
Language support status @@ -1310,11 +1310,11 @@ Usages: ## LoggerProvider -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `limits` | [`LogRecordLimits`](#logrecordlimits) | `false` | No constraints. | Configure log record limits. See also attribute_limits. | -| `processors` | `array` of [`LogRecordProcessor`](#logrecordprocessor) | `true` | * `minItems`: `1`
| Configure log record processors. | -| `logger_configurator/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalLoggerConfigurator`](#experimentalloggerconfigurator) | `false` | No constraints. | Configure loggers.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `limits` | [`LogRecordLimits`](#logrecordlimits) | `false` | If omitted, default values as described in LogRecordLimits are used. | No constraints. | Configure log record limits. See also attribute_limits. | +| `processors` | `array` of [`LogRecordProcessor`](#logrecordprocessor) | `true` | Property is required and must be non-null. | * `minItems`: `1`
| Configure log record processors. | +| `logger_configurator/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalLoggerConfigurator`](#experimentalloggerconfigurator) | `false` | If omitted, all loggers use default values as described in ExperimentalLoggerConfig. | No constraints. | Configure loggers.
|
Language support status @@ -1367,12 +1367,12 @@ Usages: `LogRecordExporter` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `console` | [`ConsoleExporter`](#consoleexporter) | `false` | No constraints. | Configure exporter to be console. | -| `otlp_grpc` | [`OtlpGrpcExporter`](#otlpgrpcexporter) | `false` | No constraints. | Configure exporter to be OTLP with gRPC transport. | -| `otlp_http` | [`OtlpHttpExporter`](#otlphttpexporter) | `false` | No constraints. | Configure exporter to be OTLP with HTTP transport. | -| `otlp_file/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalOtlpFileExporter`](#experimentalotlpfileexporter) | `false` | No constraints. | Configure exporter to be OTLP with file transport.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `console` | [`ConsoleExporter`](#consoleexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be console. | +| `otlp_grpc` | [`OtlpGrpcExporter`](#otlpgrpcexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with gRPC transport. | +| `otlp_http` | [`OtlpHttpExporter`](#otlphttpexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with HTTP transport. | +| `otlp_file/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalOtlpFileExporter`](#experimentalotlpfileexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with file transport.
|
Language support status @@ -1429,10 +1429,10 @@ Usages: ## LogRecordLimits -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max attribute count. Overrides .attribute_limits.attribute_count_limit.
Value must be non-negative.
If omitted or null, 128 is used.
| -| `attribute_value_length_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max attribute value size. Overrides .attribute_limits.attribute_value_length_limit.
Value must be non-negative.
If omitted or null, there is no limit.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 128 is used. | * `minimum`: `0`
| Configure max attribute count. Overrides .attribute_limits.attribute_count_limit.
Value must be non-negative.
| +| `attribute_value_length_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, there is no limit. | * `minimum`: `0`
| Configure max attribute value size. Overrides .attribute_limits.attribute_value_length_limit.
Value must be non-negative.
|
Language support status @@ -1481,10 +1481,10 @@ Usages: `LogRecordProcessor` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `batch` | [`BatchLogRecordProcessor`](#batchlogrecordprocessor) | `false` | No constraints. | Configure a batch log record processor. | -| `simple` | [`SimpleLogRecordProcessor`](#simplelogrecordprocessor) | `false` | No constraints. | Configure a simple log record processor. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `batch` | [`BatchLogRecordProcessor`](#batchlogrecordprocessor) | `false` | If omitted, ignore. | No constraints. | Configure a batch log record processor. | +| `simple` | [`SimpleLogRecordProcessor`](#simplelogrecordprocessor) | `false` | If omitted, ignore. | No constraints. | Configure a simple log record processor. |
Language support status @@ -1532,12 +1532,12 @@ Usages: ## MeterProvider -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `exemplar_filter` | [`ExemplarFilter`](#exemplarfilter) | `false` | 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.
If omitted or null, trace_based is used.
| -| `readers` | `array` of [`MetricReader`](#metricreader) | `true` | * `minItems`: `1`
| Configure metric readers. | -| `views` | `array` of [`View`](#view) | `false` | * `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` | No constraints. | Configure meters.
| +| 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.
| +| `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.
|
Language support status @@ -1598,9 +1598,9 @@ Usages: `MetricProducer` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `opencensus` | [`OpenCensusMetricProducer`](#opencensusmetricproducer) | `false` | No constraints. | Configure metric producer to be opencensus. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `opencensus` | [`OpenCensusMetricProducer`](#opencensusmetricproducer) | `false` | If omitted, ignore. | No constraints. | Configure metric producer to be opencensus. |
Language support status @@ -1645,10 +1645,10 @@ Usages: ## MetricReader -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `periodic` | [`PeriodicMetricReader`](#periodicmetricreader) | `false` | No constraints. | Configure a periodic metric reader. | -| `pull` | [`PullMetricReader`](#pullmetricreader) | `false` | No constraints. | Configure a pull based metric reader. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `periodic` | [`PeriodicMetricReader`](#periodicmetricreader) | `false` | If omitted, ignore. | No constraints. | Configure a periodic metric reader. | +| `pull` | [`PullMetricReader`](#pullmetricreader) | `false` | If omitted, ignore. | No constraints. | Configure a pull based metric reader. |
Language support status @@ -1691,10 +1691,10 @@ Usages: ## NameStringValuePair -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `name` | `string` | `true` | No constraints. | The name of the pair. | -| `value` | one of:
* `string`
* `null`
| `true` | No constraints. | The value of the pair. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | The name of the pair. | +| `value` | one of:
* `string`
* `null`
| `true` | Property must be present, but if null TODO. | No constraints. | The value of the pair. |
Language support status @@ -1769,18 +1769,18 @@ Usages: ## OpenTelemetryConfiguration -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `attribute_limits` | [`AttributeLimits`](#attributelimits) | `false` | No constraints. | Configure general attribute limits. See also tracer_provider.limits, logger_provider.limits.
| -| `disabled` | one of:
* `boolean`
* `null`
| `false` | No constraints. | Configure if the SDK is disabled or not.
If omitted or null, false is used.
| -| `file_format` | `string` | `true` | No constraints. | The file format version.
The yaml format is documented at
https://github.com/open-telemetry/opentelemetry-configuration/tree/main/schema
| -| `log_level` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure the log level of the internal logger used by the SDK.
If omitted, info is used.
| -| `logger_provider` | [`LoggerProvider`](#loggerprovider) | `false` | No constraints. | Configure logger provider.
If omitted, a noop logger provider is used.
| -| `meter_provider` | [`MeterProvider`](#meterprovider) | `false` | No constraints. | Configure meter provider.
If omitted, a noop meter provider is used.
| -| `propagator` | [`Propagator`](#propagator) | `false` | No constraints. | Configure text map context propagators.
If omitted, a noop propagator is used.
| -| `resource` | [`Resource`](#resource) | `false` | No constraints. | Configure resource for all signals.
If omitted, the default resource is used.
| -| `tracer_provider` | [`TracerProvider`](#tracerprovider) | `false` | No constraints. | Configure tracer provider.
If omitted, a noop tracer provider is used.
| -| `instrumentation/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalInstrumentation`](#experimentalinstrumentation) | `false` | No constraints. | Configure instrumentation.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `attribute_limits` | [`AttributeLimits`](#attributelimits) | `false` | If omitted, default values as described in AttributeLimits are used. | No constraints. | Configure general attribute limits. See also tracer_provider.limits, logger_provider.limits.
| +| `disabled` | one of:
* `boolean`
* `null`
| `false` | If omitted or null, false is used. | No constraints. | Configure if the SDK is disabled or not.
| +| `file_format` | `string` | `true` | Property is required and must be non-null. | No constraints. | The file format version.
The yaml format is documented at
https://github.com/open-telemetry/opentelemetry-configuration/tree/main/schema
| +| `log_level` | one of:
* `string`
* `null`
| `false` | If omitted or null, info is used. | No constraints. | Configure the log level of the internal logger used by the SDK.
| +| `logger_provider` | [`LoggerProvider`](#loggerprovider) | `false` | If omitted, a noop logger provider is used. | No constraints. | Configure logger provider.
| +| `meter_provider` | [`MeterProvider`](#meterprovider) | `false` | If omitted, a noop meter provider is used. | No constraints. | Configure meter provider.
| +| `propagator` | [`Propagator`](#propagator) | `false` | If omitted, a noop propagator is used. | No constraints. | Configure text map context propagators.
| +| `resource` | [`Resource`](#resource) | `false` | If omitted, the default resource is used. | No constraints. | Configure resource for all signals.
| +| `tracer_provider` | [`TracerProvider`](#tracerprovider) | `false` | If omitted, a noop tracer provider is used. | No constraints. | Configure tracer provider.
| +| `instrumentation/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalInstrumentation`](#experimentalinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure instrumentation.
|
Language support status @@ -1887,14 +1887,14 @@ Usages: ## OtlpGrpcExporter -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `compression` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure compression.
Values include: gzip, none. Implementations may support other compression algorithms.
If omitted or null, none is used.
| -| `endpoint` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure endpoint.
If omitted or null, http://localhost:4317 is used.
| -| `headers` | `array` of [`NameStringValuePair`](#namestringvaluepair) | `false` | * `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` | 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.
If omitted or null, no headers are added.
| -| `timeout` | one of:
* `integer`
* `null`
| `false` | * `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).
If omitted or null, 10000 is used.
| -| `tls` | [`GrpcTls`](#grpctls) | `false` | No constraints. | Configure TLS settings for the exporter. | +| 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.
| +| `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.
| +| `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. |
Language support status @@ -1970,16 +1970,16 @@ Usages: ## OtlpGrpcMetricExporter -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `compression` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure compression.
Values include: gzip, none. Implementations may support other compression algorithms.
If omitted or null, none is used.
| -| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | 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.
If omitted or null, explicit_bucket_histogram is used.
| -| `endpoint` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure endpoint.
If omitted or null, http://localhost:4317 is used.
| -| `headers` | `array` of [`NameStringValuePair`](#namestringvaluepair) | `false` | * `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` | 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.
If omitted or null, no headers are added.
| -| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | 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.
If omitted or null, cumulative is used.
| -| `timeout` | one of:
* `integer`
* `null`
| `false` | * `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).
If omitted or null, 10000 is used.
| -| `tls` | [`GrpcTls`](#grpctls) | `false` | No constraints. | Configure TLS settings for the exporter. | +| 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.
| +| `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.
| +| `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. |
Language support status @@ -2103,15 +2103,15 @@ Usages: ## OtlpHttpExporter -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `compression` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure compression.
Values include: gzip, none. Implementations may support other compression algorithms.
If omitted or null, none is used.
| -| `encoding` | [`OtlpHttpEncoding`](#otlphttpencoding) | `false` | No constraints. | Configure the encoding used for messages.
Values include: protobuf, json. Implementations may not support json.
If omitted or null, protobuf is used.
| -| `endpoint` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure endpoint, including the signal specific path.
If omitted or null, the http://localhost:4318/v1/{signal} (where signal is 'traces', 'logs', or 'metrics') is used.
| -| `headers` | `array` of [`NameStringValuePair`](#namestringvaluepair) | `false` | * `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` | 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.
If omitted or null, no headers are added.
| -| `timeout` | one of:
* `integer`
* `null`
| `false` | * `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).
If omitted or null, 10000 is used.
| -| `tls` | [`HttpTls`](#httptls) | `false` | No constraints. | Configure TLS settings for the exporter. | +| 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.
| +| `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.
| +| `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. |
Language support status @@ -2191,17 +2191,17 @@ Usages: ## OtlpHttpMetricExporter -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `compression` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure compression.
Values include: gzip, none. Implementations may support other compression algorithms.
If omitted or null, none is used.
| -| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | 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.
If omitted or null, explicit_bucket_histogram is used.
| -| `encoding` | [`OtlpHttpEncoding`](#otlphttpencoding) | `false` | No constraints. | Configure the encoding used for messages.
Values include: protobuf, json. Implementations may not support json.
If omitted or null, protobuf is used.
| -| `endpoint` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure endpoint.
If omitted or null, http://localhost:4318/v1/metrics is used.
| -| `headers` | `array` of [`NameStringValuePair`](#namestringvaluepair) | `false` | * `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` | 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.
If omitted or null, no headers are added.
| -| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | 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.
If omitted or null, cumulative is used.
| -| `timeout` | one of:
* `integer`
* `null`
| `false` | * `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).
If omitted or null, 10000 is used.
| -| `tls` | [`HttpTls`](#httptls) | `false` | No constraints. | Configure TLS settings for the exporter. | +| 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.
| +| `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.
| +| `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. |
Language support status @@ -2288,13 +2288,13 @@ Usages: ## ParentBasedSampler -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `local_parent_not_sampled` | [`Sampler`](#sampler) | `false` | No constraints. | Configure local_parent_not_sampled sampler.
If omitted or null, always_off is used.
| -| `local_parent_sampled` | [`Sampler`](#sampler) | `false` | No constraints. | Configure local_parent_sampled sampler.
If omitted or null, always_on is used.
| -| `remote_parent_not_sampled` | [`Sampler`](#sampler) | `false` | No constraints. | Configure remote_parent_not_sampled sampler.
If omitted or null, always_off is used.
| -| `remote_parent_sampled` | [`Sampler`](#sampler) | `false` | No constraints. | Configure remote_parent_sampled sampler.
If omitted or null, always_on is used.
| -| `root` | [`Sampler`](#sampler) | `false` | No constraints. | Configure root sampler.
If omitted or null, always_on is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `local_parent_not_sampled` | [`Sampler`](#sampler) | `false` | If omitted, always_off is used. | No constraints. | Configure local_parent_not_sampled sampler.
| +| `local_parent_sampled` | [`Sampler`](#sampler) | `false` | If omitted, always_on is used. | No constraints. | Configure local_parent_sampled sampler.
| +| `remote_parent_not_sampled` | [`Sampler`](#sampler) | `false` | If omitted, always_off is used. | No constraints. | Configure remote_parent_not_sampled sampler.
| +| `remote_parent_sampled` | [`Sampler`](#sampler) | `false` | If omitted, always_on is used. | No constraints. | Configure remote_parent_sampled sampler.
| +| `root` | [`Sampler`](#sampler) | `false` | If omitted, always_on is used. | No constraints. | Configure root sampler.
|
Language support status @@ -2348,13 +2348,13 @@ Usages: ## PeriodicMetricReader -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `cardinality_limits` | [`CardinalityLimits`](#cardinalitylimits) | `false` | No constraints. | Configure cardinality limits. | -| `exporter` | [`PushMetricExporter`](#pushmetricexporter) | `true` | No constraints. | Configure exporter. | -| `interval` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure delay interval (in milliseconds) between start of two consecutive exports.
Value must be non-negative.
If omitted or null, 60000 is used.
| -| `producers` | `array` of [`MetricProducer`](#metricproducer) | `false` | * `minItems`: `1`
| Configure metric producers. | -| `timeout` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure maximum allowed time (in milliseconds) to export data.
Value must be non-negative. A value of 0 indicates no limit (infinity).
If omitted or null, 30000 is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `cardinality_limits` | [`CardinalityLimits`](#cardinalitylimits) | `false` | If omitted, default values as described in CardinalityLimits are used. | No constraints. | Configure cardinality limits. | +| `exporter` | [`PushMetricExporter`](#pushmetricexporter) | `true` | Property is required and must be non-null. | No constraints. | Configure exporter. | +| `interval` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 60000 is used. | * `minimum`: `0`
| Configure delay interval (in milliseconds) between start of two consecutive exports.
Value must be non-negative.
| +| `producers` | `array` of [`MetricProducer`](#metricproducer) | `false` | If omitted, no metric producers are added. | * `minItems`: `1`
| Configure metric producers. | +| `timeout` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 30000 is used. | * `minimum`: `0`
| Configure maximum allowed time (in milliseconds) to export data.
Value must be non-negative. A value of 0 indicates no limit (infinity).
|
Language support status @@ -2421,10 +2421,10 @@ Usages: ## Propagator -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `composite` | `array` of [`TextMapPropagator`](#textmappropagator) | `false` | * `minItems`: `1`
| Configure the propagators in the composite text map propagator. Entries from .composite_list are appended to the list here with duplicates filtered out.
Built-in propagator keys include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party keys include: xray.
If the resolved list of propagators (from .composite and .composite_list) is empty, a noop propagator is used.
| -| `composite_list` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure the propagators in the composite text map propagator. Entries are appended to .composite with duplicates filtered out.
The value is a comma separated list of propagator identifiers matching the format of OTEL_PROPAGATORS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration for details.
Built-in propagator identifiers include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party identifiers include: xray.
If the resolved list of propagators (from .composite and .composite_list) is empty, a noop propagator is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `composite` | `array` of [`TextMapPropagator`](#textmappropagator) | `false` | If omitted, and .composite_list is omitted or null, a noop propagator is used. | * `minItems`: `1`
| Configure the propagators in the composite text map propagator. Entries from .composite_list are appended to the list here with duplicates filtered out.
Built-in propagator keys include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party keys include: xray.
| +| `composite_list` | one of:
* `string`
* `null`
| `false` | If omitted or null, and .composite is omitted or null, a noop propagator is used. | No constraints. | Configure the propagators in the composite text map propagator. Entries are appended to .composite with duplicates filtered out.
The value is a comma separated list of propagator identifiers matching the format of OTEL_PROPAGATORS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration for details.
Built-in propagator identifiers include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party identifiers include: xray.
|
Language support status @@ -2472,9 +2472,9 @@ Usages: `PullMetricExporter` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `prometheus/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalPrometheusMetricExporter`](#experimentalprometheusmetricexporter) | `false` | No constraints. | Configure exporter to be prometheus.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `prometheus/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalPrometheusMetricExporter`](#experimentalprometheusmetricexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be prometheus.
|
Language support status @@ -2518,11 +2518,11 @@ Usages: ## PullMetricReader -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `cardinality_limits` | [`CardinalityLimits`](#cardinalitylimits) | `false` | No constraints. | Configure cardinality limits. | -| `exporter` | [`PullMetricExporter`](#pullmetricexporter) | `true` | No constraints. | Configure exporter. | -| `producers` | `array` of [`MetricProducer`](#metricproducer) | `false` | * `minItems`: `1`
| Configure metric producers. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `cardinality_limits` | [`CardinalityLimits`](#cardinalitylimits) | `false` | If omitted, default values as described in CardinalityLimits are used. | No constraints. | Configure cardinality limits. | +| `exporter` | [`PullMetricExporter`](#pullmetricexporter) | `true` | Property is required and must be non-null. | No constraints. | Configure exporter. | +| `producers` | `array` of [`MetricProducer`](#metricproducer) | `false` | If omitted, no metric producers are added. | * `minItems`: `1`
| Configure metric producers. |
Language support status @@ -2575,12 +2575,12 @@ Usages: `PushMetricExporter` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `console` | [`ConsoleMetricExporter`](#consolemetricexporter) | `false` | No constraints. | Configure exporter to be console.
| -| `otlp_grpc` | [`OtlpGrpcMetricExporter`](#otlpgrpcmetricexporter) | `false` | No constraints. | Configure exporter to be OTLP with gRPC transport.
| -| `otlp_http` | [`OtlpHttpMetricExporter`](#otlphttpmetricexporter) | `false` | No constraints. | Configure exporter to be OTLP with HTTP transport.
| -| `otlp_file/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalOtlpFileMetricExporter`](#experimentalotlpfilemetricexporter) | `false` | No constraints. | Configure exporter to be OTLP with file transport.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `console` | [`ConsoleMetricExporter`](#consolemetricexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be console.
| +| `otlp_grpc` | [`OtlpGrpcMetricExporter`](#otlpgrpcmetricexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with gRPC transport.
| +| `otlp_http` | [`OtlpHttpMetricExporter`](#otlphttpmetricexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with HTTP transport.
| +| `otlp_file/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalOtlpFileMetricExporter`](#experimentalotlpfilemetricexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with file transport.
|
Language support status @@ -2636,12 +2636,12 @@ Usages: ## Resource -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `attributes` | `array` of [`AttributeNameValue`](#attributenamevalue) | `false` | * `minItems`: `1`
| Configure resource attributes. Entries have higher priority than entries from .resource.attributes_list.
| -| `attributes_list` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure resource attributes. Entries have lower priority than entries from .resource.attributes.
The value is a list of comma separated key-value pairs matching the format of OTEL_RESOURCE_ATTRIBUTES. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration for details.
If omitted or null, no resource attributes are added.
| -| `schema_url` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure resource schema URL.
If omitted or null, no schema URL is used.
| -| `detection/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalResourceDetection`](#experimentalresourcedetection) | `false` | No constraints. | Configure resource detection.
If omitted or null, resource detection is disabled.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `attributes` | `array` of [`AttributeNameValue`](#attributenamevalue) | `false` | If omitted, no resource attributes are added. | * `minItems`: `1`
| Configure resource attributes. Entries have higher priority than entries from .resource.attributes_list.
| +| `attributes_list` | one of:
* `string`
* `null`
| `false` | If omitted or null, no resource attributes are added. | No constraints. | Configure resource attributes. Entries have lower priority than entries from .resource.attributes.
The value is a list of comma separated key-value pairs matching the format of OTEL_RESOURCE_ATTRIBUTES. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration for details.
| +| `schema_url` | one of:
* `string`
* `null`
| `false` | If omitted or null, no schema URL is used. | No constraints. | Configure resource schema URL.
| +| `detection/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalResourceDetection`](#experimentalresourcedetection) | `false` | If omitted, resource detection is disabled. | No constraints. | Configure resource detection.
|
Language support status @@ -2700,15 +2700,15 @@ Usages: `Sampler` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `always_off` | [`AlwaysOffSampler`](#alwaysoffsampler) | `false` | No constraints. | Configure sampler to be always_off. | -| `always_on` | [`AlwaysOnSampler`](#alwaysonsampler) | `false` | No constraints. | Configure sampler to be always_on. | -| `parent_based` | [`ParentBasedSampler`](#parentbasedsampler) | `false` | No constraints. | Configure sampler to be parent_based. | -| `trace_id_ratio_based` | [`TraceIdRatioBasedSampler`](#traceidratiobasedsampler) | `false` | No constraints. | Configure sampler to be trace_id_ratio_based. | -| `composite/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configure sampler to be composite. | -| `jaeger_remote/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalJaegerRemoteSampler`](#experimentaljaegerremotesampler) | `false` | No constraints. | TODO | -| `probability/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalProbabilitySampler`](#experimentalprobabilitysampler) | `false` | No constraints. | Configure sampler to be probability. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `always_off` | [`AlwaysOffSampler`](#alwaysoffsampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be always_off. | +| `always_on` | [`AlwaysOnSampler`](#alwaysonsampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be always_on. | +| `parent_based` | [`ParentBasedSampler`](#parentbasedsampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be parent_based. | +| `trace_id_ratio_based` | [`TraceIdRatioBasedSampler`](#traceidratiobasedsampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be trace_id_ratio_based. | +| `composite/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | If omitted, v. | No constraints. | Configure sampler to be composite. | +| `jaeger_remote/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalJaegerRemoteSampler`](#experimentaljaegerremotesampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be jaeger_remote. | +| `probability/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalProbabilitySampler`](#experimentalprobabilitysampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be probability. |
Language support status @@ -2782,9 +2782,9 @@ Usages: ## SimpleLogRecordProcessor -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `exporter` | [`LogRecordExporter`](#logrecordexporter) | `true` | No constraints. | Configure exporter. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `exporter` | [`LogRecordExporter`](#logrecordexporter) | `true` | Property is required and must be non-null. | No constraints. | Configure exporter. |
Language support status @@ -2823,9 +2823,9 @@ Usages: ## SimpleSpanProcessor -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `exporter` | [`SpanExporter`](#spanexporter) | `true` | No constraints. | Configure exporter. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `exporter` | [`SpanExporter`](#spanexporter) | `true` | Property is required and must be non-null. | No constraints. | Configure exporter. |
Language support status @@ -2866,13 +2866,13 @@ Usages: `SpanExporter` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `console` | [`ConsoleExporter`](#consoleexporter) | `false` | No constraints. | Configure exporter to be console. | -| `otlp_grpc` | [`OtlpGrpcExporter`](#otlpgrpcexporter) | `false` | No constraints. | Configure exporter to be OTLP with gRPC transport. | -| `otlp_http` | [`OtlpHttpExporter`](#otlphttpexporter) | `false` | No constraints. | Configure exporter to be OTLP with HTTP transport. | -| `zipkin` | [`ZipkinSpanExporter`](#zipkinspanexporter) | `false` | No constraints. | Configure exporter to be zipkin. | -| `otlp_file/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalOtlpFileExporter`](#experimentalotlpfileexporter) | `false` | No constraints. | Configure exporter to be OTLP with file transport.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `console` | [`ConsoleExporter`](#consoleexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be console. | +| `otlp_grpc` | [`OtlpGrpcExporter`](#otlpgrpcexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with gRPC transport. | +| `otlp_http` | [`OtlpHttpExporter`](#otlphttpexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with HTTP transport. | +| `zipkin` | [`ZipkinSpanExporter`](#zipkinspanexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be zipkin. | +| `otlp_file/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalOtlpFileExporter`](#experimentalotlpfileexporter) | `false` | If omitted, ignore. | No constraints. | Configure exporter to be OTLP with file transport.
|
Language support status @@ -2933,14 +2933,14 @@ Usages: ## SpanLimits -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max attribute count. Overrides .attribute_limits.attribute_count_limit.
Value must be non-negative.
If omitted or null, 128 is used.
| -| `attribute_value_length_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max attribute value size. Overrides .attribute_limits.attribute_value_length_limit.
Value must be non-negative.
If omitted or null, there is no limit.
| -| `event_attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max attributes per span event.
Value must be non-negative.
If omitted or null, 128 is used.
| -| `event_count_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max span event count.
Value must be non-negative.
If omitted or null, 128 is used.
| -| `link_attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max attributes per span link.
Value must be non-negative.
If omitted or null, 128 is used.
| -| `link_count_limit` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max span link count.
Value must be non-negative.
If omitted or null, 128 is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 128 is used. | * `minimum`: `0`
| Configure max attribute count. Overrides .attribute_limits.attribute_count_limit.
Value must be non-negative.
| +| `attribute_value_length_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, there is no limit. | * `minimum`: `0`
| Configure max attribute value size. Overrides .attribute_limits.attribute_value_length_limit.
Value must be non-negative.
| +| `event_attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 128 is used. | * `minimum`: `0`
| Configure max attributes per span event.
Value must be non-negative.
| +| `event_count_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 128 is used. | * `minimum`: `0`
| Configure max span event count.
Value must be non-negative.
| +| `link_attribute_count_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 128 is used. | * `minimum`: `0`
| Configure max attributes per span link.
Value must be non-negative.
| +| `link_count_limit` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 128 is used. | * `minimum`: `0`
| Configure max span link count.
Value must be non-negative.
|
Language support status @@ -3021,10 +3021,10 @@ Usages: `SpanProcessor` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `batch` | [`BatchSpanProcessor`](#batchspanprocessor) | `false` | No constraints. | Configure a batch span processor. | -| `simple` | [`SimpleSpanProcessor`](#simplespanprocessor) | `false` | No constraints. | Configure a simple span processor. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `batch` | [`BatchSpanProcessor`](#batchspanprocessor) | `false` | If omitted, ignore. | No constraints. | Configure a batch span processor. | +| `simple` | [`SimpleSpanProcessor`](#simplespanprocessor) | `false` | If omitted, ignore. | No constraints. | Configure a simple span processor. |
Language support status @@ -3099,14 +3099,14 @@ Usages: `TextMapPropagator` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `b3` | [`B3Propagator`](#b3propagator) | `false` | No constraints. | Include the zipkin b3 propagator. | -| `b3multi` | [`B3MultiPropagator`](#b3multipropagator) | `false` | No constraints. | Include the zipkin b3 multi propagator. | -| `baggage` | [`BaggagePropagator`](#baggagepropagator) | `false` | No constraints. | Include the w3c baggage propagator. | -| `jaeger` | [`JaegerPropagator`](#jaegerpropagator) | `false` | No constraints. | Include the jaeger propagator. | -| `ottrace` | [`OpenTracingPropagator`](#opentracingpropagator) | `false` | No constraints. | Include the opentracing propagator. | -| `tracecontext` | [`TraceContextPropagator`](#tracecontextpropagator) | `false` | No constraints. | Include the w3c trace context propagator. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `b3` | [`B3Propagator`](#b3propagator) | `false` | If omitted, ignore. | No constraints. | Include the zipkin b3 propagator. | +| `b3multi` | [`B3MultiPropagator`](#b3multipropagator) | `false` | If omitted, ignore. | No constraints. | Include the zipkin b3 multi propagator. | +| `baggage` | [`BaggagePropagator`](#baggagepropagator) | `false` | If omitted, ignore. | No constraints. | Include the w3c baggage propagator. | +| `jaeger` | [`JaegerPropagator`](#jaegerpropagator) | `false` | If omitted, ignore. | No constraints. | Include the jaeger propagator. | +| `ottrace` | [`OpenTracingPropagator`](#opentracingpropagator) | `false` | If omitted, ignore. | No constraints. | Include the opentracing propagator. | +| `tracecontext` | [`TraceContextPropagator`](#tracecontextpropagator) | `false` | If omitted, ignore. | No constraints. | Include the w3c trace context propagator. |
Language support status @@ -3195,9 +3195,9 @@ Usages: ## TraceIdRatioBasedSampler -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `ratio` | one of:
* `number`
* `null`
| `false` | * `minimum`: `0`
* `maximum`: `1`
| Configure trace_id_ratio.
If omitted or null, 1.0 is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `ratio` | one of:
* `number`
* `null`
| `false` | If omitted or null, 1.0 is used. | * `minimum`: `0`
* `maximum`: `1`
| Configure trace_id_ratio.
|
Language support status @@ -3240,12 +3240,12 @@ Usages: ## TracerProvider -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `limits` | [`SpanLimits`](#spanlimits) | `false` | No constraints. | Configure span limits. See also attribute_limits. | -| `processors` | `array` of [`SpanProcessor`](#spanprocessor) | `true` | * `minItems`: `1`
| Configure span processors. | -| `sampler` | [`Sampler`](#sampler) | `false` | No constraints. | Configure the sampler.
If omitted, parent based sampler with a root of always_on is used.
| -| `tracer_configurator/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalTracerConfigurator`](#experimentaltracerconfigurator) | `false` | No constraints. | Configure tracers.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `limits` | [`SpanLimits`](#spanlimits) | `false` | If omitted, default values as described in SpanLimits are used. | No constraints. | Configure span limits. See also attribute_limits. | +| `processors` | `array` of [`SpanProcessor`](#spanprocessor) | `true` | Property is required and must be non-null. | * `minItems`: `1`
| Configure span processors. | +| `sampler` | [`Sampler`](#sampler) | `false` | If omitted, parent based sampler with a root of always_on is used. | No constraints. | Configure the sampler.
| +| `tracer_configurator/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalTracerConfigurator`](#experimentaltracerconfigurator) | `false` | If omitted, all tracers use default values as described in ExperimentalTracerConfig. | No constraints. | Configure tracers.
|
Language support status @@ -3300,10 +3300,10 @@ Usages: ## View -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `selector` | [`ViewSelector`](#viewselector) | `true` | No constraints. | Configure view selector.
Selection criteria is additive as described in https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#instrument-selection-criteria.
| -| `stream` | [`ViewStream`](#viewstream) | `true` | No constraints. | Configure view stream. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `selector` | [`ViewSelector`](#viewselector) | `true` | Property is required and must be non-null. | No constraints. | Configure view selector.
Selection criteria is additive as described in https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#instrument-selection-criteria.
| +| `stream` | [`ViewStream`](#viewstream) | `true` | Property is required and must be non-null. | No constraints. | Configure view stream. |
Language support status @@ -3347,14 +3347,14 @@ Usages: ## ViewSelector -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `instrument_name` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure instrument name selection criteria.
If omitted or null, all instrument names match.
| -| `instrument_type` | [`InstrumentType`](#instrumenttype) | `false` | No constraints. | Configure instrument type selection criteria.
Values include: counter, gauge, histogram, observable_counter, observable_gauge, observable_up_down_counter, up_down_counter.
If omitted or null, all instrument types match.
| -| `meter_name` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure meter name selection criteria.
If omitted or null, all meter names match.
| -| `meter_schema_url` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure meter schema url selection criteria.
If omitted or null, all meter schema URLs match.
| -| `meter_version` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure meter version selection criteria.
If omitted or null, all meter versions match.
| -| `unit` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure the instrument unit selection criteria.
If omitted or null, all instrument units match.
| +| 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.
| +| `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.
| +| `unit` | one of:
* `string`
* `null`
| `false` | If omitted or null, all instrument units match. | No constraints. | Configure the instrument unit selection criteria.
|
Language support status @@ -3424,13 +3424,13 @@ Usages: ## ViewStream -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `aggregation` | [`Aggregation`](#aggregation) | `false` | 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.
If omitted, default is used.
| -| `aggregation_cardinality_limit` | one of:
* `integer`
* `null`
| `false` | * `exclusiveMinimum`: `0`
| Configure the aggregation cardinality limit.
If omitted or null, the metric reader's default cardinality limit is used.
| -| `attribute_keys` | [`IncludeExclude`](#includeexclude) | `false` | No constraints. | Configure attribute keys retained in the resulting stream(s).
| -| `description` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure metric description of the resulting stream(s).
If omitted or null, the instrument's origin description is used.
| -| `name` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure metric name of the resulting stream(s).
If omitted or null, the instrument's original name is used.
| +| 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_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).
| +| `name` | one of:
* `string`
* `null`
| `false` | If omitted or null, the instrument's original name is used. | No constraints. | Configure metric name of the resulting stream(s).
|
Language support status @@ -3491,10 +3491,10 @@ Usages: ## ZipkinSpanExporter -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `endpoint` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure endpoint.
If omitted or null, http://localhost:9411/api/v2/spans is used.
| -| `timeout` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| Configure max time (in milliseconds) to wait for each export.
Value must be non-negative. A value of 0 indicates indefinite.
If omitted or null, 10000 is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `endpoint` | one of:
* `string`
* `null`
| `false` | If omitted or null, http://localhost:9411/api/v2/spans is used. | No constraints. | Configure endpoint.
| +| `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 indefinite.
|
Language support status @@ -3604,13 +3604,13 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `local_parent_not_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with a local parent that is not sampled. | -| `local_parent_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with a local parent that is sampled. | -| `remote_parent_not_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with a remote parent that is not sampled. | -| `remote_parent_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with a remote parent that is sampled. | -| `root` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with no parent. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `local_parent_not_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | If omitted, ignore. | No constraints. | Configures the sampler for spans with a local parent that is not sampled. | +| `local_parent_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | If omitted, ignore. | No constraints. | Configures the sampler for spans with a local parent that is sampled. | +| `remote_parent_not_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | If omitted, ignore. | No constraints. | Configures the sampler for spans with a remote parent that is not sampled. | +| `remote_parent_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | If omitted, ignore. | No constraints. | Configures the sampler for spans with a remote parent that is sampled. | +| `root` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | If omitted, ignore. | No constraints. | Configures the sampler for spans with no parent. |
Language support status @@ -3667,9 +3667,9 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `ratio` | one of:
* `number`
* `null`
| `false` | * `minimum`: `0`
* `maximum`: `1`
| Configure ratio.
If omitted or null, 1.0 is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `ratio` | one of:
* `number`
* `null`
| `false` | If omitted or null, 1.0 is used. | * `minimum`: `0`
* `maximum`: `1`
| Configure ratio.
|
Language support status @@ -3715,12 +3715,12 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `always_off` | [`ExperimentalComposableAlwaysOffSampler`](#experimentalcomposablealwaysoffsampler) | `false` | No constraints. | Configure sampler to be always_off. | -| `always_on` | [`ExperimentalComposableAlwaysOnSampler`](#experimentalcomposablealwaysonsampler) | `false` | No constraints. | Configure sampler to be always_on. | -| `parent_based` | [`ExperimentalComposableParentBasedSampler`](#experimentalcomposableparentbasedsampler) | `false` | No constraints. | Configure sampler to be parent_based. | -| `probability` | [`ExperimentalComposableProbabilitySampler`](#experimentalcomposableprobabilitysampler) | `false` | No constraints. | Configure sampler to be probability. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `always_off` | [`ExperimentalComposableAlwaysOffSampler`](#experimentalcomposablealwaysoffsampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be always_off. | +| `always_on` | [`ExperimentalComposableAlwaysOnSampler`](#experimentalcomposablealwaysonsampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be always_on. | +| `parent_based` | [`ExperimentalComposableParentBasedSampler`](#experimentalcomposableparentbasedsampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be parent_based. | +| `probability` | [`ExperimentalComposableProbabilitySampler`](#experimentalcomposableprobabilitysampler) | `false` | If omitted, ignore. | No constraints. | Configure sampler to be probability. |
Language support status @@ -3812,10 +3812,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `http` | [`ExperimentalHttpInstrumentation`](#experimentalhttpinstrumentation) | `false` | No constraints. | Configure instrumentations following the http semantic conventions.
See http semantic conventions: https://opentelemetry.io/docs/specs/semconv/http/
| -| `peer` | [`ExperimentalPeerInstrumentation`](#experimentalpeerinstrumentation) | `false` | No constraints. | Configure instrumentations following the peer semantic conventions.
See peer semantic conventions: https://opentelemetry.io/docs/specs/semconv/attributes-registry/peer/
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `http` | [`ExperimentalHttpInstrumentation`](#experimentalhttpinstrumentation) | `false` | If omitted, defaults as described in ExperimentalHttpInstrumentation are used. | No constraints. | Configure instrumentations following the http semantic conventions.
See http semantic conventions: https://opentelemetry.io/docs/specs/semconv/http/
| +| `peer` | [`ExperimentalPeerInstrumentation`](#experimentalpeerinstrumentation) | `false` | If omitted, defaults as described in ExperimentalPeerInstrumentation are used. | No constraints. | Configure instrumentations following the peer semantic conventions.
See peer semantic conventions: https://opentelemetry.io/docs/specs/semconv/attributes-registry/peer/
|
Language support status @@ -3885,10 +3885,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `request_captured_headers` | `array` of `string` | `false` | * `minItems`: `1`
| Configure headers to capture for outbound http requests.
| -| `response_captured_headers` | `array` of `string` | `false` | No constraints. | Configure headers to capture for inbound http responses.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `request_captured_headers` | `array` of `string` | `false` | If omitted, no outbound request headers are captured. | * `minItems`: `1`
| Configure headers to capture for outbound http requests.
| +| `response_captured_headers` | `array` of `string` | `false` | If omitted, no inbound response headers are captured. | * `minItems`: `1`
| Configure headers to capture for inbound http responses.
|
Language support status @@ -3924,6 +3924,7 @@ Usages: }, "response_captured_headers": { "type": "array", + "minItems": 1, "items": { "type": "string" } @@ -3937,10 +3938,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `client` | [`ExperimentalHttpClientInstrumentation`](#experimentalhttpclientinstrumentation) | `false` | No constraints. | Configure instrumentations following the http client semantic conventions. | -| `server` | [`ExperimentalHttpServerInstrumentation`](#experimentalhttpserverinstrumentation) | `false` | No constraints. | Configure instrumentations following the http server semantic conventions. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `client` | [`ExperimentalHttpClientInstrumentation`](#experimentalhttpclientinstrumentation) | `false` | If omitted, defaults as described in ExperimentalHttpClientInstrumentation are used. | No constraints. | Configure instrumentations following the http client semantic conventions. | +| `server` | [`ExperimentalHttpServerInstrumentation`](#experimentalhttpserverinstrumentation) | `false` | If omitted, defaults as described in ExperimentalHttpServerInstrumentation are used. | No constraints. | Configure instrumentations following the http server semantic conventions. |
Language support status @@ -3982,10 +3983,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `request_captured_headers` | `array` of `string` | `false` | * `minItems`: `1`
| Configure headers to capture for inbound http requests.
| -| `response_captured_headers` | `array` of `string` | `false` | * `minItems`: `1`
| Configure headers to capture for outbound http responses.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `request_captured_headers` | `array` of `string` | `false` | If omitted, no request headers are captured. | * `minItems`: `1`
| Configure headers to capture for inbound http requests.
| +| `response_captured_headers` | `array` of `string` | `false` | If omitted, no response headers are captures. | * `minItems`: `1`
| Configure headers to capture for outbound http responses.
|
Language support status @@ -4035,20 +4036,20 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `cpp` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure C++ language-specific instrumentation libraries. | -| `dotnet` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure .NET language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `erlang` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure Erlang language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `general` | [`ExperimentalGeneralInstrumentation`](#experimentalgeneralinstrumentation) | `false` | No constraints. | Configure general SemConv options that may apply to multiple languages and instrumentations.
Instrumenation may merge general config options with the language specific configuration at .instrumentation..
| -| `go` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure Go language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `java` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure Java language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `js` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure JavaScript language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `php` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure PHP language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `python` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure Python language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `ruby` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure Ruby language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `rust` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure Rust language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| -| `swift` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | No constraints. | Configure Swift language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `cpp` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure C++ language-specific instrumentation libraries. | +| `dotnet` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure .NET language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `erlang` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure Erlang language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `general` | [`ExperimentalGeneralInstrumentation`](#experimentalgeneralinstrumentation) | `false` | If omitted, default values as described in ExperimentalGeneralInstrumentation are used. | No constraints. | Configure general SemConv options that may apply to multiple languages and instrumentations.
Instrumenation may merge general config options with the language specific configuration at .instrumentation..
| +| `go` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure Go language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `java` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure Java language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `js` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure JavaScript language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `php` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure PHP language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `python` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure Python language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `ruby` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure Ruby language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `rust` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure Rust language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
| +| `swift` | [`ExperimentalLanguageSpecificInstrumentation`](#experimentallanguagespecificinstrumentation) | `false` | If omitted, instrumentation defaults are used. | No constraints. | Configure Swift language-specific instrumentation libraries.
Each entry's key identifies a particular instrumentation library. The corresponding value configures it.
|
Language support status @@ -4130,11 +4131,11 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `endpoint` | one of:
* `string`
* `null`
| `false` | No constraints. | TODO | -| `initial_sampler` | [`Sampler`](#sampler) | `false` | No constraints. | TODO | -| `interval` | one of:
* `integer`
* `null`
| `false` | * `minimum`: `0`
| TODO | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `endpoint` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure the endpoint of the jaeger remote sampling service. | +| `initial_sampler` | [`Sampler`](#sampler) | `true` | Property is required and must be non-null. | No constraints. | Configure the initial sampler used before first configuration is fetched. | +| `interval` | one of:
* `integer`
* `null`
| `false` | If omitted or null, 60000 is used. | * `minimum`: `0`
| Configure the polling interval (in milliseconds) to fetch from the remote sampling service. |
Language support status @@ -4149,6 +4150,7 @@ Usages: Constraints: * `additionalProperties`: `false` +* `required`: `["endpoint","initial_sampler"]` Usages: @@ -4167,8 +4169,7 @@ Usages: "properties": { "endpoint": { "type": [ - "string", - "null" + "string" ] }, "interval": { @@ -4181,7 +4182,11 @@ Usages: "initial_sampler": { "$ref": "#/$defs/Sampler" } - } + }, + "required": [ + "endpoint", + "initial_sampler" + ] }
@@ -4227,11 +4232,11 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `disabled` | one of:
* `boolean`
* `null`
| `false` | No constraints. | Configure if the logger is enabled or not.
If omitted or null, false is used.
| -| `minimum_severity` | [`ExperimentalSeverityNumber`](#experimentalseveritynumber) | `false` | 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.
If omitted or null, severity filtering is not applied.
| -| `trace_based` | one of:
* `boolean`
* `null`
| `false` | 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.
If omitted or null, trace based filtering is not applied.
| +| 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` | [`ExperimentalSeverityNumber`](#experimentalseveritynumber) | `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.
| +| `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.
|
Language support status @@ -4286,10 +4291,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `default_config` | [`ExperimentalLoggerConfig`](#experimentalloggerconfig) | `false` | No constraints. | Configure the default logger config used there is no matching entry in .logger_configurator/development.loggers. | -| `loggers` | `array` of [`ExperimentalLoggerMatcherAndConfig`](#experimentalloggermatcherandconfig) | `false` | * `minItems`: `1`
| Configure loggers. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `default_config` | [`ExperimentalLoggerConfig`](#experimentalloggerconfig) | `false` | If omitted, unmatched .loggers use default values as described in ExperimentalLoggerConfig. | No constraints. | Configure the default logger config used there is no matching entry in .logger_configurator/development.loggers. | +| `loggers` | `array` of [`ExperimentalLoggerMatcherAndConfig`](#experimentalloggermatcherandconfig) | `false` | If omitted, all loggers use .default_config. | * `minItems`: `1`
| Configure loggers. |
Language support status @@ -4337,10 +4342,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `config` | [`ExperimentalLoggerConfig`](#experimentalloggerconfig) | `true` | No constraints. | The logger config. | -| `name` | `string` | `true` | No constraints. | Configure logger names to match, evaluated as follows:

* If the logger name exactly matches.
* If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `config` | [`ExperimentalLoggerConfig`](#experimentalloggerconfig) | `true` | Property is required and must be non-null. | No constraints. | The logger config. | +| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure logger names to match, evaluated as follows:

* If the logger name exactly matches.
* If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
|
Language support status @@ -4391,9 +4396,9 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `disabled` | `boolean` | `false` | No constraints. | Configure if the meter is enabled or not. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `disabled` | `boolean` | `false` | If omitted, false is used. | No constraints. | Configure if the meter is enabled or not. |
Language support status @@ -4436,10 +4441,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `default_config` | [`ExperimentalMeterConfig`](#experimentalmeterconfig) | `false` | No constraints. | Configure the default meter config used there is no matching entry in .meter_configurator/development.meters. | -| `meters` | `array` of [`ExperimentalMeterMatcherAndConfig`](#experimentalmetermatcherandconfig) | `false` | * `minItems`: `1`
| Configure meters. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `default_config` | [`ExperimentalMeterConfig`](#experimentalmeterconfig) | `false` | If omitted, unmatched .meters use default values as described in ExperimentalMeterConfig. | No constraints. | Configure the default meter config used there is no matching entry in .meter_configurator/development.meters. | +| `meters` | `array` of [`ExperimentalMeterMatcherAndConfig`](#experimentalmetermatcherandconfig) | `false` | If omitted, all meters used .default_config. | * `minItems`: `1`
| Configure meters. |
Language support status @@ -4487,10 +4492,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `config` | [`ExperimentalMeterConfig`](#experimentalmeterconfig) | `true` | No constraints. | The meter config. | -| `name` | `string` | `true` | No constraints. | Configure meter names to match, evaluated as follows:

* If the meter name exactly matches.
* If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `config` | [`ExperimentalMeterConfig`](#experimentalmeterconfig) | `true` | Property is required and must be non-null. | No constraints. | The meter config. | +| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure meter names to match, evaluated as follows:

* If the meter name exactly matches.
* If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
|
Language support status @@ -4541,9 +4546,9 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `output_stream` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure output stream.
Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
If omitted or null, stdout is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `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.
|
Language support status @@ -4588,11 +4593,11 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `default_histogram_aggregation` | [`ExporterDefaultHistogramAggregation`](#exporterdefaulthistogramaggregation) | `false` | 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.
If omitted or null, explicit_bucket_histogram is used.
| -| `output_stream` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure output stream.
Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl.
If omitted or null, stdout is used.
| -| `temporality_preference` | [`ExporterTemporalityPreference`](#exportertemporalitypreference) | `false` | 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.
If omitted or null, cumulative is used.
| +| 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.
| +| `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.
|
Language support status @@ -4644,9 +4649,9 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `service_mapping` | `array` of [`ExperimentalPeerServiceMapping`](#experimentalpeerservicemapping) | `false` | * `minItems`: `1`
| Configure the service mapping for instrumentations following peer.service semantic conventions.
See peer.service semantic conventions: https://opentelemetry.io/docs/specs/semconv/general/attributes/#general-remote-service-attributes
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `service_mapping` | `array` of [`ExperimentalPeerServiceMapping`](#experimentalpeerservicemapping) | `false` | If omitted, no peer service mappings are used. | * `minItems`: `1`
| Configure the service mapping for instrumentations following peer.service semantic conventions.
See peer.service semantic conventions: https://opentelemetry.io/docs/specs/semconv/general/attributes/#general-remote-service-attributes
|
Language support status @@ -4688,10 +4693,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `peer` | `string` | `true` | No constraints. | The IP address to map.
| -| `service` | `string` | `true` | No constraints. | The logical name corresponding to the IP address of .peer.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `peer` | `string` | `true` | Property is required and must be non-null. | No constraints. | The IP address to map.
| +| `service` | `string` | `true` | Property is required and must be non-null. | No constraints. | The logical name corresponding to the IP address of .peer.
|
Language support status @@ -4738,9 +4743,9 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `ratio` | one of:
* `number`
* `null`
| `false` | * `minimum`: `0`
* `maximum`: `1`
| Configure ratio.
If omitted or null, 1.0 is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `ratio` | one of:
* `number`
* `null`
| `false` | If omitted or null, 1.0 is used. | * `minimum`: `0`
* `maximum`: `1`
| Configure ratio.
|
Language support status @@ -4814,14 +4819,14 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `host` | one of:
* `string`
* `null`
| `false` | No constraints. | Configure host.
If omitted or null, localhost is used.
| -| `port` | one of:
* `integer`
* `null`
| `false` | No constraints. | Configure port.
If omitted or null, 9464 is used.
| -| `translation_strategy` | [`ExperimentalPrometheusTranslationStrategy`](#experimentalprometheustranslationstrategy) | `false` | 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.

If omitted or null, UnderscoreEscapingWithSuffixes is used.
| -| `with_resource_constant_labels` | [`IncludeExclude`](#includeexclude) | `false` | 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` | No constraints. | Configure Prometheus Exporter to produce metrics without a scope info metric.
If omitted or null, false is used.
| -| `without_target_info` | one of:
* `boolean`
* `null`
| `false` | No constraints. | Configure Prometheus Exporter to produce metrics without a target info metric for the resource.
If omitted or null, false is used.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `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.
| +| `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.
|
Language support status @@ -4943,10 +4948,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `attributes` | [`IncludeExclude`](#includeexclude) | `false` | No constraints. | Configure attributes provided by resource detectors. | -| `detectors` | `array` of [`ExperimentalResourceDetector`](#experimentalresourcedetector) | `false` | * `minItems`: `1`
| Configure resource detectors.
Resource detector names are dependent on the SDK language ecosystem. Please consult documentation for each respective language.
If omitted or null, no resource detectors are enabled.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `attributes` | [`IncludeExclude`](#includeexclude) | `false` | If omitted, all attributes from resource detectors are added. | No constraints. | Configure attributes provided by resource detectors. | +| `detectors` | `array` of [`ExperimentalResourceDetector`](#experimentalresourcedetector) | `false` | If omitted, no resource detectors are enabled. | * `minItems`: `1`
| Configure resource detectors.
Resource detector names are dependent on the SDK language ecosystem. Please consult documentation for each respective language.
|
Language support status @@ -4994,12 +4999,12 @@ Usages: `ExperimentalResourceDetector` is an [SDK extension plugin](#sdk-extension-plugins). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `container` | [`ExperimentalContainerResourceDetector`](#experimentalcontainerresourcedetector) | `false` | No constraints. | Enable the container resource detector, which populates container.* attributes.
| -| `host` | [`ExperimentalHostResourceDetector`](#experimentalhostresourcedetector) | `false` | No constraints. | Enable the host resource detector, which populates host.* and os.* attributes.
| -| `process` | [`ExperimentalProcessResourceDetector`](#experimentalprocessresourcedetector) | `false` | No constraints. | Enable the process resource detector, which populates process.* attributes.
| -| `service` | [`ExperimentalServiceResourceDetector`](#experimentalserviceresourcedetector) | `false` | No constraints. | Enable the service detector, which populates service.name based on the OTEL_SERVICE_NAME environment variable and service.instance.id.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `container` | [`ExperimentalContainerResourceDetector`](#experimentalcontainerresourcedetector) | `false` | If omitted, ignore. | No constraints. | Enable the container resource detector, which populates container.* attributes.
| +| `host` | [`ExperimentalHostResourceDetector`](#experimentalhostresourcedetector) | `false` | If omitted, ignore. | No constraints. | Enable the host resource detector, which populates host.* and os.* attributes.
| +| `process` | [`ExperimentalProcessResourceDetector`](#experimentalprocessresourcedetector) | `false` | If omitted, ignore. | No constraints. | Enable the process resource detector, which populates process.* attributes.
| +| `service` | [`ExperimentalServiceResourceDetector`](#experimentalserviceresourcedetector) | `false` | If omitted, ignore. | No constraints. | Enable the service detector, which populates service.name based on the OTEL_SERVICE_NAME environment variable and service.instance.id.
|
Language support status @@ -5195,9 +5200,9 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `disabled` | `boolean` | `false` | No constraints. | Configure if the tracer is enabled or not. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `disabled` | `boolean` | `false` | If omitted, false is used. | No constraints. | Configure if the tracer is enabled or not. |
Language support status @@ -5240,10 +5245,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `default_config` | [`ExperimentalTracerConfig`](#experimentaltracerconfig) | `false` | No constraints. | Configure the default tracer config used there is no matching entry in .tracer_configurator/development.tracers. | -| `tracers` | `array` of [`ExperimentalTracerMatcherAndConfig`](#experimentaltracermatcherandconfig) | `false` | * `minItems`: `1`
| Configure tracers. | +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `default_config` | [`ExperimentalTracerConfig`](#experimentaltracerconfig) | `false` | If omitted, unmatched .tracers use default values as described in ExperimentalTracerConfig. | No constraints. | Configure the default tracer config used there is no matching entry in .tracer_configurator/development.tracers. | +| `tracers` | `array` of [`ExperimentalTracerMatcherAndConfig`](#experimentaltracermatcherandconfig) | `false` | If omitted, all tracers use .default_config. | * `minItems`: `1`
| Configure tracers. |
Language support status @@ -5291,10 +5296,10 @@ Usages: > [!WARNING] > This type is [experimental](README.md#experimental-features). -| Property | Type | Required? | Constraints | Description | -|---|---|---|---|---| -| `config` | [`ExperimentalTracerConfig`](#experimentaltracerconfig) | `true` | No constraints. | The tracer config. | -| `name` | `string` | `true` | No constraints. | Configure tracer names to match, evaluated as follows:

* If the tracer name exactly matches.
* If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| Property | Type | Required? | Default and Null Behavior | Constraints | Description | +|---|---|---|---|---|---| +| `config` | [`ExperimentalTracerConfig`](#experimentaltracerconfig) | `true` | Property is required and must be non-null. | No constraints. | The tracer config. | +| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure tracer names to match, evaluated as follows:

* If the tracer name exactly matches.
* If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
|
Language support status diff --git a/schema/common.yaml b/schema/common.yaml index e7398913..746877d9 100644 --- a/schema/common.yaml +++ b/schema/common.yaml @@ -13,7 +13,7 @@ $defs: Values are evaluated to match as follows: * If the value exactly matches. * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none. - If omitted, all values are included. + defaultBehavior: all values are included excluded: type: array minItems: 1 @@ -24,7 +24,7 @@ $defs: Values are evaluated to match as follows: * If the value exactly matches. * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none. - If omitted, .included attributes are included. + defaultBehavior: .included attributes are included NameStringValuePair: type: object additionalProperties: false @@ -37,6 +37,7 @@ $defs: - string - "null" description: The value of the pair. + nullBehavior: TODO required: - name - value @@ -52,10 +53,11 @@ $defs: - "null" description: | Configure endpoint, including the signal specific path. - If omitted or null, the http://localhost:4318/v1/{signal} (where signal is 'traces', 'logs', or 'metrics') is used. + defaultBehavior: the http://localhost:4318/v1/{signal} (where signal is 'traces', 'logs', or 'metrics') is used tls: $ref: "#/$defs/HttpTls" description: Configure TLS settings for the exporter. + defaultBehavior: system default TLS settings are used headers: type: array minItems: 1 @@ -64,6 +66,7 @@ $defs: description: | Configure headers. Entries have higher priority than entries from .headers_list. If an entry's .value is null, the entry is ignored. + defaultBehavior: no headers are added headers_list: type: - string @@ -71,7 +74,7 @@ $defs: description: | 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. - If omitted or null, no headers are added. + defaultBehavior: no headers are added compression: type: - string @@ -79,7 +82,7 @@ $defs: description: | Configure compression. Values include: gzip, none. Implementations may support other compression algorithms. - If omitted or null, none is used. + defaultBehavior: none is used timeout: type: - integer @@ -88,13 +91,13 @@ $defs: description: | Configure max time (in milliseconds) to wait for each export. Value must be non-negative. A value of 0 indicates no limit (infinity). - If omitted or null, 10000 is used. + defaultBehavior: 10000 is used encoding: $ref: "#/$defs/OtlpHttpEncoding" description: | Configure the encoding used for messages. Values include: protobuf, json. Implementations may not support json. - If omitted or null, protobuf is used. + defaultBehavior: protobuf is used OtlpHttpEncoding: type: - string @@ -117,10 +120,11 @@ $defs: - "null" description: | Configure endpoint. - If omitted or null, http://localhost:4317 is used. + defaultBehavior: http://localhost:4317 is used tls: $ref: "#/$defs/GrpcTls" description: Configure TLS settings for the exporter. + defaultBehavior: system default TLS settings are used headers: type: array minItems: 1 @@ -129,6 +133,7 @@ $defs: description: | Configure headers. Entries have higher priority than entries from .headers_list. If an entry's .value is null, the entry is ignored. + defaultBehavior: no headers are added headers_list: type: - string @@ -136,7 +141,7 @@ $defs: description: | 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. - If omitted or null, no headers are added. + defaultBehavior: no headers are added compression: type: - string @@ -144,7 +149,7 @@ $defs: description: | Configure compression. Values include: gzip, none. Implementations may support other compression algorithms. - If omitted or null, none is used. + defaultBehavior: none is used timeout: type: - integer @@ -153,7 +158,7 @@ $defs: description: | Configure max time (in milliseconds) to wait for each export. Value must be non-negative. A value of 0 indicates no limit (infinity). - If omitted or null, 10000 is used. + defaultBehavior: 10000 is used ExperimentalOtlpFileExporter: type: - object @@ -167,7 +172,7 @@ $defs: description: | Configure output stream. Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl. - If omitted or null, stdout is used. + defaultBehavior: stdout is used ConsoleExporter: type: - object @@ -186,7 +191,7 @@ $defs: description: | Configure certificate used to verify a server's TLS credentials. Absolute path to certificate file in PEM format. - If omitted or null, system default certificate verification is used for secure connections. + defaultBehavior: system default certificate verification is used for secure connections key_file: type: - string @@ -194,7 +199,7 @@ $defs: description: | Configure mTLS private client key. Absolute path to client key file in PEM format. If set, .client_certificate must also be set. - If omitted or null, mTLS is not used. + defaultBehavior: mTLS is not used cert_file: type: - string @@ -202,7 +207,7 @@ $defs: description: | Configure mTLS client certificate. Absolute path to client certificate file in PEM format. If set, .client_key must also be set. - If omitted or null, mTLS is not used. + defaultBehavior: mTLS is not used GrpcTls: type: - object @@ -216,7 +221,7 @@ $defs: description: | Configure certificate used to verify a server's TLS credentials. Absolute path to certificate file in PEM format. - If omitted or null, system default certificate verification is used for secure connections. + defaultBehavior: system default certificate verification is used for secure connections key_file: type: - string @@ -224,7 +229,7 @@ $defs: description: | Configure mTLS private client key. Absolute path to client key file in PEM format. If set, .client_certificate must also be set. - If omitted or null, mTLS is not used. + defaultBehavior: mTLS is not used cert_file: type: - string @@ -232,7 +237,7 @@ $defs: description: | Configure mTLS client certificate. Absolute path to client certificate file in PEM format. If set, .client_key must also be set. - If omitted or null, mTLS is not used. + defaultBehavior: mTLS is not used insecure: type: - boolean @@ -240,4 +245,4 @@ $defs: description: | Configure client transport security for the exporter's connection. Only applicable when .endpoint is provided without http or https scheme. Implementations may choose to ignore .insecure. - If omitted or null, false is used. + defaultBehavior: false is used diff --git a/schema/instrumentation.yaml b/schema/instrumentation.yaml index f81b3628..30bddcdc 100644 --- a/schema/instrumentation.yaml +++ b/schema/instrumentation.yaml @@ -6,59 +6,71 @@ properties: description: | Configure general SemConv options that may apply to multiple languages and instrumentations. Instrumenation may merge general config options with the language specific configuration at .instrumentation.. + defaultBehavior: default values as described in ExperimentalGeneralInstrumentation are used cpp: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: Configure C++ language-specific instrumentation libraries. + defaultBehavior: instrumentation defaults are used dotnet: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure .NET language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used erlang: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure Erlang language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used go: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure Go language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used java: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure Java language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used js: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure JavaScript language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used php: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure PHP language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used python: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure Python language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used ruby: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure Ruby language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used rust: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure Rust language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used swift: $ref: "#/$defs/ExperimentalLanguageSpecificInstrumentation" description: | Configure Swift language-specific instrumentation libraries. Each entry's key identifies a particular instrumentation library. The corresponding value configures it. + defaultBehavior: instrumentation defaults are used $defs: ExperimentalGeneralInstrumentation: type: object @@ -69,11 +81,13 @@ $defs: description: | Configure instrumentations following the peer semantic conventions. See peer semantic conventions: https://opentelemetry.io/docs/specs/semconv/attributes-registry/peer/ + defaultBehavior: defaults as described in ExperimentalPeerInstrumentation are used http: $ref: "#/$defs/ExperimentalHttpInstrumentation" description: | Configure instrumentations following the http semantic conventions. See http semantic conventions: https://opentelemetry.io/docs/specs/semconv/http/ + defaultBehavior: defaults as described in ExperimentalHttpInstrumentation are used ExperimentalPeerInstrumentation: type: object additionalProperties: false @@ -86,6 +100,7 @@ $defs: description: | Configure the service mapping for instrumentations following peer.service semantic conventions. See peer.service semantic conventions: https://opentelemetry.io/docs/specs/semconv/general/attributes/#general-remote-service-attributes + defaultBehavior: no peer service mappings are used ExperimentalPeerServiceMapping: type: object additionalProperties: false @@ -112,12 +127,15 @@ $defs: type: string description: | Configure headers to capture for outbound http requests. + defaultBehavior: no outbound request headers are captured response_captured_headers: type: array + minItems: 1 items: type: string description: | Configure headers to capture for inbound http responses. + defaultBehavior: no inbound response headers are captured ExperimentalHttpServerInstrumentation: type: object additionalProperties: false @@ -129,6 +147,7 @@ $defs: type: string description: | Configure headers to capture for inbound http requests. + defaultBehavior: no request headers are captured response_captured_headers: type: array minItems: 1 @@ -136,6 +155,7 @@ $defs: type: string description: | Configure headers to capture for outbound http responses. + defaultBehavior: no response headers are captures ExperimentalHttpInstrumentation: type: object additionalProperties: false @@ -143,9 +163,11 @@ $defs: client: $ref: "#/$defs/ExperimentalHttpClientInstrumentation" description: Configure instrumentations following the http client semantic conventions. + defaultBehavior: defaults as described in ExperimentalHttpClientInstrumentation are used server: $ref: "#/$defs/ExperimentalHttpServerInstrumentation" description: Configure instrumentations following the http server semantic conventions. + defaultBehavior: defaults as described in ExperimentalHttpServerInstrumentation are used ExperimentalLanguageSpecificInstrumentation: type: object additionalProperties: diff --git a/schema/logger_provider.yaml b/schema/logger_provider.yaml index a3d17c94..4f375a5f 100644 --- a/schema/logger_provider.yaml +++ b/schema/logger_provider.yaml @@ -10,10 +10,12 @@ properties: limits: $ref: "#/$defs/LogRecordLimits" description: Configure log record limits. See also attribute_limits. + defaultBehavior: default values as described in LogRecordLimits are used logger_configurator/development: $ref: "#/$defs/ExperimentalLoggerConfigurator" description: | Configure loggers. + defaultBehavior: all loggers use default values as described in ExperimentalLoggerConfig required: - processors $defs: @@ -38,7 +40,7 @@ $defs: description: | Configure delay interval (in milliseconds) between two consecutive exports. Value must be non-negative. - If omitted or null, 1000 is used. + defaultBehavior: 1000 is used export_timeout: type: - integer @@ -47,7 +49,7 @@ $defs: description: | Configure maximum allowed time (in milliseconds) to export data. Value must be non-negative. A value of 0 indicates no limit (infinity). - If omitted or null, 30000 is used. + defaultBehavior: 30000 is used max_queue_size: type: - integer @@ -55,7 +57,7 @@ $defs: exclusiveMinimum: 0 description: | Configure maximum queue size. Value must be positive. - If omitted or null, 2048 is used. + defaultBehavior: 2048 is used max_export_batch_size: type: - integer @@ -63,7 +65,7 @@ $defs: exclusiveMinimum: 0 description: | Configure maximum batch size. Value must be positive. - If omitted or null, 512 is used. + defaultBehavior: 512 is used exporter: $ref: "#/$defs/LogRecordExporter" description: Configure exporter. @@ -81,16 +83,20 @@ $defs: otlp_http: $ref: common.yaml#/$defs/OtlpHttpExporter description: Configure exporter to be OTLP with HTTP transport. + defaultBehavior: ignore otlp_grpc: $ref: common.yaml#/$defs/OtlpGrpcExporter description: Configure exporter to be OTLP with gRPC transport. + defaultBehavior: ignore otlp_file/development: $ref: common.yaml#/$defs/ExperimentalOtlpFileExporter description: | Configure exporter to be OTLP with file transport. + defaultBehavior: ignore console: $ref: common.yaml#/$defs/ConsoleExporter description: Configure exporter to be console. + defaultBehavior: ignore isSdkExtensionPlugin: true LogRecordLimits: type: object @@ -104,7 +110,7 @@ $defs: description: | Configure max attribute value size. Overrides .attribute_limits.attribute_value_length_limit. Value must be non-negative. - If omitted or null, there is no limit. + defaultBehavior: there is no limit attribute_count_limit: type: - integer @@ -113,7 +119,7 @@ $defs: description: | Configure max attribute count. Overrides .attribute_limits.attribute_count_limit. Value must be non-negative. - If omitted or null, 128 is used. + defaultBehavior: 128 is used LogRecordProcessor: type: object additionalProperties: @@ -126,9 +132,11 @@ $defs: batch: $ref: "#/$defs/BatchLogRecordProcessor" description: Configure a batch log record processor. + defaultBehavior: ignore simple: $ref: "#/$defs/SimpleLogRecordProcessor" description: Configure a simple log record processor. + defaultBehavior: ignore isSdkExtensionPlugin: true ExperimentalLoggerConfigurator: type: @@ -138,12 +146,14 @@ $defs: default_config: $ref: "#/$defs/ExperimentalLoggerConfig" description: Configure the default logger config used there is no matching entry in .logger_configurator/development.loggers. + defaultBehavior: unmatched .loggers use default values as described in ExperimentalLoggerConfig loggers: type: array minItems: 1 items: $ref: "#/$defs/ExperimentalLoggerMatcherAndConfig" description: Configure loggers. + defaultBehavior: all loggers use .default_config ExperimentalLoggerMatcherAndConfig: type: - object @@ -174,14 +184,14 @@ $defs: - "null" description: | Configure if the logger is enabled or not. - If omitted or null, false is used. + defaultBehavior: false is used minimum_severity: $ref: "#/$defs/ExperimentalSeverityNumber" 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. - If omitted or null, severity filtering is not applied. + defaultBehavior: severity filtering is not applied trace_based: type: - boolean @@ -189,7 +199,7 @@ $defs: description: | 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. - If omitted or null, trace based filtering is not applied. + defaultBehavior: trace based filtering is not applied ExperimentalSeverityNumber: type: - string diff --git a/schema/meter_provider.yaml b/schema/meter_provider.yaml index 7a8f4834..e17e2c9f 100644 --- a/schema/meter_provider.yaml +++ b/schema/meter_provider.yaml @@ -15,16 +15,18 @@ properties: description: | Configure views. Each view has a selector which determines the instrument(s) it applies to, and a configuration for the resulting stream(s). + defaultBehavior: no views are registered exemplar_filter: $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. - If omitted or null, trace_based is used. + defaultBehavior: trace_based is used meter_configurator/development: $ref: "#/$defs/ExperimentalMeterConfigurator" description: | Configure meters. + defaultBehavior: all meters use default values as described in ExperimentalMeterConfig required: - readers $defs: @@ -52,7 +54,7 @@ $defs: description: | Configure delay interval (in milliseconds) between start of two consecutive exports. Value must be non-negative. - If omitted or null, 60000 is used. + defaultBehavior: 60000 is used timeout: type: - integer @@ -61,7 +63,7 @@ $defs: description: | Configure maximum allowed time (in milliseconds) to export data. Value must be non-negative. A value of 0 indicates no limit (infinity). - If omitted or null, 30000 is used. + defaultBehavior: 30000 is used exporter: $ref: "#/$defs/PushMetricExporter" description: Configure exporter. @@ -71,9 +73,11 @@ $defs: items: $ref: "#/$defs/MetricProducer" description: Configure metric producers. + defaultBehavior: no metric producers are added cardinality_limits: $ref: "#/$defs/CardinalityLimits" description: Configure cardinality limits. + defaultBehavior: default values as described in CardinalityLimits are used required: - exporter PullMetricReader: @@ -89,9 +93,11 @@ $defs: items: $ref: "#/$defs/MetricProducer" description: Configure metric producers. + defaultBehavior: no metric producers are added cardinality_limits: $ref: "#/$defs/CardinalityLimits" description: Configure cardinality limits. + defaultBehavior: default values as described in CardinalityLimits are used required: - exporter CardinalityLimits: @@ -106,7 +112,7 @@ $defs: description: | Configure default cardinality limit for all instrument types. Instrument-specific cardinality limits take priority. - If omitted or null, 2000 is used. + defaultBehavior: 2000 is used counter: type: - integer @@ -114,7 +120,7 @@ $defs: exclusiveMinimum: 0 description: | Configure default cardinality limit for counter instruments. - If omitted or null, the value from .default is used. + defaultBehavior: the value from .default is used gauge: type: - integer @@ -122,7 +128,7 @@ $defs: exclusiveMinimum: 0 description: | Configure default cardinality limit for gauge instruments. - If omitted or null, the value from .default is used. + defaultBehavior: the value from .default is used histogram: type: - integer @@ -130,7 +136,7 @@ $defs: exclusiveMinimum: 0 description: | Configure default cardinality limit for histogram instruments. - If omitted or null, the value from .default is used. + defaultBehavior: the value from .default is used observable_counter: type: - integer @@ -138,7 +144,7 @@ $defs: exclusiveMinimum: 0 description: | Configure default cardinality limit for observable_counter instruments. - If omitted or null, the value from .default is used. + defaultBehavior: the value from .default is used observable_gauge: type: - integer @@ -146,7 +152,7 @@ $defs: exclusiveMinimum: 0 description: | Configure default cardinality limit for observable_gauge instruments. - If omitted or null, the value from .default is used. + defaultBehavior: the value from .default is used observable_up_down_counter: type: - integer @@ -154,7 +160,7 @@ $defs: exclusiveMinimum: 0 description: | Configure default cardinality limit for observable_up_down_counter instruments. - If omitted or null, the value from .default is used. + defaultBehavior: the value from .default is used up_down_counter: type: - integer @@ -162,7 +168,7 @@ $defs: exclusiveMinimum: 0 description: | Configure default cardinality limit for up_down_counter instruments. - If omitted or null, the value from .default is used. + defaultBehavior: the value from .default is used PushMetricExporter: type: object additionalProperties: @@ -176,18 +182,22 @@ $defs: $ref: "#/$defs/OtlpHttpMetricExporter" description: | Configure exporter to be OTLP with HTTP transport. + defaultBehavior: ignore otlp_grpc: $ref: "#/$defs/OtlpGrpcMetricExporter" description: | Configure exporter to be OTLP with gRPC transport. + defaultBehavior: ignore otlp_file/development: $ref: "#/$defs/ExperimentalOtlpFileMetricExporter" description: | Configure exporter to be OTLP with file transport. + defaultBehavior: ignore console: $ref: "#/$defs/ConsoleMetricExporter" description: | Configure exporter to be console. + defaultBehavior: ignore isSdkExtensionPlugin: true PullMetricExporter: type: object @@ -202,6 +212,7 @@ $defs: $ref: "#/$defs/ExperimentalPrometheusMetricExporter" description: | Configure exporter to be prometheus. + defaultBehavior: ignore isSdkExtensionPlugin: true MetricProducer: type: object @@ -215,6 +226,7 @@ $defs: opencensus: $ref: "#/$defs/OpenCensusMetricProducer" description: Configure metric producer to be opencensus. + defaultBehavior: ignore isSdkExtensionPlugin: true OpenCensusMetricProducer: type: @@ -233,31 +245,32 @@ $defs: - "null" description: | Configure host. - If omitted or null, localhost is used. + defaultBehavior: localhost is used port: type: - integer - "null" description: | Configure port. - If omitted or null, 9464 is used. + defaultBehavior: 9464 is used without_scope_info: type: - boolean - "null" description: | Configure Prometheus Exporter to produce metrics without a scope info metric. - If omitted or null, false is used. + defaultBehavior: false is used without_target_info: type: - boolean - "null" description: | Configure Prometheus Exporter to produce metrics without a target info metric for the resource. - If omitted or null, false is used. + defaultBehavior: false is used with_resource_constant_labels: $ref: common.yaml#/$defs/IncludeExclude description: Configure Prometheus Exporter to add resource attributes as metrics attributes, where the resource attribute keys match the patterns. + defaultBehavior: no resource attributes are added translation_strategy: $ref: "#/$defs/ExperimentalPrometheusTranslationStrategy" description: | @@ -268,7 +281,7 @@ $defs: * 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. - If omitted or null, UnderscoreEscapingWithSuffixes is used. + defaultBehavior: UnderscoreEscapingWithSuffixes is used ExperimentalPrometheusTranslationStrategy: type: - string @@ -292,9 +305,11 @@ $defs: periodic: $ref: "#/$defs/PeriodicMetricReader" description: Configure a periodic metric reader. + defaultBehavior: ignore pull: $ref: "#/$defs/PullMetricReader" description: Configure a pull based metric reader. + defaultBehavior: ignore ExporterTemporalityPreference: type: - string @@ -329,10 +344,11 @@ $defs: - "null" description: | Configure endpoint. - If omitted or null, http://localhost:4318/v1/metrics is used. + defaultBehavior: http://localhost:4318/v1/metrics is used tls: $ref: common.yaml#/$defs/HttpTls description: Configure TLS settings for the exporter. + defaultBehavior: system default TLS settings are used headers: type: array minItems: 1 @@ -341,6 +357,7 @@ $defs: description: | Configure headers. Entries have higher priority than entries from .headers_list. If an entry's .value is null, the entry is ignored. + defaultBehavior: no headers are added headers_list: type: - string @@ -348,7 +365,7 @@ $defs: description: | 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. - If omitted or null, no headers are added. + defaultBehavior: no headers are added compression: type: - string @@ -356,7 +373,7 @@ $defs: description: | Configure compression. Values include: gzip, none. Implementations may support other compression algorithms. - If omitted or null, none is used. + defaultBehavior: none is used timeout: type: - integer @@ -365,25 +382,25 @@ $defs: description: | Configure max time (in milliseconds) to wait for each export. Value must be non-negative. A value of 0 indicates no limit (infinity). - If omitted or null, 10000 is used. + defaultBehavior: 10000 is used encoding: $ref: common.yaml#/$defs/OtlpHttpEncoding description: | Configure the encoding used for messages. Values include: protobuf, json. Implementations may not support json. - If omitted or null, protobuf is used. + 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. - If omitted or null, cumulative is used. + 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. - If omitted or null, explicit_bucket_histogram is used. + defaultBehavior: explicit_bucket_histogram is used OtlpGrpcMetricExporter: type: - object @@ -396,10 +413,11 @@ $defs: - "null" description: | Configure endpoint. - If omitted or null, http://localhost:4317 is used. + defaultBehavior: http://localhost:4317 is used tls: $ref: common.yaml#/$defs/GrpcTls description: Configure TLS settings for the exporter. + defaultBehavior: system default TLS settings are used headers: type: array minItems: 1 @@ -408,6 +426,7 @@ $defs: description: | Configure headers. Entries have higher priority than entries from .headers_list. If an entry's .value is null, the entry is ignored. + defaultBehavior: no headers are added headers_list: type: - string @@ -415,7 +434,7 @@ $defs: description: | 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. - If omitted or null, no headers are added. + defaultBehavior: no headers are added compression: type: - string @@ -423,7 +442,7 @@ $defs: description: | Configure compression. Values include: gzip, none. Implementations may support other compression algorithms. - If omitted or null, none is used. + defaultBehavior: none is used timeout: type: - integer @@ -432,19 +451,19 @@ $defs: description: | Configure max time (in milliseconds) to wait for each export. Value must be non-negative. A value of 0 indicates no limit (infinity). - If omitted or null, 10000 is used. + defaultBehavior: 10000 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. - If omitted or null, cumulative is used. + 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. - If omitted or null, explicit_bucket_histogram is used. + defaultBehavior: explicit_bucket_histogram is used ExperimentalOtlpFileMetricExporter: type: - object @@ -458,19 +477,19 @@ $defs: description: | Configure output stream. Values include stdout, or scheme+destination. For example: file:///path/to/file.jsonl. - If omitted or null, stdout is used. + defaultBehavior: stdout 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. - If omitted or null, cumulative is used. + 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. - If omitted or null, explicit_bucket_histogram is used. + defaultBehavior: explicit_bucket_histogram is used ConsoleMetricExporter: type: - object @@ -482,13 +501,13 @@ $defs: 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. - If omitted or null, cumulative is used. + 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. - If omitted or null, explicit_bucket_histogram is used. + defaultBehavior: explicit_bucket_histogram is used View: type: object additionalProperties: false @@ -514,41 +533,41 @@ $defs: - "null" description: | Configure instrument name selection criteria. - If omitted or null, all instrument names match. + defaultBehavior: all instrument names match instrument_type: $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. - If omitted or null, all instrument types match. + defaultBehavior: all instrument types match unit: type: - string - "null" description: | Configure the instrument unit selection criteria. - If omitted or null, all instrument units match. + defaultBehavior: all instrument units match meter_name: type: - string - "null" description: | Configure meter name selection criteria. - If omitted or null, all meter names match. + defaultBehavior: all meter names match meter_version: type: - string - "null" description: | Configure meter version selection criteria. - If omitted or null, all meter versions match. + defaultBehavior: all meter versions match meter_schema_url: type: - string - "null" description: | Configure meter schema url selection criteria. - If omitted or null, all meter schema URLs match. + defaultBehavior: all meter schema URLs match InstrumentType: type: - string @@ -579,20 +598,20 @@ $defs: - "null" description: | Configure metric name of the resulting stream(s). - If omitted or null, the instrument's original name is used. + defaultBehavior: the instrument's original name is used description: type: - string - "null" description: | Configure metric description of the resulting stream(s). - If omitted or null, the instrument's origin description is used. + defaultBehavior: the instrument's origin description is used aggregation: $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. - If omitted, default is used. + defaultBehavior: default is used aggregation_cardinality_limit: type: - integer @@ -600,11 +619,12 @@ $defs: exclusiveMinimum: 0 description: | Configure the aggregation cardinality limit. - If omitted or null, the metric reader's default cardinality limit is used. + defaultBehavior: the metric reader's default cardinality limit is used attribute_keys: $ref: common.yaml#/$defs/IncludeExclude description: | Configure attribute keys retained in the resulting stream(s). + defaultBehavior: all attribute keys are retained Aggregation: type: object additionalProperties: false @@ -613,22 +633,42 @@ $defs: properties: default: $ref: "#/$defs/DefaultAggregation" - description: TODO + description: | + Configure aggregation to be the default aggregation for the instrument type. + See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#default-aggregation for details. + defaultBehavior: ignore drop: $ref: "#/$defs/DropAggregation" - description: TODO + description: | + Configure the aggregation to be drop. + See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#drop-aggregation for details. + defaultBehavior: ignore explicit_bucket_histogram: $ref: "#/$defs/ExplicitBucketHistogramAggregation" - description: Configure aggregation to be explicit_bucket_histogram. + description: | + Configure aggregation to be explicit_bucket_histogram. + See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#explicit-bucket-histogram-aggregation for details. + defaultBehavior: ignore + nullBehavior: default values as described in ExplicitBucketHistogramAggregation are used base2_exponential_bucket_histogram: $ref: "#/$defs/Base2ExponentialBucketHistogramAggregation" - description: TODO + description: | + Configure aggregation to be base2_exponential_bucket_histogram. + See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#base2-exponential-bucket-histogram-aggregation for details. + defaultBehavior: ignore + nullBehavior: default values as described in Base2ExponentialBucketHistogramAggregation are used last_value: $ref: "#/$defs/LastValueAggregation" - description: TODO + description: | + Configure the aggregation to be last_value. + See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#last-value-aggregation for details. + defaultBehavior: ignore sum: $ref: "#/$defs/SumAggregation" - description: TODO + description: | + Configure the aggregation to be sum. + See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/metrics/sdk.md#sum-aggregation for details. + defaultBehavior: ignore DefaultAggregation: type: - object @@ -652,14 +692,14 @@ $defs: type: number description: | Configure bucket boundaries. - If omitted, [0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, 10000] is used. + defaultBehavior: "[0, 5, 10, 25, 50, 75, 100, 250, 500, 750, 1000, 2500, 5000, 7500, 10000] is used" record_min_max: type: - boolean - "null" description: | Configure record min and max. - If omitted or null, true is used. + defaultBehavior: true is used Base2ExponentialBucketHistogramAggregation: type: - object @@ -673,17 +713,20 @@ $defs: minimum: -10 maximum: 20 description: TODO + defaultBehavior: 20 is used max_size: type: - integer - "null" minimum: 2 description: TODO + defaultBehavior: 160 is used record_min_max: type: - boolean - "null" description: TODO + defaultBehavior: true is used LastValueAggregation: type: - object @@ -702,12 +745,14 @@ $defs: default_config: $ref: "#/$defs/ExperimentalMeterConfig" description: Configure the default meter config used there is no matching entry in .meter_configurator/development.meters. + defaultBehavior: unmatched .meters use default values as described in ExperimentalMeterConfig meters: type: array minItems: 1 items: $ref: "#/$defs/ExperimentalMeterMatcherAndConfig" description: Configure meters. + defaultBehavior: all meters used .default_config ExperimentalMeterMatcherAndConfig: type: - object @@ -736,3 +781,4 @@ $defs: type: - boolean description: Configure if the meter is enabled or not. + defaultBehavior: false is used diff --git a/schema/opentelemetry_configuration.yaml b/schema/opentelemetry_configuration.yaml index d6a8d509..fd2fc297 100644 --- a/schema/opentelemetry_configuration.yaml +++ b/schema/opentelemetry_configuration.yaml @@ -14,47 +14,49 @@ properties: - "null" description: | Configure if the SDK is disabled or not. - If omitted or null, false is used. + defaultBehavior: false is used log_level: type: - string - "null" description: | Configure the log level of the internal logger used by the SDK. - If omitted, info is used. + defaultBehavior: info is used attribute_limits: $ref: "#/$defs/AttributeLimits" description: | Configure general attribute limits. See also tracer_provider.limits, logger_provider.limits. + defaultBehavior: default values as described in AttributeLimits are used logger_provider: $ref: "#/$defs/LoggerProvider" description: | Configure logger provider. - If omitted, a noop logger provider is used. + defaultBehavior: a noop logger provider is used meter_provider: $ref: "#/$defs/MeterProvider" description: | Configure meter provider. - If omitted, a noop meter provider is used. + defaultBehavior: a noop meter provider is used propagator: $ref: "#/$defs/Propagator" description: | Configure text map context propagators. - If omitted, a noop propagator is used. + defaultBehavior: a noop propagator is used tracer_provider: $ref: "#/$defs/TracerProvider" description: | Configure tracer provider. - If omitted, a noop tracer provider is used. + defaultBehavior: a noop tracer provider is used resource: $ref: "#/$defs/Resource" description: | Configure resource for all signals. - If omitted, the default resource is used. + defaultBehavior: the default resource is used instrumentation/development: $ref: "#/$defs/ExperimentalInstrumentation" description: | Configure instrumentation. + defaultBehavior: instrumentation defaults are used required: - file_format $defs: @@ -70,7 +72,7 @@ $defs: description: | Configure max attribute value size. Value must be non-negative. - If omitted or null, there is no limit. + defaultBehavior: there is no limit attribute_count_limit: type: - integer @@ -79,7 +81,7 @@ $defs: description: | Configure max attribute count. Value must be non-negative. - If omitted or null, 128 is used. + defaultBehavior: 128 is used LoggerProvider: $ref: logger_provider.yaml MeterProvider: diff --git a/schema/propagator.yaml b/schema/propagator.yaml index 29544f82..2d553f8f 100644 --- a/schema/propagator.yaml +++ b/schema/propagator.yaml @@ -9,7 +9,7 @@ properties: description: | Configure the propagators in the composite text map propagator. Entries from .composite_list are appended to the list here with duplicates filtered out. Built-in propagator keys include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party keys include: xray. - If the resolved list of propagators (from .composite and .composite_list) is empty, a noop propagator is used. + defaultBehavior: and .composite_list is omitted or null, a noop propagator is used composite_list: type: - string @@ -18,7 +18,7 @@ properties: Configure the propagators in the composite text map propagator. Entries are appended to .composite with duplicates filtered out. The value is a comma separated list of propagator identifiers matching the format of OTEL_PROPAGATORS. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration for details. Built-in propagator identifiers include: tracecontext, baggage, b3, b3multi, jaeger, ottrace. Known third party identifiers include: xray. - If the resolved list of propagators (from .composite and .composite_list) is empty, a noop propagator is used. + defaultBehavior: and .composite is omitted or null, a noop propagator is used $defs: TextMapPropagator: type: object @@ -32,21 +32,27 @@ $defs: tracecontext: $ref: "#/$defs/TraceContextPropagator" description: Include the w3c trace context propagator. + defaultBehavior: ignore baggage: $ref: "#/$defs/BaggagePropagator" description: Include the w3c baggage propagator. + defaultBehavior: ignore b3: $ref: "#/$defs/B3Propagator" description: Include the zipkin b3 propagator. + defaultBehavior: ignore b3multi: $ref: "#/$defs/B3MultiPropagator" description: Include the zipkin b3 multi propagator. + defaultBehavior: ignore jaeger: $ref: "#/$defs/JaegerPropagator" description: Include the jaeger propagator. + defaultBehavior: ignore ottrace: $ref: "#/$defs/OpenTracingPropagator" description: Include the opentracing propagator. + defaultBehavior: ignore isSdkExtensionPlugin: true TraceContextPropagator: type: diff --git a/schema/resource.yaml b/schema/resource.yaml index cfc8d5ed..5f97a678 100644 --- a/schema/resource.yaml +++ b/schema/resource.yaml @@ -8,18 +8,19 @@ properties: $ref: "#/$defs/AttributeNameValue" description: | Configure resource attributes. Entries have higher priority than entries from .resource.attributes_list. + defaultBehavior: no resource attributes are added detection/development: $ref: "#/$defs/ExperimentalResourceDetection" description: | Configure resource detection. - If omitted or null, resource detection is disabled. + defaultBehavior: resource detection is disabled schema_url: type: - string - "null" description: | Configure resource schema URL. - If omitted or null, no schema URL is used. + defaultBehavior: no schema URL is used attributes_list: type: - string @@ -27,7 +28,7 @@ properties: description: | Configure resource attributes. Entries have lower priority than entries from .resource.attributes. The value is a list of comma separated key-value pairs matching the format of OTEL_RESOURCE_ATTRIBUTES. See https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration for details. - If omitted or null, no resource attributes are added. + defaultBehavior: no resource attributes are added $defs: AttributeNameValue: type: object @@ -63,7 +64,7 @@ $defs: description: | The attribute type. Values include: string, bool, int, double, string_array, bool_array, int_array, double_array. - If omitted or null, string is used. + defaultBehavior: string is used required: - name - value @@ -96,6 +97,7 @@ $defs: attributes: $ref: common.yaml#/$defs/IncludeExclude description: Configure attributes provided by resource detectors. + defaultBehavior: all attributes from resource detectors are added detectors: type: array minItems: 1 @@ -104,7 +106,7 @@ $defs: description: | Configure resource detectors. Resource detector names are dependent on the SDK language ecosystem. Please consult documentation for each respective language. - If omitted or null, no resource detectors are enabled. + defaultBehavior: no resource detectors are enabled ExperimentalResourceDetector: type: object additionalProperties: @@ -118,18 +120,22 @@ $defs: $ref: "#/$defs/ExperimentalContainerResourceDetector" description: | Enable the container resource detector, which populates container.* attributes. + defaultBehavior: ignore host: $ref: "#/$defs/ExperimentalHostResourceDetector" description: | Enable the host resource detector, which populates host.* and os.* attributes. + defaultBehavior: ignore process: $ref: "#/$defs/ExperimentalProcessResourceDetector" description: | Enable the process resource detector, which populates process.* attributes. + defaultBehavior: ignore service: $ref: "#/$defs/ExperimentalServiceResourceDetector" description: | Enable the service detector, which populates service.name based on the OTEL_SERVICE_NAME environment variable and service.instance.id. + defaultBehavior: ignore isSdkExtensionPlugin: true ExperimentalContainerResourceDetector: type: diff --git a/schema/tracer_provider.yaml b/schema/tracer_provider.yaml index 0163ac1d..289f54c0 100644 --- a/schema/tracer_provider.yaml +++ b/schema/tracer_provider.yaml @@ -10,15 +10,17 @@ properties: limits: $ref: "#/$defs/SpanLimits" description: Configure span limits. See also attribute_limits. + defaultBehavior: default values as described in SpanLimits are used sampler: $ref: "#/$defs/Sampler" description: | Configure the sampler. - If omitted, parent based sampler with a root of always_on is used. + defaultBehavior: parent based sampler with a root of always_on is used tracer_configurator/development: $ref: "#/$defs/ExperimentalTracerConfigurator" description: | Configure tracers. + defaultBehavior: all tracers use default values as described in ExperimentalTracerConfig required: - processors $defs: @@ -34,7 +36,7 @@ $defs: description: | Configure delay interval (in milliseconds) between two consecutive exports. Value must be non-negative. - If omitted or null, 5000 is used. + defaultBehavior: 5000 is used export_timeout: type: - integer @@ -43,7 +45,7 @@ $defs: description: | Configure maximum allowed time (in milliseconds) to export data. Value must be non-negative. A value of 0 indicates no limit (infinity). - If omitted or null, 30000 is used. + defaultBehavior: 30000 is used max_queue_size: type: - integer @@ -51,7 +53,7 @@ $defs: exclusiveMinimum: 0 description: | Configure maximum queue size. Value must be positive. - If omitted or null, 2048 is used. + defaultBehavior: 2048 is used max_export_batch_size: type: - integer @@ -59,7 +61,7 @@ $defs: exclusiveMinimum: 0 description: | Configure maximum batch size. Value must be positive. - If omitted or null, 512 is used. + defaultBehavior: 512 is used exporter: $ref: "#/$defs/SpanExporter" description: Configure exporter. @@ -77,24 +79,31 @@ $defs: always_off: $ref: "#/$defs/AlwaysOffSampler" description: Configure sampler to be always_off. + defaultBehavior: ignore always_on: $ref: "#/$defs/AlwaysOnSampler" description: Configure sampler to be always_on. + defaultBehavior: ignore composite/development: $ref: "#/$defs/ExperimentalComposableSampler" description: Configure sampler to be composite. + defaultBehavior: v jaeger_remote/development: $ref: "#/$defs/ExperimentalJaegerRemoteSampler" - description: TODO + description: Configure sampler to be jaeger_remote. + defaultBehavior: ignore parent_based: $ref: "#/$defs/ParentBasedSampler" description: Configure sampler to be parent_based. + defaultBehavior: ignore probability/development: $ref: "#/$defs/ExperimentalProbabilitySampler" description: Configure sampler to be probability. + defaultBehavior: ignore trace_id_ratio_based: $ref: "#/$defs/TraceIdRatioBasedSampler" description: Configure sampler to be trace_id_ratio_based. + defaultBehavior: ignore isSdkExtensionPlugin: true AlwaysOffSampler: type: @@ -115,17 +124,20 @@ $defs: endpoint: type: - string - - "null" - description: TODO + description: Configure the endpoint of the jaeger remote sampling service. interval: type: - integer - "null" minimum: 0 - description: TODO + description: Configure the polling interval (in milliseconds) to fetch from the remote sampling service. + defaultBehavior: 60000 is used initial_sampler: $ref: "#/$defs/Sampler" - description: TODO + description: Configure the initial sampler used before first configuration is fetched. + required: + - endpoint + - initial_sampler ParentBasedSampler: type: - object @@ -136,27 +148,27 @@ $defs: $ref: "#/$defs/Sampler" description: | Configure root sampler. - If omitted or null, always_on is used. + defaultBehavior: always_on is used remote_parent_sampled: $ref: "#/$defs/Sampler" description: | Configure remote_parent_sampled sampler. - If omitted or null, always_on is used. + defaultBehavior: always_on is used remote_parent_not_sampled: $ref: "#/$defs/Sampler" description: | Configure remote_parent_not_sampled sampler. - If omitted or null, always_off is used. + defaultBehavior: always_off is used local_parent_sampled: $ref: "#/$defs/Sampler" description: | Configure local_parent_sampled sampler. - If omitted or null, always_on is used. + defaultBehavior: always_on is used local_parent_not_sampled: $ref: "#/$defs/Sampler" description: | Configure local_parent_not_sampled sampler. - If omitted or null, always_off is used. + defaultBehavior: always_off is used ExperimentalProbabilitySampler: type: - object @@ -171,7 +183,7 @@ $defs: maximum: 1 description: | Configure ratio. - If omitted or null, 1.0 is used. + defaultBehavior: 1.0 is used TraceIdRatioBasedSampler: type: - object @@ -186,7 +198,7 @@ $defs: maximum: 1 description: | Configure trace_id_ratio. - If omitted or null, 1.0 is used. + defaultBehavior: 1.0 is used ExperimentalComposableAlwaysOffSampler: type: - object @@ -206,18 +218,23 @@ $defs: root: $ref: "#/$defs/ExperimentalComposableSampler" description: Configures the sampler for spans with no parent. + defaultBehavior: ignore remote_parent_sampled: $ref: "#/$defs/ExperimentalComposableSampler" description: Configures the sampler for spans with a remote parent that is sampled. + defaultBehavior: ignore remote_parent_not_sampled: $ref: "#/$defs/ExperimentalComposableSampler" description: Configures the sampler for spans with a remote parent that is not sampled. + defaultBehavior: ignore local_parent_sampled: $ref: "#/$defs/ExperimentalComposableSampler" description: Configures the sampler for spans with a local parent that is sampled. + defaultBehavior: ignore local_parent_not_sampled: $ref: "#/$defs/ExperimentalComposableSampler" description: Configures the sampler for spans with a local parent that is not sampled. + defaultBehavior: ignore ExperimentalComposableProbabilitySampler: type: - object @@ -232,7 +249,7 @@ $defs: maximum: 1 description: | Configure ratio. - If omitted or null, 1.0 is used. + defaultBehavior: 1.0 is used ExperimentalComposableSampler: type: object additionalProperties: @@ -245,15 +262,19 @@ $defs: always_off: $ref: "#/$defs/ExperimentalComposableAlwaysOffSampler" description: Configure sampler to be always_off. + defaultBehavior: ignore always_on: $ref: "#/$defs/ExperimentalComposableAlwaysOnSampler" description: Configure sampler to be always_on. + defaultBehavior: ignore parent_based: $ref: "#/$defs/ExperimentalComposableParentBasedSampler" description: Configure sampler to be parent_based. + defaultBehavior: ignore probability: $ref: "#/$defs/ExperimentalComposableProbabilitySampler" description: Configure sampler to be probability. + defaultBehavior: ignore SimpleSpanProcessor: type: object additionalProperties: false @@ -275,19 +296,24 @@ $defs: otlp_http: $ref: common.yaml#/$defs/OtlpHttpExporter description: Configure exporter to be OTLP with HTTP transport. + defaultBehavior: ignore otlp_grpc: $ref: common.yaml#/$defs/OtlpGrpcExporter description: Configure exporter to be OTLP with gRPC transport. + defaultBehavior: ignore otlp_file/development: $ref: common.yaml#/$defs/ExperimentalOtlpFileExporter description: | Configure exporter to be OTLP with file transport. + defaultBehavior: ignore console: $ref: common.yaml#/$defs/ConsoleExporter description: Configure exporter to be console. + defaultBehavior: ignore zipkin: $ref: "#/$defs/ZipkinSpanExporter" description: Configure exporter to be zipkin. + defaultBehavior: ignore isSdkExtensionPlugin: true SpanLimits: type: object @@ -301,7 +327,7 @@ $defs: description: | Configure max attribute value size. Overrides .attribute_limits.attribute_value_length_limit. Value must be non-negative. - If omitted or null, there is no limit. + defaultBehavior: there is no limit attribute_count_limit: type: - integer @@ -310,7 +336,7 @@ $defs: description: | Configure max attribute count. Overrides .attribute_limits.attribute_count_limit. Value must be non-negative. - If omitted or null, 128 is used. + defaultBehavior: 128 is used event_count_limit: type: - integer @@ -319,7 +345,7 @@ $defs: description: | Configure max span event count. Value must be non-negative. - If omitted or null, 128 is used. + defaultBehavior: 128 is used link_count_limit: type: - integer @@ -328,7 +354,7 @@ $defs: description: | Configure max span link count. Value must be non-negative. - If omitted or null, 128 is used. + defaultBehavior: 128 is used event_attribute_count_limit: type: - integer @@ -337,7 +363,7 @@ $defs: description: | Configure max attributes per span event. Value must be non-negative. - If omitted or null, 128 is used. + defaultBehavior: 128 is used link_attribute_count_limit: type: - integer @@ -346,7 +372,7 @@ $defs: description: | Configure max attributes per span link. Value must be non-negative. - If omitted or null, 128 is used. + defaultBehavior: 128 is used SpanProcessor: type: object additionalProperties: @@ -359,9 +385,11 @@ $defs: batch: $ref: "#/$defs/BatchSpanProcessor" description: Configure a batch span processor. + defaultBehavior: ignore simple: $ref: "#/$defs/SimpleSpanProcessor" description: Configure a simple span processor. + defaultBehavior: ignore isSdkExtensionPlugin: true ZipkinSpanExporter: type: @@ -375,7 +403,7 @@ $defs: - "null" description: | Configure endpoint. - If omitted or null, http://localhost:9411/api/v2/spans is used. + defaultBehavior: http://localhost:9411/api/v2/spans is used timeout: type: - integer @@ -384,7 +412,7 @@ $defs: description: | Configure max time (in milliseconds) to wait for each export. Value must be non-negative. A value of 0 indicates indefinite. - If omitted or null, 10000 is used. + defaultBehavior: 10000 is used ExperimentalTracerConfigurator: type: - object @@ -393,12 +421,14 @@ $defs: default_config: $ref: "#/$defs/ExperimentalTracerConfig" description: Configure the default tracer config used there is no matching entry in .tracer_configurator/development.tracers. + defaultBehavior: unmatched .tracers use default values as described in ExperimentalTracerConfig tracers: type: array minItems: 1 items: $ref: "#/$defs/ExperimentalTracerMatcherAndConfig" description: Configure tracers. + defaultBehavior: all tracers use .default_config ExperimentalTracerMatcherAndConfig: type: - object @@ -427,3 +457,4 @@ $defs: type: - boolean description: Configure if the tracer is enabled or not. + defaultBehavior: false is used diff --git a/scripts/compile-schema.js b/scripts/compile-schema.js index 0c732cfd..238a61ee 100644 --- a/scripts/compile-schema.js +++ b/scripts/compile-schema.js @@ -12,6 +12,7 @@ sourceTypes.forEach(sourceSchemaType => { allEnumValuesShouldHaveDescriptions(sourceSchemaType, messages); sdkExtensionPluginSchema(sourceSchemaType, messages); noSubschemas(sourceSchemaType, messages); + optionalPropertiesHaveDefaultBehavior(sourceSchemaType, messages); }); if (messages.length > 0) { messages.forEach(message => console.log(message)); @@ -26,31 +27,14 @@ sourceTypes.sort((a, b) => a.type.localeCompare(b.type)); const defs = {}; sourceTypes.filter(sourceSchemaType => sourceSchemaType.type !== rootTypeName) .forEach(sourceSchemaType => { - // Clone schema to avoid modifying original - const schema = JSON.parse(JSON.stringify(sourceSchemaType.schema)); - - // Replace cross-file refs to resolve refs from defs in local file - const properties = schema.properties; - if (properties) { - Object.values(properties).forEach(replaceCrossFileRefs); - } - - // Strip away defs from top level schemas - delete schema['$defs']; - - // Strip extra source meta data - delete schema['enumDescriptions']; - delete schema['isSdkExtensionPlugin']; - - defs[sourceSchemaType.type] = schema; + defs[sourceSchemaType.type] = prepareSchemaForOutput(sourceSchemaType); }); const rootType = sourceTypes.find(sourceSchemaType => sourceSchemaType.type === rootTypeName); if (!rootType) { throw new Error(`Root type ${rootTypeName} not found in source schema.`); } -const rootTypeSchema = JSON.parse(JSON.stringify(rootType.schema)); -delete rootTypeSchema['$defs']; +const rootTypeSchema = prepareSchemaForOutput(rootType); const output = { "$id": "https://opentelemetry.io/otelconfig/opentelemetry_configuration.json", @@ -63,18 +47,69 @@ fs.writeFileSync(schemaPath, JSON.stringify(output, null, 2)); // Helper functions -function replaceCrossFileRefs(propertySchema) { - const ref = propertySchema['$ref']; - if (ref) { - propertySchema['$ref'] = ref.substring(ref.indexOf('#')); +function prepareSchemaForOutput(sourceSchemaType) { + const schema = JSON.parse(JSON.stringify(sourceSchemaType.schema)); + + delete schema['$defs']; + + stripMetadata(schema); + replaceCrossFileRefs(schema); + enrichDescriptions(sourceSchemaType, schema); + + return schema; +} + +function stripMetadata(schema) { + delete schema['enumDescriptions']; + delete schema['isSdkExtensionPlugin']; + + const properties = schema.properties; + if (!properties) { + return; } - const items = propertySchema['items']; - if (items) { - const itemsRef = items['$ref']; - if (itemsRef) { - items['$ref'] = itemsRef.substring(itemsRef.indexOf('#')); + Object.values(properties).forEach(propertySchema => { + delete propertySchema['defaultBehavior']; + delete propertySchema['nullBehavior']; + }); +} + +function replaceCrossFileRefs(schema) { + const properties = schema.properties; + if (!properties) { + return; + } + Object.values(properties).forEach(propertySchema => { + const ref = propertySchema['$ref']; + if (ref) { + propertySchema['$ref'] = ref.substring(ref.indexOf('#')); + } + const items = propertySchema['items']; + if (items) { + const itemsRef = items['$ref']; + if (itemsRef) { + items['$ref'] = itemsRef.substring(itemsRef.indexOf('#')); + } } + }); +} + +function enrichDescriptions(sourceSchemaType, schema) { + const properties = schema.properties; + if (!properties) { + return; } + 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'; + } + description += sourceProperty.formatDefaultAndNullBehavior(); + if (!description.endsWith('\n')) { + description += '\n'; + } + propertySchema['description'] = description; + }); } // Validation functions @@ -145,3 +180,30 @@ function noSubschemas(sourceSchemaType, messages) { }); }); } + +function optionalPropertiesHaveDefaultBehavior(sourceSchemaType, messages) { + if (sourceSchemaType.isEnumType()) { + return; + } + const required = sourceSchemaType.schema['required'] || []; + // Checks for optional properties + sourceSchemaType.properties + .filter(property => !required.includes(property.property) && !property.schema['defaultBehavior']) + .forEach(property => { + messages.push(`Please add 'defaultBehavior' to optional property ${sourceSchemaType.type}.${property.property}.`); + }); + // Checks for required properties + sourceSchemaType.properties + .filter(property => required.includes(property.property)) + .forEach(property => { + if (property.schema['defaultBehavior']) { + messages.push(`Please remove 'defaultBehavior' from required property ${sourceSchemaType.type}.${property.property}.`); + } + if (property.isNullable && !property.schema['nullBehavior']) { + messages.push(`Please add 'nullBehavior' to required nullable property ${sourceSchemaType.type}.${property.property}.`); + } + if (!property.isNullable && property.schema['nullBehavior']) { + messages.push(`Please remove 'nullBehavior' from required property ${sourceSchemaType.type}.${property.property}.`); + } + }); +} diff --git a/scripts/generate-markdown.js b/scripts/generate-markdown.js index a4cd365c..218b1189 100644 --- a/scripts/generate-markdown.js +++ b/scripts/generate-markdown.js @@ -87,8 +87,8 @@ function writeType(sourceSchemaType) { output.push("No properties.\n\n"); } else { // Property type and description table - output.push(`| Property | Type | Required? | Constraints | Description |\n`); - output.push("|---|---|---|---|---|\n"); + output.push(`| Property | Type | Required? | Default and Null Behavior | Constraints | Description |\n`); + output.push("|---|---|---|---|---|---|\n"); properties.forEach(sourceSchemaProperty => { let formattedProperty = `\`${sourceSchemaProperty.property}\`` if (isExperimentalProperty(sourceSchemaProperty.property)) { @@ -96,13 +96,14 @@ function writeType(sourceSchemaType) { } const formattedPropertyType = formatPropertyType(sourceSchemaProperty, sourceTypesByType); const isRequired = required !== undefined && required.includes(sourceSchemaProperty.property); + const formattedDefaultAndNullBehavior = sourceSchemaProperty.formatDefaultAndNullBehavior(); let formattedConstraints = resolveAndFormatConstraints(sourceSchemaProperty.schema, '
'); if (formattedConstraints.length === 0) { formattedConstraints = 'No constraints.'; } const formattedDescription = sourceSchemaProperty.schema.description.split("\n").join("
"); - output.push(`| ${formattedProperty} | ${formattedPropertyType} | \`${isRequired}\` | ${formattedConstraints} | ${formattedDescription} |\n`); + output.push(`| ${formattedProperty} | ${formattedPropertyType} | \`${isRequired}\` | ${formattedDefaultAndNullBehavior} | ${formattedConstraints} | ${formattedDescription} |\n`); }); output.push('\n'); } diff --git a/scripts/source-schema.js b/scripts/source-schema.js index 9264fd0b..2586f6cf 100644 --- a/scripts/source-schema.js +++ b/scripts/source-schema.js @@ -142,6 +142,7 @@ export class SourceSchemaProperty { types; isSeq; isRequired; + isNullable; schema; constructor(property, types, isSeq, isRequired, schema) { @@ -149,8 +150,28 @@ export class SourceSchemaProperty { this.types = types; this.isSeq = isSeq; this.isRequired = isRequired; + this.isNullable = types.includes('null'); this.schema = schema; } + + formatDefaultAndNullBehavior() { + const defaultBehavior = this.schema['defaultBehavior']; + const nullBehavior = this.schema['nullBehavior']; + + if (this.isRequired) { + if (!this.isNullable) { + return 'Property is required and must be non-null.'; + } + return `Property must be present, but if null ${nullBehavior}.`; + } + if (!nullBehavior) { + if (this.isNullable) { + return `If omitted or null, ${defaultBehavior}.`; + } + return `If omitted, ${defaultBehavior}.`; + } + return `If omitted, ${defaultBehavior}. If present and null, ${nullBehavior}.`; + } } export class SourceSchemaType {