@intentius/chant-lexicon-otel 0.124.46 → 0.124.49
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/build/capability-plugin.d.ts +10 -0
- package/dist/build/capability-plugin.d.ts.map +1 -0
- package/dist/build/capability-plugin.js +19 -0
- package/dist/build/ocb-build.d.ts +38 -0
- package/dist/build/ocb-build.d.ts.map +1 -0
- package/dist/build/ocb-build.js +49 -0
- package/dist/clickhouse-tables.d.ts +73 -0
- package/dist/clickhouse-tables.d.ts.map +1 -0
- package/dist/clickhouse-tables.js +199 -0
- package/dist/codegen/docs.d.ts.map +1 -1
- package/dist/codegen/docs.js +4 -2
- package/dist/codegen/generate.d.ts +29 -10
- package/dist/codegen/generate.d.ts.map +1 -1
- package/dist/codegen/generate.js +82 -17
- package/dist/components/common.d.ts +3 -1
- package/dist/components/common.d.ts.map +1 -1
- package/dist/components/common.js +2 -0
- package/dist/components/connectors.d.ts +25 -90
- package/dist/components/connectors.d.ts.map +1 -1
- package/dist/components/connectors.js +3 -0
- package/dist/components/exporters.d.ts +78 -34
- package/dist/components/exporters.d.ts.map +1 -1
- package/dist/components/exporters.js +26 -1
- package/dist/components/extensions.d.ts +16 -33
- package/dist/components/extensions.d.ts.map +1 -1
- package/dist/components/filtering.d.ts +13 -60
- package/dist/components/filtering.d.ts.map +1 -1
- package/dist/components/k8s-receivers.d.ts +5 -53
- package/dist/components/k8s-receivers.d.ts.map +1 -1
- package/dist/components/overlay.d.ts +25 -0
- package/dist/components/overlay.d.ts.map +1 -0
- package/dist/components/overlay.js +19 -0
- package/dist/components/processors.d.ts +18 -79
- package/dist/components/processors.d.ts.map +1 -1
- package/dist/components/receivers.d.ts +17 -71
- package/dist/components/receivers.d.ts.map +1 -1
- package/dist/components/receivers.js +3 -1
- package/dist/components/sampling.d.ts +19 -35
- package/dist/components/sampling.d.ts.map +1 -1
- package/dist/config-hygiene.d.ts +10 -8
- package/dist/config-hygiene.d.ts.map +1 -1
- package/dist/config-hygiene.js +36 -13
- package/dist/coverage.d.ts +50 -0
- package/dist/coverage.d.ts.map +1 -0
- package/dist/coverage.js +92 -0
- package/dist/define.d.ts +8 -5
- package/dist/define.d.ts.map +1 -1
- package/dist/define.js +10 -6
- package/dist/distribution.d.ts +125 -0
- package/dist/distribution.d.ts.map +1 -0
- package/dist/distribution.js +227 -0
- package/dist/generated/index.d.ts +4234 -0
- package/dist/generated/index.d.ts.map +1 -0
- package/dist/generated/index.js +23 -0
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -1
- package/dist/init-templates.js +2 -2
- package/dist/integrity.json +11 -9
- package/dist/lint/audit-catalog.d.ts +3 -0
- package/dist/lint/audit-catalog.d.ts.map +1 -1
- package/dist/lint/audit-catalog.js +5 -0
- package/dist/lint/post-synth/index.d.ts.map +1 -1
- package/dist/lint/post-synth/index.js +4 -0
- package/dist/lint/post-synth/otel-helpers.d.ts +2 -1
- package/dist/lint/post-synth/otel-helpers.d.ts.map +1 -1
- package/dist/lint/post-synth/otel-helpers.js +1 -1
- package/dist/lint/post-synth/otel119.d.ts +1 -1
- package/dist/lint/post-synth/otel119.js +1 -1
- package/dist/lint/post-synth/otel125.d.ts +1 -1
- package/dist/lint/post-synth/otel125.js +1 -1
- package/dist/lint/post-synth/otel126.d.ts +1 -1
- package/dist/lint/post-synth/otel126.js +1 -1
- package/dist/lint/post-synth/otel127.d.ts +1 -1
- package/dist/lint/post-synth/otel127.js +1 -1
- package/dist/lint/post-synth/otel128.d.ts +8 -0
- package/dist/lint/post-synth/otel128.d.ts.map +1 -0
- package/dist/lint/post-synth/otel128.js +17 -0
- package/dist/lint/post-synth/otel129.d.ts +15 -0
- package/dist/lint/post-synth/otel129.d.ts.map +1 -0
- package/dist/lint/post-synth/otel129.js +92 -0
- package/dist/lsp/completions.d.ts +10 -1
- package/dist/lsp/completions.d.ts.map +1 -1
- package/dist/lsp/completions.js +29 -1
- package/dist/lsp/hover.d.ts +5 -1
- package/dist/lsp/hover.d.ts.map +1 -1
- package/dist/lsp/hover.js +16 -3
- package/dist/lsp/properties.d.ts +34 -0
- package/dist/lsp/properties.d.ts.map +1 -0
- package/dist/lsp/properties.js +135 -0
- package/dist/manifest.json +1 -1
- package/dist/meta.json +5 -0
- package/dist/metric-names.d.ts +36 -8
- package/dist/metric-names.d.ts.map +1 -1
- package/dist/metric-names.js +42 -9
- package/dist/model.d.ts +1 -1
- package/dist/model.js +1 -1
- package/dist/okf/index.md +3 -0
- package/dist/okf/rules/OTEL128.md +11 -0
- package/dist/okf/rules/OTEL129.md +11 -0
- package/dist/okf/types/ClickHouseExporter.md +9 -0
- package/dist/op/activities/collector-audit.d.ts +18 -6
- package/dist/op/activities/collector-audit.d.ts.map +1 -1
- package/dist/op/activities/collector-audit.js +37 -21
- package/dist/plugin.d.ts.map +1 -1
- package/dist/plugin.js +51 -8
- package/dist/rules/otel-helpers.ts +1 -1
- package/dist/rules/otel119.ts +1 -1
- package/dist/rules/otel125.ts +1 -1
- package/dist/rules/otel126.ts +1 -1
- package/dist/rules/otel127.ts +1 -1
- package/dist/rules/otel128.ts +22 -0
- package/dist/rules/otel129.ts +99 -0
- package/dist/serializer.d.ts +3 -0
- package/dist/serializer.d.ts.map +1 -1
- package/dist/serializer.js +12 -2
- package/dist/spec/builtins.d.ts +17 -0
- package/dist/spec/builtins.d.ts.map +1 -0
- package/dist/spec/builtins.js +45 -0
- package/dist/spec/fetch.d.ts +120 -0
- package/dist/spec/fetch.d.ts.map +1 -0
- package/dist/spec/fetch.js +282 -0
- package/dist/spec/parse.d.ts +77 -0
- package/dist/spec/parse.d.ts.map +1 -0
- package/dist/spec/parse.js +337 -0
- package/dist/spec/pin.d.ts +82 -0
- package/dist/spec/pin.d.ts.map +1 -0
- package/dist/spec/pin.js +126 -0
- package/dist/spec/snapshot-cli.d.ts +13 -0
- package/dist/spec/snapshot-cli.d.ts.map +1 -0
- package/dist/spec/snapshot-cli.js +31 -0
- package/dist/spec/snapshot.d.ts +9 -0
- package/dist/spec/snapshot.d.ts.map +1 -0
- package/dist/spec/snapshot.js +14 -0
- package/dist/types/index.d.ts +3 -2
- package/dist/validate-config.d.ts +1 -1
- package/dist/validate-config.d.ts.map +1 -1
- package/dist/validate.d.ts.map +1 -1
- package/dist/validate.js +1 -0
- package/dist/workspace-links.d.ts +25 -0
- package/dist/workspace-links.d.ts.map +1 -0
- package/dist/workspace-links.js +49 -0
- package/package.json +3 -2
- package/src/build/capability-plugin.ts +30 -0
- package/src/build/ocb-build.ts +73 -0
- package/src/clickhouse-exporter.e2e.test.ts +208 -0
- package/src/clickhouse-tables.test.ts +216 -0
- package/src/clickhouse-tables.ts +223 -0
- package/src/codegen/docs.ts +4 -2
- package/src/codegen/generate.ts +95 -19
- package/src/components/common.ts +4 -2
- package/src/components/connectors.ts +30 -77
- package/src/components/exporters.ts +128 -61
- package/src/components/extensions.ts +22 -36
- package/src/components/filtering.ts +17 -58
- package/src/components/k8s-receivers.test.ts +1 -1
- package/src/components/k8s-receivers.ts +3 -45
- package/src/components/overlay.ts +24 -0
- package/src/components/processors.ts +18 -63
- package/src/components/receivers.ts +20 -60
- package/src/components/sampling.ts +24 -37
- package/src/config-hygiene.ts +36 -13
- package/src/coverage.test.ts +37 -0
- package/src/coverage.ts +121 -0
- package/src/define.test.ts +2 -0
- package/src/define.ts +10 -6
- package/src/distribution.test.ts +250 -0
- package/src/distribution.ts +305 -0
- package/src/generated/index.ts +4576 -0
- package/src/generated/lexicon-otel.json +5 -0
- package/src/generated/properties.json +1 -0
- package/src/import/roundtrip.test.ts +16 -0
- package/src/import/testdata/clickhouse.yaml +37 -0
- package/src/import/testdata/fixtures.ts +17 -2
- package/src/import/testdata/upstream/clickhouse-exporter.yaml +60 -0
- package/src/index.ts +69 -0
- package/src/init-templates.ts +2 -2
- package/src/lint/audit-catalog.ts +15 -0
- package/src/lint/post-synth/index.ts +4 -0
- package/src/lint/post-synth/otel-helpers.ts +1 -1
- package/src/lint/post-synth/otel119.ts +1 -1
- package/src/lint/post-synth/otel125.ts +1 -1
- package/src/lint/post-synth/otel126.ts +1 -1
- package/src/lint/post-synth/otel127.ts +1 -1
- package/src/lint/post-synth/otel128.ts +22 -0
- package/src/lint/post-synth/otel129.ts +99 -0
- package/src/lsp/completions.ts +30 -1
- package/src/lsp/hover.ts +14 -3
- package/src/lsp/properties.test.ts +72 -0
- package/src/lsp/properties.ts +141 -0
- package/src/metric-names.test.ts +11 -0
- package/src/metric-names.ts +64 -16
- package/src/model.ts +1 -1
- package/src/op/activities/collector-audit.test.ts +29 -22
- package/src/op/activities/collector-audit.ts +38 -18
- package/src/plugin.test.ts +2 -0
- package/src/plugin.ts +57 -6
- package/src/serializer.ts +11 -2
- package/src/spec/builtins.ts +56 -0
- package/src/spec/fetch.ts +332 -0
- package/src/spec/otel-schemas.snapshot.json +13932 -0
- package/src/spec/parse.ts +364 -0
- package/src/spec/pin.ts +155 -0
- package/src/spec/snapshot-cli.ts +32 -0
- package/src/spec/snapshot.ts +19 -0
- package/src/spec/spec.test.ts +144 -0
- package/src/validate-config.ts +4 -3
- package/src/validate.ts +1 -0
- package/src/workspace-links.e2e.test.ts +91 -0
- package/src/workspace-links.ts +50 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"AttributesProcessor":{"exclude":{"type":"object","description":"Exclude specifies when this processor will not be applied to the input data which match the specified properties. Note: The `exclude` properties are checked after the `include` properties, if they exist, are checked. If `include` isn't specified, the `exclude` properties are checked against all input data. This is an optional field. If neither `include` and `exclude` are set, all input data is processed. If `exclude` is set and `include` isn't set, then all the input data that does not match the properties in this structure are processed.","properties":{"match_type":{"type":"string","description":"MatchType describes the type of pattern matching a FilterSet uses to filter strings."},"regexp":{"type":"object","description":"Config represents the options for a NewFilterSet.","properties":{"cacheenabled":{"type":"boolean","description":"CacheEnabled determines whether match results are LRU cached to make subsequent matches faster. Cache size is unlimited unless CacheMaxNumEntries is also specified."},"cachemaxnumentries":{"type":"number","description":"CacheMaxNumEntries is the max number of entries of the LRU cache that stores match results. CacheMaxNumEntries is ignored if CacheEnabled is false."}}},"attributes":{"type":"object[]","description":"Attributes specifies the list of attributes to match against. All of these attributes must match for a match to occur. This is an optional field.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"libraries":{"type":"object[]","description":"Libraries specify the list of items to match the implementation library against. A match occurs if the span's implementation library matches at least one item in this list. This is an optional field.","properties":{"name":{"type":"string"},"version":{"type":"string","description":"version match expected actual match nil <blank> yes nil 1 yes <blank> <blank> yes <blank> 1 no 1 <blank> no 1 1 yes"}}},"log_bodies":{"type":"string[]","description":"LogBodies is a list of strings that the LogRecord's body field must match against."},"log_severity_number":{"type":"object","description":"LogSeverityNumber defines how to match against a log record's SeverityNumber, if defined.","properties":{"match_undefined":{"type":"boolean","description":"MatchUndefined controls whether logs with \"undefined\" severity matches. If this is true, entries with undefined severity will match."},"min":{"type":"number | string","description":"Min is the lowest severity that may be matched. e.g. if this is plog.SeverityNumberInfo, INFO, WARN, ERROR, and FATAL logs will match."}}},"log_severity_texts":{"type":"string[]","description":"LogSeverityTexts is a list of strings that the LogRecord's severity text field must match against."},"metric_names":{"type":"string[]","description":"MetricNames is a list of strings to match metric name against. A match occurs if metric name matches at least one item in the list. This field is optional."},"resources":{"type":"object[]","description":"Resources specify the list of items to match the resources against. A match occurs if the data's resources match at least one item in this list. This is an optional field.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"services":{"type":"string[]","description":"Services specify the list of items to match service name against. A match occurs if the span's service name matches at least one item in this list. This is an optional field."},"span_kinds":{"type":"string[]","description":"SpanKinds specify the list of items to match the span kind against. A match occurs if the span's span kind matches at least one item in this list. This is an optional field"},"span_names":{"type":"string[]","description":"SpanNames specify the list of items to match span name against. A match occurs if the span name matches at least one item in this list. This is an optional field."}}},"include":{"type":"object","description":"Include specifies the set of input data properties that must be present in order for this processor to apply to it. Note: If `exclude` is specified, the input data is compared against those properties after the `include` properties. This is an optional field. If neither `include` and `exclude` are set, all input data are processed. If `include` is set and `exclude` isn't set, then all input data matching the properties in this structure are processed.","properties":{"match_type":{"type":"string","description":"MatchType describes the type of pattern matching a FilterSet uses to filter strings."},"regexp":{"type":"object","description":"Config represents the options for a NewFilterSet.","properties":{"cacheenabled":{"type":"boolean","description":"CacheEnabled determines whether match results are LRU cached to make subsequent matches faster. Cache size is unlimited unless CacheMaxNumEntries is also specified."},"cachemaxnumentries":{"type":"number","description":"CacheMaxNumEntries is the max number of entries of the LRU cache that stores match results. CacheMaxNumEntries is ignored if CacheEnabled is false."}}},"attributes":{"type":"object[]","description":"Attributes specifies the list of attributes to match against. All of these attributes must match for a match to occur. This is an optional field.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"libraries":{"type":"object[]","description":"Libraries specify the list of items to match the implementation library against. A match occurs if the span's implementation library matches at least one item in this list. This is an optional field.","properties":{"name":{"type":"string"},"version":{"type":"string","description":"version match expected actual match nil <blank> yes nil 1 yes <blank> <blank> yes <blank> 1 no 1 <blank> no 1 1 yes"}}},"log_bodies":{"type":"string[]","description":"LogBodies is a list of strings that the LogRecord's body field must match against."},"log_severity_number":{"type":"object","description":"LogSeverityNumber defines how to match against a log record's SeverityNumber, if defined.","properties":{"match_undefined":{"type":"boolean","description":"MatchUndefined controls whether logs with \"undefined\" severity matches. If this is true, entries with undefined severity will match."},"min":{"type":"number | string","description":"Min is the lowest severity that may be matched. e.g. if this is plog.SeverityNumberInfo, INFO, WARN, ERROR, and FATAL logs will match."}}},"log_severity_texts":{"type":"string[]","description":"LogSeverityTexts is a list of strings that the LogRecord's severity text field must match against."},"metric_names":{"type":"string[]","description":"MetricNames is a list of strings to match metric name against. A match occurs if metric name matches at least one item in the list. This field is optional."},"resources":{"type":"object[]","description":"Resources specify the list of items to match the resources against. A match occurs if the data's resources match at least one item in this list. This is an optional field.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"services":{"type":"string[]","description":"Services specify the list of items to match service name against. A match occurs if the span's service name matches at least one item in this list. This is an optional field."},"span_kinds":{"type":"string[]","description":"SpanKinds specify the list of items to match the span kind against. A match occurs if the span's span kind matches at least one item in this list. This is an optional field"},"span_names":{"type":"string[]","description":"SpanNames specify the list of items to match span name against. A match occurs if the span name matches at least one item in this list. This is an optional field."}}},"actions":{"type":"object[]","description":"Actions specifies the list of attributes to act on. The set of actions are {INSERT, UPDATE, UPSERT, DELETE, HASH, EXTRACT, CONVERT}. This is a required field.","properties":{"action":{"type":"string","description":"Action specifies the type of action to perform. The set of values are {INSERT, UPDATE, UPSERT, DELETE, HASH}. Both lower case and upper case are supported. INSERT - Inserts the key/value to attributes when the key does not exist. No action is applied to attributes where the key already exists. Either Value, FromAttribute or FromContext must be set. UPDATE - Updates an existing key with a value. No action is applied to attributes where the key does not exist. Either Value, FromAttribute or FromContext must be set. UPSERT - Performs insert or update action depending on the attributes containing the key. The key/value is inserted to attributes that did not originally have the key. The key/value is updated for attributes where the key already existed. Either Value, FromAttribute or FromContext must be set. DELETE - Deletes the attribute. If the key doesn't exist, no action is performed. HASH - Calculates the SHA-1 hash of an existing value and overwrites the value with its SHA-1 hash result. If the feature gate `coreinternal.attraction.hash.sha256` is enabled, it uses SHA2-256 instead. EXTRACT - Extracts values using a regular expression rule from the input 'key' to target keys specified in the 'rule'. If a target key already exists, it will be overridden. CONVERT - converts the type of an existing attribute, if convertable This is a required field."},"converted_type":{"type":"string","description":"ConvertedType specifies the target type of an attribute to be converted If the key doesn't exist, no action is performed. If the value cannot be converted, the original value will be left as-is"},"default_value":{"type":"unknown","description":"DefaultValue specifies the value to use if Value/FromAttribute/FromContext doesn't provide a value (e.g., environment variable not set, attribute doesn't exist). Only used with INSERT, UPDATE, and UPSERT actions."},"from_attribute":{"type":"string","description":"FromAttribute specifies the attribute to use to populate the value. If the attribute doesn't exist, no action is performed."},"from_context":{"type":"string","description":"FromContext specifies the context value to use to populate the value. The values would be searched in client.Info.Metadata. If the key doesn't exist, no action is performed. If the key has multiple values the values will be joined with `;` separator."},"key":{"type":"string","description":"Key specifies the attribute to act upon. This is a required field."},"pattern":{"type":"string","description":"A regex pattern must be specified for the action EXTRACT. It uses the attribute specified by `key' to extract values from The target keys are inferred based on the names of the matcher groups provided and the names will be inferred based on the values of the matcher group. Note: All subexpressions must have a name. Note: The value type of the source key must be a string. If it isn't, no extraction will occur."},"value":{"type":"unknown","description":"Value specifies the value to populate for the key. The type of the value is inferred from the configuration."}}}},"BatchProcessor":{"metadata_cardinality_limit":{"type":"number","description":"MetadataCardinalityLimit indicates the maximum number of batcher instances that will be created through a distinct combination of MetadataKeys."},"metadata_keys":{"type":"string[]","description":"MetadataKeys is a list of client.Metadata keys that will be used to form distinct batchers. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error."},"send_batch_max_size":{"type":"number","description":"SendBatchMaxSize is the maximum size of a batch. It must be larger than SendBatchSize. Larger batches are split into smaller units. Default value is 0, that means no maximum size."},"send_batch_size":{"type":"number","description":"SendBatchSize is the size of a batch which after hit, will trigger it to be sent. When this is set to zero, the batch size is ignored and data will be sent immediately subject to only send_batch_max_size."},"timeout":{"type":"duration","description":"Timeout sets the time after which a batch will be sent regardless of size. When this is set to zero, batched data will be sent immediately."}},"ClickHouseExporter":{"timeout":{"type":"duration","description":"Timeout is the timeout for every attempt to send data to the backend. A zero timeout means no timeout."},"async_insert":{"type":"boolean","description":"AsyncInsert if true will enable async inserts. Default is `true`. Ignored if async inserts are configured in the `endpoint` or `connection_params`. Async inserts may still be overridden server-side."},"cluster_name":{"type":"string","description":"ClusterName if set will append `ON CLUSTER` with the provided name when creating tables."},"compress":{"type":"string","description":"Compress controls the compression algorithm. Valid options: `none` (disabled), `zstd`, `lz4` (default), `gzip`, `deflate`, `br`, `true` (lz4)."},"connection_params":{"type":"object","description":"ConnectionParams is the extra connection parameters with map format. for example compression/dial_timeout"},"create_schema":{"type":"boolean","description":"CreateSchema if set to true will run the DDL for creating the database and tables. default is true."},"database":{"type":"string","description":"Database is the database name to export."},"endpoint":{"type":"string","description":"Endpoint is the clickhouse endpoint."},"json":{"type":"boolean","description":"JSON enables the JSON column type for attributes in logs and traces tables. When false (default), Map columns are used. When true, JSON columns are used. ClickHouse v25+ is recommended for reliable JSON support. You may also need to add `enable_json_type=1` to your endpoint or connection_params."},"logs_table_name":{"type":"string","description":"LogsTableName is the table name for logs. default is `otel_logs`."},"metrics_table_name":{"type":"string","description":"MetricsTableName is the table name for metrics. default is `otel_metrics`. Deprecated: MetricsTableName exists for historical compatibility and should not be used. To set the metrics tables name, use the MetricsTables parameter instead.","deprecated":true},"metrics_tables":{"type":"object","description":"MetricsTables defines the table names for metric types.","properties":{"exponential_histogram":{"type":"object","description":"ExponentialHistogram is the table name for exponential histogram metric type. default is `otel_metrics_exponential_histogram`.","properties":{"name":{"type":"string"}}},"gauge":{"type":"object","description":"Gauge is the table name for gauge metric type. default is `otel_metrics_gauge`.","properties":{"name":{"type":"string"}}},"histogram":{"type":"object","description":"Histogram is the table name for histogram metric type. default is `otel_metrics_histogram`.","properties":{"name":{"type":"string"}}},"sum":{"type":"object","description":"Sum is the table name for sum metric type. default is `otel_metrics_sum`.","properties":{"name":{"type":"string"}}},"summary":{"type":"object","description":"Summary is the table name for summary metric type. default is `otel_metrics_summary`.","properties":{"name":{"type":"string"}}}}},"password":{"type":"string","description":"Password is the authentication password."},"profiles_table_name":{"type":"string","description":"ProfilesTableName is the table name for profiles. default is `otel_profiles`."},"retry_on_failure":{"type":"object","description":"BackOffConfig defines configuration for retrying batches in case of export failure. The current supported strategy is exponential backoff.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to not retry sending batches in case of export failure."},"initial_interval":{"type":"duration","description":"InitialInterval the time to wait after the first failure before retrying."},"max_elapsed_time":{"type":"duration","description":"MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a request/batch. Once this value is reached, the data is discarded. If set to 0, the retries are never stopped."},"max_interval":{"type":"duration","description":"MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`."},"multiplier":{"type":"number","description":"Multiplier is the value multiplied by the backoff interval bounds"},"randomization_factor":{"type":"number","description":"RandomizationFactor is a random factor used to calculate next backoffs Randomized interval = RetryInterval * (1 ± RandomizationFactor)"}}},"sending_queue":{"type":"object","description":"Config defines configuration for queueing and batching incoming requests.","properties":{"batch":{"type":"object","description":"BatchConfig it configures how the requests are consumed from the queue and batch together during consumption.","properties":{"flush_timeout":{"type":"duration","description":"FlushTimeout sets the time after which a batch will be sent regardless of its size."},"max_size":{"type":"number","description":"MaxSize defines the configuration for the maximum size of a batch."},"min_size":{"type":"number","description":"MinSize defines the configuration for the minimum size of a batch."},"partition":{"type":"object","description":"Partition defines the partitioning of the batches configuration.","properties":{"cache_size":{"type":"number","description":"CacheSize is the maximum number of active partition batchers kept in the LRU cache when partitioning is enabled. When the limit is reached, the least recently used partition is flushed and removed. Default is 10000. Must be positive."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the duration a partition may stay empty before it is removed. Keep it above the data arrival interval to avoid churning partitions. Default is 90s. Must be positive."},"metadata_keys":{"type":"string[]","description":"MetadataKeys is a list of client.Metadata keys that will be used to partition the data into batches. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error."}}},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by the batch. If not configured, use the same configuration as the queue. It accepts \"requests\", \"items\", or \"bytes\"."}}},"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error."},"enabled":{"type":"boolean","description":"Enabled indicates whether to not enqueue and batch before exporting."},"num_consumers":{"type":"number","description":"NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.)."},"queue_size":{"type":"number","description":"QueueSize represents the maximum data size allowed for concurrent storage and processing."},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by this component. It accepts \"requests\", \"items\", or \"bytes\"."},"storage":{"type":"component id","description":"StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822"},"wait_for_result":{"type":"boolean","description":"WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration."}}},"table_engine":{"type":"object","description":"TableEngine is the table engine to use. default is `MergeTree()`.","properties":{"name":{"type":"string"},"params":{"type":"string"}}},"tls":{"type":"object","description":"TLS is the TLS config for connecting to ClickHouse.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"insecure":{"type":"boolean","description":"In gRPC and HTTP when set to true, this is used to disable the client transport security. See https://godoc.org/google.golang.org/grpc#WithInsecure for gRPC. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional, default false)"},"insecure_skip_verify":{"type":"boolean","description":"InsecureSkipVerify will enable TLS but not verify the certificate."},"server_name_override":{"type":"string","description":"ServerName requested by client for virtual hosting. This sets the ServerName in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"}}},"traces_table_name":{"type":"string","description":"TracesTableName is the table name for traces. default is `otel_traces`."},"ttl":{"type":"duration","description":"TTL is The data time-to-live example 30m, 48h. 0 means no ttl."},"username":{"type":"string","description":"Username is the authentication username."}},"CountConnector":{"datapoints":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"}}},"logs":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"}}},"metrics":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"}}},"profiles":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"}}},"spanevents":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"}}},"spans":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"}}}},"DebugExporter":{"output_paths":{"type":"string[]","description":"OutputPaths is a list of file paths to write logging output to. This option can only be used when use_internal_logger is false. Special strings \"stdout\" and \"stderr\" are interpreted as os.Stdout and os.Stderr respectively. All other values are treated as file paths. If not set, defaults to [\"stdout\"]."},"sampling_initial":{"type":"number","description":"SamplingInitial defines how many samples are initially logged during each second."},"sampling_thereafter":{"type":"number","description":"SamplingThereafter defines the sampling rate after the initial samples are logged."},"sending_queue":{"type":"object","description":"Config defines configuration for queueing and batching incoming requests.","properties":{"batch":{"type":"object","description":"BatchConfig it configures how the requests are consumed from the queue and batch together during consumption.","properties":{"flush_timeout":{"type":"duration","description":"FlushTimeout sets the time after which a batch will be sent regardless of its size."},"max_size":{"type":"number","description":"MaxSize defines the configuration for the maximum size of a batch."},"min_size":{"type":"number","description":"MinSize defines the configuration for the minimum size of a batch."},"partition":{"type":"object","description":"Partition defines the partitioning of the batches configuration.","properties":{"cache_size":{"type":"number","description":"CacheSize is the maximum number of active partition batchers kept in the LRU cache when partitioning is enabled. When the limit is reached, the least recently used partition is flushed and removed. Default is 10000. Must be positive."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the duration a partition may stay empty before it is removed. Keep it above the data arrival interval to avoid churning partitions. Default is 90s. Must be positive."},"metadata_keys":{"type":"string[]","description":"MetadataKeys is a list of client.Metadata keys that will be used to partition the data into batches. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error."}}},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by the batch. If not configured, use the same configuration as the queue. It accepts \"requests\", \"items\", or \"bytes\"."}}},"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error."},"enabled":{"type":"boolean","description":"Enabled indicates whether to not enqueue and batch before exporting."},"num_consumers":{"type":"number","description":"NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.)."},"queue_size":{"type":"number","description":"QueueSize represents the maximum data size allowed for concurrent storage and processing."},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by this component. It accepts \"requests\", \"items\", or \"bytes\"."},"storage":{"type":"component id","description":"StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822"},"wait_for_result":{"type":"boolean","description":"WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration."}}},"use_internal_logger":{"type":"boolean","description":"UseInternalLogger defines whether the exporter sends the output to the collector's internal logger."},"verbosity":{"type":"\"none\" | \"basic\" | \"normal\" | \"detailed\"","description":"Verbosity defines the debug exporter verbosity."}},"DeltaToCumulativeProcessor":{"max_stale":{"type":"duration"},"max_streams":{"type":"number"}},"FileLogReceiver":{"attributes":{"type":"object"},"resource":{"type":"object"},"id":{"type":"string"},"type":{"type":"string"},"output":{"type":"string[]"},"exclude":{"type":"string[]"},"exclude_older_than":{"type":"duration","description":"ExcludeOlderThan allows excluding files whose modification time is older than the specified age."},"include":{"type":"string[]"},"ordering_criteria":{"type":"object","properties":{"group_by":{"type":"string"},"regex":{"type":"string"},"sort_by":{"type":"object[]","properties":{"ascending":{"type":"boolean"},"layout":{"type":"string","description":"Timestamp only"},"location":{"type":"string"},"regex_key":{"type":"string"},"sort_type":{"type":"string"}}},"top_n":{"type":"number","description":"TopN uses a pointer so the matcher can distinguish between \"unset\" and \"explicitly zero\". When sort_by is configured, top_n must be set explicitly: zero means \"match all files\" and a positive value caps the match count."}}},"include_file_name":{"type":"boolean"},"include_file_name_resolved":{"type":"boolean"},"include_file_owner_group_name":{"type":"boolean"},"include_file_owner_name":{"type":"boolean"},"include_file_path":{"type":"boolean"},"include_file_path_resolved":{"type":"boolean"},"include_file_permissions":{"type":"boolean"},"preserve_leading_whitespaces":{"type":"boolean"},"preserve_trailing_whitespaces":{"type":"boolean"},"acquire_fs_lock":{"type":"boolean"},"compression":{"type":"string"},"delete_after_read":{"type":"boolean"},"encoding":{"type":"string"},"file_cache_advise":{"type":"boolean"},"fingerprint_size":{"type":"number | string"},"force_flush_period":{"type":"duration"},"header":{"type":"object","properties":{"metadata_operators":{"type":"unknown[]"},"pattern":{"type":"string"}}},"include_file_record_number":{"type":"boolean"},"include_file_record_offset":{"type":"boolean"},"initial_buffer_size":{"type":"number | string"},"max_batches":{"type":"number"},"max_concurrent_files":{"type":"number"},"max_log_size":{"type":"number | string"},"max_log_size_behavior":{"type":"string"},"multiline":{"type":"object","description":"Config is the configuration for a split func","properties":{"line_end_pattern":{"type":"string"},"line_start_pattern":{"type":"string"},"omit_pattern":{"type":"boolean"}}},"on_truncate":{"type":"string"},"poll_interval":{"type":"duration"},"polls_to_archive":{"type":"number"},"skip_unmodified_files":{"type":"boolean"},"start_at":{"type":"string"},"operators":{"type":"unknown[]"},"retry_on_failure":{"type":"object","description":"Config defines configuration for retrying batches in case of receiving a retryable error from a downstream consumer. If the retryable error doesn't provide a delay, exponential backoff is applied.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to not retry sending logs in case of receiving a retryable error from a downstream consumer. Default is false."},"initial_interval":{"type":"duration","description":"InitialInterval the time to wait after the first failure before retrying. Default value is 1 second."},"max_elapsed_time":{"type":"duration","description":"MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a logs batch to a downstream consumer. Once this value is reached, the data is discarded. It never stops if MaxElapsedTime == 0. Default value is 5 minutes."},"max_interval":{"type":"duration","description":"MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`. Default value is 30 seconds."}}},"storage":{"type":"component id"}},"FilterProcessor":{"error_mode":{"type":"string","description":"ErrorMode determines how the processor reacts to errors that occur while processing an OTTL condition. Valid values are `ignore` and `propagate`. `ignore` means the processor ignores errors returned by conditions and continues on to the next condition. This is the recommended mode. `propagate` means the processor returns the error up the pipeline. This will result in the payload being dropped from the collector. The default value is `ignore`."},"log_conditions":{"type":"unknown[]"},"logs":{"type":"object","description":"Deprecated: use LogConditions instead.","deprecated":true,"properties":{"exclude":{"type":"object","description":"Exclude match properties describe logs that should be excluded from the Collector Service pipeline, all other logs should be included. If both Include and Exclude are specified, Include filtering occurs first.","properties":{"bodies":{"type":"string[]","description":"LogBodies is a list of strings that the LogRecord's body field must match against."},"match_type":{"type":"string","description":"LogMatchType specifies the type of matching desired"},"record_attributes":{"type":"object[]","description":"RecordAttributes defines a list of possible record attributes to match logs against. A match occurs if any record attribute matches at least one expression in this given list.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"resource_attributes":{"type":"object[]","description":"ResourceAttributes defines a list of possible resource attributes to match logs against. A match occurs if any resource attribute matches all expressions in this given list.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"severity_number":{"type":"object","description":"SeverityNumberProperties defines how to match against a log record's SeverityNumber, if defined.","properties":{"match_undefined":{"type":"boolean","description":"MatchUndefined lets logs records with \"unknown\" severity match. If MinSeverity is not set, this field is ignored, as fields are not matched based on severity."},"min":{"type":"string","description":"Min is the minimum severity needed for the log record to match. This corresponds to the short names specified here: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/logs/data-model.md#displaying-severity this field is case-insensitive (\"INFO\" == \"info\")"}}},"severity_texts":{"type":"string[]","description":"SeverityTexts is a list of strings that the LogRecord's severity text field must match against."}}},"include":{"type":"object","description":"Include match properties describe logs that should be included in the Collector Service pipeline, all other logs should be dropped from further processing. If both Include and Exclude are specified, Include filtering occurs first.","properties":{"bodies":{"type":"string[]","description":"LogBodies is a list of strings that the LogRecord's body field must match against."},"match_type":{"type":"string","description":"LogMatchType specifies the type of matching desired"},"record_attributes":{"type":"object[]","description":"RecordAttributes defines a list of possible record attributes to match logs against. A match occurs if any record attribute matches at least one expression in this given list.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"resource_attributes":{"type":"object[]","description":"ResourceAttributes defines a list of possible resource attributes to match logs against. A match occurs if any resource attribute matches all expressions in this given list.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"severity_number":{"type":"object","description":"SeverityNumberProperties defines how to match against a log record's SeverityNumber, if defined.","properties":{"match_undefined":{"type":"boolean","description":"MatchUndefined lets logs records with \"unknown\" severity match. If MinSeverity is not set, this field is ignored, as fields are not matched based on severity."},"min":{"type":"string","description":"Min is the minimum severity needed for the log record to match. This corresponds to the short names specified here: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/logs/data-model.md#displaying-severity this field is case-insensitive (\"INFO\" == \"info\")"}}},"severity_texts":{"type":"string[]","description":"SeverityTexts is a list of strings that the LogRecord's severity text field must match against."}}},"log_record":{"type":"string[]","description":"LogConditions is a list of OTTL conditions for an ottllog context. If any condition resolves to true, the log event will be dropped. Supports `and`, `or`, and `()`"},"resource":{"type":"string[]","description":"ResourceConditions is a list of OTTL conditions for an ottlresource context. If any condition resolves to true, the whole resource will be dropped. Supports `and`, `or`, and `()`"}}},"metric_conditions":{"type":"unknown[]"},"metrics":{"type":"object","description":"Deprecated: use MetricConditions instead.","deprecated":true,"properties":{"datapoint":{"type":"string[]","description":"DataPointConditions is a list of OTTL conditions for an ottldatapoint context. If any condition resolves to true, the datapoint will be dropped. Supports `and`, `or`, and `()`"},"exclude":{"type":"object","description":"Exclude match properties describe metrics that should be excluded from the Collector Service pipeline, all other metrics should be included. If both Include and Exclude are specified, Include filtering occurs first.","properties":{"expressions":{"type":"string[]","description":"Expressions specifies the list of expr expressions to match metrics against. A match occurs if any datapoint in a metric matches at least one expression in this list."},"match_type":{"type":"string","description":"MatchType specifies the type of matching desired"},"metric_names":{"type":"string[]","description":"MetricNames specifies the list of string patterns to match metric names against. A match occurs if the metric name matches at least one string pattern in this list."},"regexp":{"type":"object","description":"RegexpConfig specifies options for the MetricRegexp match type","properties":{"cacheenabled":{"type":"boolean","description":"CacheEnabled determines whether match results are LRU cached to make subsequent matches faster. Cache size is unlimited unless CacheMaxNumEntries is also specified."},"cachemaxnumentries":{"type":"number","description":"CacheMaxNumEntries is the max number of entries of the LRU cache that stores match results. CacheMaxNumEntries is ignored if CacheEnabled is false."}}},"resource_attributes":{"type":"object[]","description":"ResourceAttributes defines a list of possible resource attributes to match metrics against. A match occurs if any resource attribute matches all expressions in this given list.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}}}},"include":{"type":"object","description":"Include match properties describe metrics that should be included in the Collector Service pipeline, all other metrics should be dropped from further processing. If both Include and Exclude are specified, Include filtering occurs first.","properties":{"expressions":{"type":"string[]","description":"Expressions specifies the list of expr expressions to match metrics against. A match occurs if any datapoint in a metric matches at least one expression in this list."},"match_type":{"type":"string","description":"MatchType specifies the type of matching desired"},"metric_names":{"type":"string[]","description":"MetricNames specifies the list of string patterns to match metric names against. A match occurs if the metric name matches at least one string pattern in this list."},"regexp":{"type":"object","description":"RegexpConfig specifies options for the MetricRegexp match type","properties":{"cacheenabled":{"type":"boolean","description":"CacheEnabled determines whether match results are LRU cached to make subsequent matches faster. Cache size is unlimited unless CacheMaxNumEntries is also specified."},"cachemaxnumentries":{"type":"number","description":"CacheMaxNumEntries is the max number of entries of the LRU cache that stores match results. CacheMaxNumEntries is ignored if CacheEnabled is false."}}},"resource_attributes":{"type":"object[]","description":"ResourceAttributes defines a list of possible resource attributes to match metrics against. A match occurs if any resource attribute matches all expressions in this given list.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}}}},"metric":{"type":"string[]","description":"MetricConditions is a list of OTTL conditions for an ottlmetric context. If any condition resolves to true, the metric will be dropped. Supports `and`, `or`, and `()`"},"regexp":{"type":"object","description":"RegexpConfig specifies options for the regexp match type","properties":{"cacheenabled":{"type":"boolean","description":"CacheEnabled determines whether match results are LRU cached to make subsequent matches faster. Cache size is unlimited unless CacheMaxNumEntries is also specified."},"cachemaxnumentries":{"type":"number","description":"CacheMaxNumEntries is the max number of entries of the LRU cache that stores match results. CacheMaxNumEntries is ignored if CacheEnabled is false."}}},"resource":{"type":"string[]","description":"ResourceConditions is a list of OTTL conditions for an ottlresource context. If any condition resolves to true, the whole resource will be dropped. Supports `and`, `or`, and `()`"}}},"profile_conditions":{"type":"unknown[]"},"profiles":{"type":"object","description":"Deprecated: use ProfileConditions instead.","deprecated":true,"properties":{"profile":{"type":"string[]","description":"ProfileConditions is a list of OTTL conditions for an ottlprofile context. If any condition resolves to true, the profile will be dropped. Supports `and`, `or`, and `()`"},"resource":{"type":"string[]","description":"ResourceConditions is a list of OTTL conditions for an ottlresource context. If any condition resolves to true, the whole resource will be dropped. Supports `and`, `or`, and `()`"}}},"spans":{"type":"object","description":"Deprecated: use TraceConditions instead.","deprecated":true,"properties":{"exclude":{"type":"object","description":"Exclude specifies when this processor will not be applied to the input data which match the specified properties. Note: The `exclude` properties are checked after the `include` properties, if they exist, are checked. If `include` isn't specified, the `exclude` properties are checked against all input data. This is an optional field. If neither `include` and `exclude` are set, all input data is processed. If `exclude` is set and `include` isn't set, then all the input data that does not match the properties in this structure are processed.","properties":{"match_type":{"type":"string","description":"MatchType describes the type of pattern matching a FilterSet uses to filter strings."},"regexp":{"type":"object","description":"Config represents the options for a NewFilterSet.","properties":{"cacheenabled":{"type":"boolean","description":"CacheEnabled determines whether match results are LRU cached to make subsequent matches faster. Cache size is unlimited unless CacheMaxNumEntries is also specified."},"cachemaxnumentries":{"type":"number","description":"CacheMaxNumEntries is the max number of entries of the LRU cache that stores match results. CacheMaxNumEntries is ignored if CacheEnabled is false."}}},"attributes":{"type":"object[]","description":"Attributes specifies the list of attributes to match against. All of these attributes must match for a match to occur. This is an optional field.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"libraries":{"type":"object[]","description":"Libraries specify the list of items to match the implementation library against. A match occurs if the span's implementation library matches at least one item in this list. This is an optional field.","properties":{"name":{"type":"string"},"version":{"type":"string","description":"version match expected actual match nil <blank> yes nil 1 yes <blank> <blank> yes <blank> 1 no 1 <blank> no 1 1 yes"}}},"log_bodies":{"type":"string[]","description":"LogBodies is a list of strings that the LogRecord's body field must match against."},"log_severity_number":{"type":"object","description":"LogSeverityNumber defines how to match against a log record's SeverityNumber, if defined.","properties":{"match_undefined":{"type":"boolean","description":"MatchUndefined controls whether logs with \"undefined\" severity matches. If this is true, entries with undefined severity will match."},"min":{"type":"number | string","description":"Min is the lowest severity that may be matched. e.g. if this is plog.SeverityNumberInfo, INFO, WARN, ERROR, and FATAL logs will match."}}},"log_severity_texts":{"type":"string[]","description":"LogSeverityTexts is a list of strings that the LogRecord's severity text field must match against."},"metric_names":{"type":"string[]","description":"MetricNames is a list of strings to match metric name against. A match occurs if metric name matches at least one item in the list. This field is optional."},"resources":{"type":"object[]","description":"Resources specify the list of items to match the resources against. A match occurs if the data's resources match at least one item in this list. This is an optional field.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"services":{"type":"string[]","description":"Services specify the list of items to match service name against. A match occurs if the span's service name matches at least one item in this list. This is an optional field."},"span_kinds":{"type":"string[]","description":"SpanKinds specify the list of items to match the span kind against. A match occurs if the span's span kind matches at least one item in this list. This is an optional field"},"span_names":{"type":"string[]","description":"SpanNames specify the list of items to match span name against. A match occurs if the span name matches at least one item in this list. This is an optional field."}}},"include":{"type":"object","description":"Include specifies the set of input data properties that must be present in order for this processor to apply to it. Note: If `exclude` is specified, the input data is compared against those properties after the `include` properties. This is an optional field. If neither `include` and `exclude` are set, all input data are processed. If `include` is set and `exclude` isn't set, then all input data matching the properties in this structure are processed.","properties":{"match_type":{"type":"string","description":"MatchType describes the type of pattern matching a FilterSet uses to filter strings."},"regexp":{"type":"object","description":"Config represents the options for a NewFilterSet.","properties":{"cacheenabled":{"type":"boolean","description":"CacheEnabled determines whether match results are LRU cached to make subsequent matches faster. Cache size is unlimited unless CacheMaxNumEntries is also specified."},"cachemaxnumentries":{"type":"number","description":"CacheMaxNumEntries is the max number of entries of the LRU cache that stores match results. CacheMaxNumEntries is ignored if CacheEnabled is false."}}},"attributes":{"type":"object[]","description":"Attributes specifies the list of attributes to match against. All of these attributes must match for a match to occur. This is an optional field.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"libraries":{"type":"object[]","description":"Libraries specify the list of items to match the implementation library against. A match occurs if the span's implementation library matches at least one item in this list. This is an optional field.","properties":{"name":{"type":"string"},"version":{"type":"string","description":"version match expected actual match nil <blank> yes nil 1 yes <blank> <blank> yes <blank> 1 no 1 <blank> no 1 1 yes"}}},"log_bodies":{"type":"string[]","description":"LogBodies is a list of strings that the LogRecord's body field must match against."},"log_severity_number":{"type":"object","description":"LogSeverityNumber defines how to match against a log record's SeverityNumber, if defined.","properties":{"match_undefined":{"type":"boolean","description":"MatchUndefined controls whether logs with \"undefined\" severity matches. If this is true, entries with undefined severity will match."},"min":{"type":"number | string","description":"Min is the lowest severity that may be matched. e.g. if this is plog.SeverityNumberInfo, INFO, WARN, ERROR, and FATAL logs will match."}}},"log_severity_texts":{"type":"string[]","description":"LogSeverityTexts is a list of strings that the LogRecord's severity text field must match against."},"metric_names":{"type":"string[]","description":"MetricNames is a list of strings to match metric name against. A match occurs if metric name matches at least one item in the list. This field is optional."},"resources":{"type":"object[]","description":"Resources specify the list of items to match the resources against. A match occurs if the data's resources match at least one item in this list. This is an optional field.","properties":{"key":{"type":"string","description":"Key specifies the attribute key."},"value":{"type":"unknown","description":"Values specifies the value to match against. If it is not set, any value will match."}}},"services":{"type":"string[]","description":"Services specify the list of items to match service name against. A match occurs if the span's service name matches at least one item in this list. This is an optional field."},"span_kinds":{"type":"string[]","description":"SpanKinds specify the list of items to match the span kind against. A match occurs if the span's span kind matches at least one item in this list. This is an optional field"},"span_names":{"type":"string[]","description":"SpanNames specify the list of items to match span name against. A match occurs if the span name matches at least one item in this list. This is an optional field."}}}}},"trace_conditions":{"type":"unknown[]"},"traces":{"type":"object","description":"Deprecated: use TraceConditions instead.","deprecated":true,"properties":{"resource":{"type":"string[]","description":"ResourceConditions is a list of OTTL conditions for an ottlresource context. If any condition resolves to true, the whole resource will be dropped. Supports `and`, `or`, and `()`"},"span":{"type":"string[]","description":"SpanConditions is a list of OTTL conditions for an ottlspan context. If any condition resolves to true, the span will be dropped. Supports `and`, `or`, and `()`"},"spanevent":{"type":"string[]","description":"SpanEventConditions is a list of OTTL conditions for an ottlspanevent context. If any condition resolves to true, the span event will be dropped. Supports `and`, `or`, and `()`"}}}},"GoogleCloudExporter":{"timeout":{"type":"duration","description":"Timeout is the timeout for every attempt to send data to the backend. A zero timeout means no timeout."},"sending_queue":{"type":"object","description":"Config defines configuration for queueing and batching incoming requests.","properties":{"batch":{"type":"object","description":"BatchConfig it configures how the requests are consumed from the queue and batch together during consumption.","properties":{"flush_timeout":{"type":"duration","description":"FlushTimeout sets the time after which a batch will be sent regardless of its size."},"max_size":{"type":"number","description":"MaxSize defines the configuration for the maximum size of a batch."},"min_size":{"type":"number","description":"MinSize defines the configuration for the minimum size of a batch."},"partition":{"type":"object","description":"Partition defines the partitioning of the batches configuration.","properties":{"cache_size":{"type":"number","description":"CacheSize is the maximum number of active partition batchers kept in the LRU cache when partitioning is enabled. When the limit is reached, the least recently used partition is flushed and removed. Default is 10000. Must be positive."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the duration a partition may stay empty before it is removed. Keep it above the data arrival interval to avoid churning partitions. Default is 90s. Must be positive."},"metadata_keys":{"type":"string[]","description":"MetadataKeys is a list of client.Metadata keys that will be used to partition the data into batches. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error."}}},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by the batch. If not configured, use the same configuration as the queue. It accepts \"requests\", \"items\", or \"bytes\"."}}},"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error."},"enabled":{"type":"boolean","description":"Enabled indicates whether to not enqueue and batch before exporting."},"num_consumers":{"type":"number","description":"NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.)."},"queue_size":{"type":"number","description":"QueueSize represents the maximum data size allowed for concurrent storage and processing."},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by this component. It accepts \"requests\", \"items\", or \"bytes\"."},"storage":{"type":"component id","description":"StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822"},"wait_for_result":{"type":"boolean","description":"WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration."}}}},"HealthCheckExtension":{},"HostMetricsReceiver":{"collection_interval":{"type":"duration","description":"CollectionInterval sets how frequently the scraper is scheduled."},"initial_delay":{"type":"duration","description":"InitialDelay sets the initial start delay for the scraper, any non positive value is assumed to be immediately."},"timeout":{"type":"duration","description":"Timeout is an optional value used to set scraper's context deadline."},"metadata_collection_interval":{"type":"duration","description":"Collection interval for metadata. Metadata of the particular entity is collected when the entity changes. In addition metadata of all entities is collected periodically even if no changes happen. Setting the duration to 0 will disable periodic collection (however will not impact metadata collection on changes)."},"root_path":{"type":"string","description":"RootPath is the host's root directory (linux only)."},"scrapers":{"type":"object","description":"Map of scrapers to be run, keyed by scraper type.","properties":{"cpu":{"type":"unknown"},"disk":{"type":"unknown"},"filesystem":{"type":"unknown"},"load":{"type":"unknown"},"memory":{"type":"unknown"},"network":{"type":"unknown"},"nfs":{"type":"unknown"},"paging":{"type":"unknown"},"process":{"type":"unknown"},"processes":{"type":"unknown"},"system":{"type":"unknown"}}}},"K8sAttributesProcessor":{"auth_type":{"type":"string","description":"How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`."},"context":{"type":"string","description":"When using auth_type `kubeConfig`, override the current context."},"kube_api_burst":{"type":"number","description":"KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings."},"kube_api_qps":{"type":"number","description":"KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings."},"exclude":{"type":"object","description":"Exclude section allows to define names of pod that should be ignored while tagging.","properties":{"pods":{"type":"object[]","properties":{"name":{"type":"string"}}}}},"extract":{"type":"object","description":"Extract section allows specifying extraction rules to extract data from k8s pod specs","properties":{"annotations":{"type":"object[]","description":"Annotations allows extracting data from pod annotations and record it as resource attributes. It is a list of FieldExtractConfig type. See FieldExtractConfig documentation for more details.","properties":{"from":{"type":"string","description":"From represents the source of the labels/annotations. Allowed values are \"pod\", \"namespace\", \"node\", \"deployment\", \"replicaset\", \"statefulset\", \"daemonset\", \"job\", and \"cronjob\". The default is pod."},"key":{"type":"string","description":"Key represents the annotation (or label) name. This must exactly match an annotation (or label) name."},"key_regex":{"type":"string","description":"KeyRegex is a regular expression used to extract a Key that matches the regex. Out of Key or KeyRegex, only one option is expected to be configured at a time."},"tag_name":{"type":"string","description":"TagName represents the name of the resource attribute that will be added to logs, metrics or spans. When not specified, a default tag name will be used of the format: - k8s.pod.annotations.<annotation key> (or k8s.pod.annotation.<annotation key> when processor.k8sattributes.EmitV1K8sConventions is enabled) - k8s.pod.labels.<label key> (or k8s.pod.label.<label key> when processor.k8sattributes.EmitV1K8sConventions is enabled) For example, if tag_name is not specified and the key is git_sha, then the attribute name will be `k8s.pod.annotations.git_sha` (or `k8s.pod.annotation.git_sha` with the feature gate). When key_regex is present, tag_name supports back reference to both named capturing and positioned capturing. For example, if your pod spec contains the following labels, app.kubernetes.io/component: mysql app.kubernetes.io/version: 5.7.21 and you'd like to add tags for all labels with prefix app.kubernetes.io/ and also trim the prefix, then you can specify the following extraction rules: extract: labels: - tag_name: $$1 key_regex: kubernetes.io/(.*) this will add the `component` and `version` tags to the spans or metrics. When key_regex is present without tag_name, the default tag name format will be used for each matched key. For example: extract: labels: - key_regex: environment\\.(.*) from: pod If labels like \"environment.prod\" and \"environment.dev\" exist, they will be extracted as k8s.pod.labels.environment.prod and k8s.pod.labels.environment.dev respectively."}}},"labels":{"type":"object[]","description":"Labels allows extracting data from pod labels and record it as resource attributes. It is a list of FieldExtractConfig type. See FieldExtractConfig documentation for more details.","properties":{"from":{"type":"string","description":"From represents the source of the labels/annotations. Allowed values are \"pod\", \"namespace\", \"node\", \"deployment\", \"replicaset\", \"statefulset\", \"daemonset\", \"job\", and \"cronjob\". The default is pod."},"key":{"type":"string","description":"Key represents the annotation (or label) name. This must exactly match an annotation (or label) name."},"key_regex":{"type":"string","description":"KeyRegex is a regular expression used to extract a Key that matches the regex. Out of Key or KeyRegex, only one option is expected to be configured at a time."},"tag_name":{"type":"string","description":"TagName represents the name of the resource attribute that will be added to logs, metrics or spans. When not specified, a default tag name will be used of the format: - k8s.pod.annotations.<annotation key> (or k8s.pod.annotation.<annotation key> when processor.k8sattributes.EmitV1K8sConventions is enabled) - k8s.pod.labels.<label key> (or k8s.pod.label.<label key> when processor.k8sattributes.EmitV1K8sConventions is enabled) For example, if tag_name is not specified and the key is git_sha, then the attribute name will be `k8s.pod.annotations.git_sha` (or `k8s.pod.annotation.git_sha` with the feature gate). When key_regex is present, tag_name supports back reference to both named capturing and positioned capturing. For example, if your pod spec contains the following labels, app.kubernetes.io/component: mysql app.kubernetes.io/version: 5.7.21 and you'd like to add tags for all labels with prefix app.kubernetes.io/ and also trim the prefix, then you can specify the following extraction rules: extract: labels: - tag_name: $$1 key_regex: kubernetes.io/(.*) this will add the `component` and `version` tags to the spans or metrics. When key_regex is present without tag_name, the default tag name format will be used for each matched key. For example: extract: labels: - key_regex: environment\\.(.*) from: pod If labels like \"environment.prod\" and \"environment.dev\" exist, they will be extracted as k8s.pod.labels.environment.prod and k8s.pod.labels.environment.dev respectively."}}},"metadata":{"type":"string[]","description":"Metadata allows to extract pod/namespace/node metadata from a list of metadata fields. The field accepts a list of strings. Metadata fields supported right now are, k8s.pod.name, k8s.pod.uid, k8s.deployment.name, k8s.node.name, k8s.namespace.name, k8s.pod.start_time, k8s.replicaset.name, k8s.replicaset.uid, k8s.daemonset.name, k8s.daemonset.uid, k8s.job.name, k8s.job.uid, k8s.cronjob.name, k8s.cronjob.uid, k8s.statefulset.name, k8s.statefulset.uid, k8s.container.name, container.id, container.image.name, container.image.tag, container.image.repo_digests k8s.cluster.uid Specifying anything other than these values will result in an error. By default, the following fields are extracted and added to spans, metrics and logs as resource attributes: - k8s.pod.name - k8s.pod.uid - k8s.pod.start_time - k8s.namespace.name - k8s.node.name - k8s.deployment.name (if the pod is controlled by a deployment) - k8s.container.name (requires an additional attribute to be set: container.id) - container.image.name (requires one of the following additional attributes to be set: container.id or k8s.container.name) - container.image.tag (requires one of the following additional attributes to be set: container.id or k8s.container.name) — deprecated, use container.image.tags - container.image.tags (requires one of the following additional attributes to be set: container.id or k8s.container.name)"},"otel_annotations":{"type":"boolean","description":"OtelAnnotations extracts all pod annotations with the prefix \"resource.opentelemetry.io\" as resource attributes E.g. \"resource.opentelemetry.io/foo\" becomes \"foo\""}}},"filter":{"type":"object","description":"Filter section allows specifying filters to filter pods by labels, fields, namespaces, nodes, etc.","properties":{"fields":{"type":"object[]","description":"Fields allows to filter pods by generic k8s fields. Only the following operations are supported: - equals - not-equals Check FieldFilterConfig for more details.","properties":{"key":{"type":"string","description":"Key represents the key or name of the field or labels that a filter can apply on."},"op":{"type":"string","description":"Op represents the filter operation to apply on the given Key: Value pair. The following operations are supported equals, not-equals, exists, does-not-exist."},"value":{"type":"string","description":"Value represents the value associated with the key that a filter operation specified by the `Op` field applies on."}}},"labels":{"type":"object[]","description":"Labels allows to filter pods by generic k8s pod labels. Only the following operations are supported: - equals - not-equals - exists - not-exists Check FieldFilterConfig for more details.","properties":{"key":{"type":"string","description":"Key represents the key or name of the field or labels that a filter can apply on."},"op":{"type":"string","description":"Op represents the filter operation to apply on the given Key: Value pair. The following operations are supported equals, not-equals, exists, does-not-exist."},"value":{"type":"string","description":"Value represents the value associated with the key that a filter operation specified by the `Op` field applies on."}}},"namespace":{"type":"string","description":"Namespace filters all pods by the provided namespace. All other pods are ignored."},"node":{"type":"string","description":"Node represents a k8s node or host. If specified, any pods not running on the specified node will be ignored by the tagger."},"node_from_env_var":{"type":"string","description":"NodeFromEnv can be used to extract the node name from an environment variable. The value must be the name of the environment variable. This is useful when the node a Otel agent will run on cannot be predicted. In such cases, the Kubernetes downward API can be used to add the node name to each pod as an environment variable. K8s tagger can then read this value and filter pods by it. For example, node name can be passed to each agent with the downward API as follows env: - name: K8S_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName Then the NodeFromEnv field can be set to `K8S_NODE_NAME` to filter all pods by the node that the agent is running on. More on downward API here: https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/"}}},"passthrough":{"type":"boolean","description":"Passthrough mode only annotates resources with the pod IP and does not try to extract any other metadata. It does not need access to the K8S cluster API. Agent/Collector must receive spans directly from services to be able to correctly detect the pod IPs."},"pod_association":{"type":"object[]","description":"Association section allows to define rules for tagging spans, metrics, and logs with Pod metadata.","properties":{"sources":{"type":"object[]","description":"List of pod association sources which should be taken to identify pod","properties":{"from":{"type":"string","description":"From represents the source of the association. Allowed values are \"connection\" and \"resource_attribute\"."},"name":{"type":"string","description":"Name represents extracted key name. e.g. ip, pod_uid, k8s.pod.ip"}}}}},"pod_delete_grace_period":{"type":"duration","description":"PodDeleteGracePeriod is the duration to wait before deleting a pod from the cache after receiving a delete event."},"wait_for_metadata":{"type":"boolean","description":"WaitForMetadata is a flag that determines if the processor should wait k8s metadata to be synced when starting."},"wait_for_metadata_timeout":{"type":"duration","description":"WaitForMetadataTimeout is the maximum time the processor will wait for the k8s metadata to be synced."},"watch_sync_period":{"type":"duration","description":"WatchSyncPeriod determines the resync period for K8s informers. Reprocessing the informer cache periodically can cause significant memory churn and CPU spikes. Setting this to 0 disables resync."}},"K8sClusterReceiver":{"auth_type":{"type":"string","description":"How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`."},"context":{"type":"string","description":"When using auth_type `kubeConfig`, override the current context."},"kube_api_burst":{"type":"number","description":"KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings."},"kube_api_qps":{"type":"number","description":"KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings."},"metrics":{"type":"object","description":"MetricsConfig provides config for k8s_cluster metrics.","properties":{"k8s.container.cpu_limit":{"type":"object","description":"K8sContainerCPULimitMetricConfig provides config for the k8s.container.cpu_limit metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.cpu_request":{"type":"object","description":"K8sContainerCPURequestMetricConfig provides config for the k8s.container.cpu_request metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.ephemeralstorage_limit":{"type":"object","description":"K8sContainerEphemeralstorageLimitMetricConfig provides config for the k8s.container.ephemeralstorage_limit metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.ephemeralstorage_request":{"type":"object","description":"K8sContainerEphemeralstorageRequestMetricConfig provides config for the k8s.container.ephemeralstorage_request metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.memory_limit":{"type":"object","description":"K8sContainerMemoryLimitMetricConfig provides config for the k8s.container.memory_limit metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.memory_request":{"type":"object","description":"K8sContainerMemoryRequestMetricConfig provides config for the k8s.container.memory_request metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.ready":{"type":"object","description":"K8sContainerReadyMetricConfig provides config for the k8s.container.ready metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.restarts":{"type":"object","description":"K8sContainerRestartsMetricConfig provides config for the k8s.container.restarts metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.status.reason":{"type":"object","description":"K8sContainerStatusReasonMetricConfig provides config for the k8s.container.status.reason metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.status.state":{"type":"object","description":"K8sContainerStatusStateMetricConfig provides config for the k8s.container.status.state metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.storage_limit":{"type":"object","description":"K8sContainerStorageLimitMetricConfig provides config for the k8s.container.storage_limit metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.storage_request":{"type":"object","description":"K8sContainerStorageRequestMetricConfig provides config for the k8s.container.storage_request metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.cronjob.active_jobs":{"type":"object","description":"K8sCronjobActiveJobsMetricConfig provides config for the k8s.cronjob.active_jobs metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.daemonset.current_scheduled_nodes":{"type":"object","description":"K8sDaemonsetCurrentScheduledNodesMetricConfig provides config for the k8s.daemonset.current_scheduled_nodes metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.daemonset.desired_scheduled_nodes":{"type":"object","description":"K8sDaemonsetDesiredScheduledNodesMetricConfig provides config for the k8s.daemonset.desired_scheduled_nodes metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.daemonset.misscheduled_nodes":{"type":"object","description":"K8sDaemonsetMisscheduledNodesMetricConfig provides config for the k8s.daemonset.misscheduled_nodes metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.daemonset.ready_nodes":{"type":"object","description":"K8sDaemonsetReadyNodesMetricConfig provides config for the k8s.daemonset.ready_nodes metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.deployment.available":{"type":"object","description":"K8sDeploymentAvailableMetricConfig provides config for the k8s.deployment.available metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.deployment.desired":{"type":"object","description":"K8sDeploymentDesiredMetricConfig provides config for the k8s.deployment.desired metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.hpa.current_replicas":{"type":"object","description":"K8sHpaCurrentReplicasMetricConfig provides config for the k8s.hpa.current_replicas metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.hpa.desired_replicas":{"type":"object","description":"K8sHpaDesiredReplicasMetricConfig provides config for the k8s.hpa.desired_replicas metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.hpa.max_replicas":{"type":"object","description":"K8sHpaMaxReplicasMetricConfig provides config for the k8s.hpa.max_replicas metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.hpa.min_replicas":{"type":"object","description":"K8sHpaMinReplicasMetricConfig provides config for the k8s.hpa.min_replicas metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.job.active_pods":{"type":"object","description":"K8sJobActivePodsMetricConfig provides config for the k8s.job.active_pods metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.job.desired_successful_pods":{"type":"object","description":"K8sJobDesiredSuccessfulPodsMetricConfig provides config for the k8s.job.desired_successful_pods metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.job.failed_pods":{"type":"object","description":"K8sJobFailedPodsMetricConfig provides config for the k8s.job.failed_pods metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.job.max_parallel_pods":{"type":"object","description":"K8sJobMaxParallelPodsMetricConfig provides config for the k8s.job.max_parallel_pods metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.job.successful_pods":{"type":"object","description":"K8sJobSuccessfulPodsMetricConfig provides config for the k8s.job.successful_pods metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.namespace.phase":{"type":"object","description":"K8sNamespacePhaseMetricConfig provides config for the k8s.namespace.phase metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.condition":{"type":"object","description":"K8sNodeConditionMetricConfig provides config for the k8s.node.condition metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.persistentvolume.status.phase":{"type":"object","description":"K8sPersistentvolumeStatusPhaseMetricConfig provides config for the k8s.persistentvolume.status.phase metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.persistentvolume.storage.capacity":{"type":"object","description":"K8sPersistentvolumeStorageCapacityMetricConfig provides config for the k8s.persistentvolume.storage.capacity metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.persistentvolumeclaim.status.phase":{"type":"object","description":"K8sPersistentvolumeclaimStatusPhaseMetricConfig provides config for the k8s.persistentvolumeclaim.status.phase metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.persistentvolumeclaim.storage.capacity":{"type":"object","description":"K8sPersistentvolumeclaimStorageCapacityMetricConfig provides config for the k8s.persistentvolumeclaim.storage.capacity metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.persistentvolumeclaim.storage.request":{"type":"object","description":"K8sPersistentvolumeclaimStorageRequestMetricConfig provides config for the k8s.persistentvolumeclaim.storage.request metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.phase":{"type":"object","description":"K8sPodPhaseMetricConfig provides config for the k8s.pod.phase metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.status_reason":{"type":"object","description":"K8sPodStatusReasonMetricConfig provides config for the k8s.pod.status_reason metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.replicaset.available":{"type":"object","description":"K8sReplicasetAvailableMetricConfig provides config for the k8s.replicaset.available metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.replicaset.desired":{"type":"object","description":"K8sReplicasetDesiredMetricConfig provides config for the k8s.replicaset.desired metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.replication_controller.available":{"type":"object","description":"K8sReplicationControllerAvailableMetricConfig provides config for the k8s.replication_controller.available metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.replication_controller.desired":{"type":"object","description":"K8sReplicationControllerDesiredMetricConfig provides config for the k8s.replication_controller.desired metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.resource_quota.hard_limit":{"type":"object","description":"K8sResourceQuotaHardLimitMetricConfig provides config for the k8s.resource_quota.hard_limit metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.resource_quota.used":{"type":"object","description":"K8sResourceQuotaUsedMetricConfig provides config for the k8s.resource_quota.used metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.service.endpoint.count":{"type":"object","description":"K8sServiceEndpointCountMetricConfig provides config for the k8s.service.endpoint.count metric.","properties":{"enabled":{"type":"boolean"},"aggregation_strategy":{"type":"\"sum\" | \"avg\" | \"min\" | \"max\""},"attributes":{"type":"\"k8s.service.endpoint.address_type\" | \"k8s.service.endpoint.condition\" | \"k8s.service.endpoint.zone\"[]"}}},"k8s.service.load_balancer.ingress.count":{"type":"object","description":"K8sServiceLoadBalancerIngressCountMetricConfig provides config for the k8s.service.load_balancer.ingress.count metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.statefulset.current_pods":{"type":"object","description":"K8sStatefulsetCurrentPodsMetricConfig provides config for the k8s.statefulset.current_pods metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.statefulset.desired_pods":{"type":"object","description":"K8sStatefulsetDesiredPodsMetricConfig provides config for the k8s.statefulset.desired_pods metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.statefulset.ready_pods":{"type":"object","description":"K8sStatefulsetReadyPodsMetricConfig provides config for the k8s.statefulset.ready_pods metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.statefulset.updated_pods":{"type":"object","description":"K8sStatefulsetUpdatedPodsMetricConfig provides config for the k8s.statefulset.updated_pods metric.","properties":{"enabled":{"type":"boolean"}}},"openshift.appliedclusterquota.limit":{"type":"object","description":"OpenshiftAppliedclusterquotaLimitMetricConfig provides config for the openshift.appliedclusterquota.limit metric.","properties":{"enabled":{"type":"boolean"},"aggregation_strategy":{"type":"\"sum\" | \"avg\" | \"min\" | \"max\""},"attributes":{"type":"\"k8s.namespace.name\" | \"resource\"[]"}}},"openshift.appliedclusterquota.used":{"type":"object","description":"OpenshiftAppliedclusterquotaUsedMetricConfig provides config for the openshift.appliedclusterquota.used metric.","properties":{"enabled":{"type":"boolean"},"aggregation_strategy":{"type":"\"sum\" | \"avg\" | \"min\" | \"max\""},"attributes":{"type":"\"k8s.namespace.name\" | \"resource\"[]"}}},"openshift.clusterquota.limit":{"type":"object","description":"OpenshiftClusterquotaLimitMetricConfig provides config for the openshift.clusterquota.limit metric.","properties":{"enabled":{"type":"boolean"}}},"openshift.clusterquota.used":{"type":"object","description":"OpenshiftClusterquotaUsedMetricConfig provides config for the openshift.clusterquota.used metric.","properties":{"enabled":{"type":"boolean"}}}}},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for k8s_cluster resource attributes.","properties":{"container.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a container.id resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"container.image.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a container.image.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"container.image.tag":{"type":"object","description":"ResourceAttributeConfig provides common config for a container.image.tag resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"container.runtime":{"type":"object","description":"ResourceAttributeConfig provides common config for a container.runtime resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"container.runtime.version":{"type":"object","description":"ResourceAttributeConfig provides common config for a container.runtime.version resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.container.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.container.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.container.status.last_terminated_reason":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.container.status.last_terminated_reason resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.cronjob.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cronjob.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.cronjob.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cronjob.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.daemonset.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.daemonset.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.daemonset.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.daemonset.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.deployment.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.deployment.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.deployment.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.deployment.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.hpa.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.hpa.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.hpa.scaletargetref.apiversion":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.hpa.scaletargetref.apiversion resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.hpa.scaletargetref.kind":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.hpa.scaletargetref.kind resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.hpa.scaletargetref.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.hpa.scaletargetref.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.hpa.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.hpa.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.job.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.job.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.job.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.job.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.kubelet.version":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.kubelet.version resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.namespace.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.namespace.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.namespace.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.namespace.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.node.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.node.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.node.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.node.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.persistentvolume.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.persistentvolume.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.persistentvolume.reclaim_policy":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.persistentvolume.reclaim_policy resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.persistentvolume.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.persistentvolume.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.persistentvolumeclaim.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.persistentvolumeclaim.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.persistentvolumeclaim.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.persistentvolumeclaim.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.pod.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.pod.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.pod.qos_class":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.pod.qos_class resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.pod.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.pod.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.replicaset.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.replicaset.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.replicaset.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.replicaset.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.replicationcontroller.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.replicationcontroller.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.replicationcontroller.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.replicationcontroller.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.resourcequota.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.resourcequota.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.resourcequota.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.resourcequota.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.service.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.service.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.service.publish_not_ready_addresses":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.service.publish_not_ready_addresses resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.service.traffic_distribution":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.service.traffic_distribution resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.service.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.service.type resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.service.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.service.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.statefulset.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.statefulset.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.statefulset.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.statefulset.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.storageclass.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.storageclass.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"openshift.clusterquota.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a openshift.clusterquota.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"openshift.clusterquota.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a openshift.clusterquota.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"os.description":{"type":"object","description":"ResourceAttributeConfig provides common config for a os.description resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"os.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a os.type resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}}}},"allocatable_types_to_report":{"type":"string[]","description":"Allocate resource types to report. See all resource types, see here: https://kubernetes.io/docs/tasks/administer-cluster/reserve-compute-resources/#node-allocatable"},"collection_interval":{"type":"duration","description":"Collection interval for metrics."},"distribution":{"type":"string","description":"Whether OpenShift support should be enabled or not."},"k8s_leader_elector":{"type":"component id","description":"K8sLeaderElector defines the reference to the k8s leader elector extension use this when k8s cluster receiver needs to be deployed in HA mode"},"metadata_collection_interval":{"type":"duration","description":"Collection interval for metadata. Metadata of the particular entity in the cluster is collected when the entity changes. In addition metadata of all entities is collected periodically even if no changes happen. Setting the duration to 0 will disable periodic collection (however will not impact metadata collection on changes)."},"metadata_exporters":{"type":"string[]","description":"List of exporters to which metadata from this receiver should be forwarded to."},"namespace":{"type":"string","description":"Deprecated: This field is no longer supported, use cfg.Namespaces instead.","deprecated":true},"namespaces":{"type":"string[]","description":"Namespaces to fetch resources from. If this is set, certain cluster-wide resources such as Nodes or Namespaces will not be able to be observed. Setting this option is recommended in environments where due to security restrictions the collector cannot be granted cluster-wide permissions."},"node_conditions_to_report":{"type":"string[]","description":"Node condition types to report. See all condition types, see here: https://kubernetes.io/docs/concepts/architecture/nodes/#condition."}},"K8sLeaderElectorExtension":{"auth_type":{"type":"string","description":"How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`."},"context":{"type":"string","description":"When using auth_type `kubeConfig`, override the current context."},"kube_api_burst":{"type":"number","description":"KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings."},"kube_api_qps":{"type":"number","description":"KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings."},"lease_duration":{"type":"duration"},"lease_name":{"type":"string"},"lease_namespace":{"type":"string"},"renew_deadline":{"type":"duration"},"retry_period":{"type":"duration"}},"KubeletStatsReceiver":{"collection_interval":{"type":"duration","description":"CollectionInterval sets how frequently the scraper is scheduled."},"initial_delay":{"type":"duration","description":"InitialDelay sets the initial start delay for the scraper, any non positive value is assumed to be immediately."},"timeout":{"type":"duration","description":"Timeout is an optional value used to set scraper's context deadline."},"auth_type":{"type":"string","description":"How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`."},"context":{"type":"string","description":"When using auth_type `kubeConfig`, override the current context."},"kube_api_burst":{"type":"number","description":"KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings."},"kube_api_qps":{"type":"number","description":"KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings."},"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"insecure_skip_verify":{"type":"boolean","description":"InsecureSkipVerify controls whether the client verifies the server's certificate chain and host name."},"dialer":{"type":"object","description":"DialerConfig contains options for connecting to an address.","properties":{"timeout":{"type":"duration","description":"Timeout is the maximum amount of time a dial will wait for a connect to complete. The default is no timeout."}}},"endpoint":{"type":"string","description":"Endpoint configures the address for this network connection. The address has the form \"host:port\". The host must be a literal IP address, or a host name that can be resolved to IP addresses. The port must be a literal port number or a service name. If the host is a literal IPv6 address it must be enclosed in square brackets, as in \"[2001:db8::1]:80\" or \"[fe80::1%zone]:80\". The zone specifies the scope of the literal IPv6 address as defined in RFC 4007."},"metrics":{"type":"object","description":"MetricsConfig provides config for kubelet_stats metrics.","properties":{"container.cpu.time":{"type":"object","description":"ContainerCPUTimeMetricConfig provides config for the container.cpu.time metric.","properties":{"enabled":{"type":"boolean"}}},"container.cpu.usage":{"type":"object","description":"ContainerCPUUsageMetricConfig provides config for the container.cpu.usage metric.","properties":{"enabled":{"type":"boolean"}}},"container.filesystem.available":{"type":"object","description":"ContainerFilesystemAvailableMetricConfig provides config for the container.filesystem.available metric.","properties":{"enabled":{"type":"boolean"}}},"container.filesystem.capacity":{"type":"object","description":"ContainerFilesystemCapacityMetricConfig provides config for the container.filesystem.capacity metric.","properties":{"enabled":{"type":"boolean"}}},"container.filesystem.usage":{"type":"object","description":"ContainerFilesystemUsageMetricConfig provides config for the container.filesystem.usage metric.","properties":{"enabled":{"type":"boolean"}}},"container.memory.available":{"type":"object","description":"ContainerMemoryAvailableMetricConfig provides config for the container.memory.available metric.","properties":{"enabled":{"type":"boolean"}}},"container.memory.major_page_faults":{"type":"object","description":"ContainerMemoryMajorPageFaultsMetricConfig provides config for the container.memory.major_page_faults metric.","properties":{"enabled":{"type":"boolean"}}},"container.memory.page_faults":{"type":"object","description":"ContainerMemoryPageFaultsMetricConfig provides config for the container.memory.page_faults metric.","properties":{"enabled":{"type":"boolean"}}},"container.memory.rss":{"type":"object","description":"ContainerMemoryRssMetricConfig provides config for the container.memory.rss metric.","properties":{"enabled":{"type":"boolean"}}},"container.memory.usage":{"type":"object","description":"ContainerMemoryUsageMetricConfig provides config for the container.memory.usage metric.","properties":{"enabled":{"type":"boolean"}}},"container.memory.working_set":{"type":"object","description":"ContainerMemoryWorkingSetMetricConfig provides config for the container.memory.working_set metric.","properties":{"enabled":{"type":"boolean"}}},"container.uptime":{"type":"object","description":"ContainerUptimeMetricConfig provides config for the container.uptime metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.cpu.node.utilization":{"type":"object","description":"K8sContainerCPUNodeUtilizationMetricConfig provides config for the k8s.container.cpu.node.utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.cpu_limit_utilization":{"type":"object","description":"K8sContainerCPULimitUtilizationMetricConfig provides config for the k8s.container.cpu_limit_utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.cpu_request_utilization":{"type":"object","description":"K8sContainerCPURequestUtilizationMetricConfig provides config for the k8s.container.cpu_request_utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.ephemeral_storage.usage":{"type":"object","description":"K8sContainerEphemeralStorageUsageMetricConfig provides config for the k8s.container.ephemeral_storage.usage metric.","properties":{"enabled":{"type":"boolean"},"aggregation_strategy":{"type":"\"sum\" | \"avg\" | \"min\" | \"max\""},"attributes":{"type":"\"fs.type\"[]"}}},"k8s.container.memory.node.utilization":{"type":"object","description":"K8sContainerMemoryNodeUtilizationMetricConfig provides config for the k8s.container.memory.node.utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.memory_limit_utilization":{"type":"object","description":"K8sContainerMemoryLimitUtilizationMetricConfig provides config for the k8s.container.memory_limit_utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.container.memory_request_utilization":{"type":"object","description":"K8sContainerMemoryRequestUtilizationMetricConfig provides config for the k8s.container.memory_request_utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.cpu.time":{"type":"object","description":"K8sNodeCPUTimeMetricConfig provides config for the k8s.node.cpu.time metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.cpu.usage":{"type":"object","description":"K8sNodeCPUUsageMetricConfig provides config for the k8s.node.cpu.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.filesystem.available":{"type":"object","description":"K8sNodeFilesystemAvailableMetricConfig provides config for the k8s.node.filesystem.available metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.filesystem.capacity":{"type":"object","description":"K8sNodeFilesystemCapacityMetricConfig provides config for the k8s.node.filesystem.capacity metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.filesystem.usage":{"type":"object","description":"K8sNodeFilesystemUsageMetricConfig provides config for the k8s.node.filesystem.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.memory.available":{"type":"object","description":"K8sNodeMemoryAvailableMetricConfig provides config for the k8s.node.memory.available metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.memory.major_page_faults":{"type":"object","description":"K8sNodeMemoryMajorPageFaultsMetricConfig provides config for the k8s.node.memory.major_page_faults metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.memory.page_faults":{"type":"object","description":"K8sNodeMemoryPageFaultsMetricConfig provides config for the k8s.node.memory.page_faults metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.memory.rss":{"type":"object","description":"K8sNodeMemoryRssMetricConfig provides config for the k8s.node.memory.rss metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.memory.usage":{"type":"object","description":"K8sNodeMemoryUsageMetricConfig provides config for the k8s.node.memory.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.memory.working_set":{"type":"object","description":"K8sNodeMemoryWorkingSetMetricConfig provides config for the k8s.node.memory.working_set metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.network.errors":{"type":"object","description":"K8sNodeNetworkErrorsMetricConfig provides config for the k8s.node.network.errors metric.","properties":{"enabled":{"type":"boolean"},"aggregation_strategy":{"type":"\"sum\" | \"avg\" | \"min\" | \"max\""},"attributes":{"type":"\"interface\" | \"direction\"[]"}}},"k8s.node.network.io":{"type":"object","description":"K8sNodeNetworkIoMetricConfig provides config for the k8s.node.network.io metric.","properties":{"enabled":{"type":"boolean"},"aggregation_strategy":{"type":"\"sum\" | \"avg\" | \"min\" | \"max\""},"attributes":{"type":"\"interface\" | \"direction\"[]"}}},"k8s.node.system_container.cpu.time":{"type":"object","description":"K8sNodeSystemContainerCPUTimeMetricConfig provides config for the k8s.node.system_container.cpu.time metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.system_container.cpu.usage":{"type":"object","description":"K8sNodeSystemContainerCPUUsageMetricConfig provides config for the k8s.node.system_container.cpu.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.system_container.memory.usage":{"type":"object","description":"K8sNodeSystemContainerMemoryUsageMetricConfig provides config for the k8s.node.system_container.memory.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.system_container.memory.working_set":{"type":"object","description":"K8sNodeSystemContainerMemoryWorkingSetMetricConfig provides config for the k8s.node.system_container.memory.working_set metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.uptime":{"type":"object","description":"K8sNodeUptimeMetricConfig provides config for the k8s.node.uptime metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.cpu.node.utilization":{"type":"object","description":"K8sPodCPUNodeUtilizationMetricConfig provides config for the k8s.pod.cpu.node.utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.cpu.time":{"type":"object","description":"K8sPodCPUTimeMetricConfig provides config for the k8s.pod.cpu.time metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.cpu.usage":{"type":"object","description":"K8sPodCPUUsageMetricConfig provides config for the k8s.pod.cpu.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.cpu_limit_utilization":{"type":"object","description":"K8sPodCPULimitUtilizationMetricConfig provides config for the k8s.pod.cpu_limit_utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.cpu_request_utilization":{"type":"object","description":"K8sPodCPURequestUtilizationMetricConfig provides config for the k8s.pod.cpu_request_utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.filesystem.available":{"type":"object","description":"K8sPodFilesystemAvailableMetricConfig provides config for the k8s.pod.filesystem.available metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.filesystem.capacity":{"type":"object","description":"K8sPodFilesystemCapacityMetricConfig provides config for the k8s.pod.filesystem.capacity metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.filesystem.usage":{"type":"object","description":"K8sPodFilesystemUsageMetricConfig provides config for the k8s.pod.filesystem.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory.available":{"type":"object","description":"K8sPodMemoryAvailableMetricConfig provides config for the k8s.pod.memory.available metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory.major_page_faults":{"type":"object","description":"K8sPodMemoryMajorPageFaultsMetricConfig provides config for the k8s.pod.memory.major_page_faults metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory.node.utilization":{"type":"object","description":"K8sPodMemoryNodeUtilizationMetricConfig provides config for the k8s.pod.memory.node.utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory.page_faults":{"type":"object","description":"K8sPodMemoryPageFaultsMetricConfig provides config for the k8s.pod.memory.page_faults metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory.rss":{"type":"object","description":"K8sPodMemoryRssMetricConfig provides config for the k8s.pod.memory.rss metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory.usage":{"type":"object","description":"K8sPodMemoryUsageMetricConfig provides config for the k8s.pod.memory.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory.working_set":{"type":"object","description":"K8sPodMemoryWorkingSetMetricConfig provides config for the k8s.pod.memory.working_set metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory_limit_utilization":{"type":"object","description":"K8sPodMemoryLimitUtilizationMetricConfig provides config for the k8s.pod.memory_limit_utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.memory_request_utilization":{"type":"object","description":"K8sPodMemoryRequestUtilizationMetricConfig provides config for the k8s.pod.memory_request_utilization metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.network.errors":{"type":"object","description":"K8sPodNetworkErrorsMetricConfig provides config for the k8s.pod.network.errors metric.","properties":{"enabled":{"type":"boolean"},"aggregation_strategy":{"type":"\"sum\" | \"avg\" | \"min\" | \"max\""},"attributes":{"type":"\"interface\" | \"direction\"[]"}}},"k8s.pod.network.io":{"type":"object","description":"K8sPodNetworkIoMetricConfig provides config for the k8s.pod.network.io metric.","properties":{"enabled":{"type":"boolean"},"aggregation_strategy":{"type":"\"sum\" | \"avg\" | \"min\" | \"max\""},"attributes":{"type":"\"interface\" | \"direction\"[]"}}},"k8s.pod.uptime":{"type":"object","description":"K8sPodUptimeMetricConfig provides config for the k8s.pod.uptime metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.pod.volume.usage":{"type":"object","description":"K8sPodVolumeUsageMetricConfig provides config for the k8s.pod.volume.usage metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.volume.available":{"type":"object","description":"K8sVolumeAvailableMetricConfig provides config for the k8s.volume.available metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.volume.capacity":{"type":"object","description":"K8sVolumeCapacityMetricConfig provides config for the k8s.volume.capacity metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.volume.inodes":{"type":"object","description":"K8sVolumeInodesMetricConfig provides config for the k8s.volume.inodes metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.volume.inodes.free":{"type":"object","description":"K8sVolumeInodesFreeMetricConfig provides config for the k8s.volume.inodes.free metric.","properties":{"enabled":{"type":"boolean"}}},"k8s.volume.inodes.used":{"type":"object","description":"K8sVolumeInodesUsedMetricConfig provides config for the k8s.volume.inodes.used metric.","properties":{"enabled":{"type":"boolean"}}}}},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for kubelet_stats resource attributes.","properties":{"aws.volume.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.volume.id resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"container.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a container.id resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"fs.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a fs.type resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"gce.pd.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a gce.pd.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"glusterfs.endpoints.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a glusterfs.endpoints.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"glusterfs.path":{"type":"object","description":"ResourceAttributeConfig provides common config for a glusterfs.path resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.container.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.container.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.namespace.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.namespace.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.node.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.node.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.node.system_container.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.node.system_container.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.persistentvolumeclaim.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.persistentvolumeclaim.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.pod.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.pod.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.pod.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.pod.uid resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.volume.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.volume.name resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"k8s.volume.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.volume.type resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}},"partition":{"type":"object","description":"ResourceAttributeConfig provides common config for a partition resource attribute.","properties":{"enabled":{"type":"boolean"},"metrics_include":{"type":"object[]","description":"Experimental: MetricsInclude defines a list of filters for attribute values. If the list is not empty, only metrics with matching resource attribute values will be emitted.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}},"metrics_exclude":{"type":"object[]","description":"Experimental: MetricsExclude defines a list of filters for attribute values. If the list is not empty, metrics with matching resource attribute values will not be emitted. MetricsInclude has higher priority than MetricsExclude.","properties":{"regexp":{"type":"string"},"strict":{"type":"string"}}}}}}},"collect_all_network_interfaces":{"type":"object","description":"NetworkCollectAllInterfaces allows to enable collecting metrics from all network interfaces instead of default one Can be set separately for Pod and Node network metrics","properties":{"node":{"type":"boolean"},"pod":{"type":"boolean"}}},"extra_metadata_labels":{"type":"string[]","description":"ExtraMetadataLabels contains list of extra metadata that should be taken from /pods endpoint and put as extra labels on metrics resource. No additional metadata is fetched by default, so there are no extra calls to /pods endpoint. Supported values include container.id and k8s.volume.type."},"k8s_api_config":{"type":"object","description":"Configuration of the Kubernetes API client.","properties":{"auth_type":{"type":"string","description":"How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`."},"context":{"type":"string","description":"When using auth_type `kubeConfig`, override the current context."},"kube_api_burst":{"type":"number","description":"KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings."},"kube_api_qps":{"type":"number","description":"KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings."}}},"metric_groups":{"type":"string[]","description":"MetricGroupsToCollect provides a list of metrics groups to collect metrics from. \"container\", \"pod\", \"node\" and \"volume\" are the only valid groups."},"node":{"type":"string","description":"NodeName is the node name to limit the discovery of nodes. For example, node name can be set using the downward API inside the collector pod spec as follows: env: - name: K8S_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName Then set this value to ${env:K8S_NODE_NAME} in the configuration."}},"LoadBalancingExporter":{"timeout":{"type":"duration","description":"Timeout is the timeout for every attempt to send data to the backend. A zero timeout means no timeout."},"protocol":{"type":"object","description":"Protocol holds the individual protocol-specific settings. Only OTLP is supported at the moment.","properties":{"otlp":{"type":"object","description":"Config defines configuration for OTLP exporter.","properties":{"timeout":{"type":"duration","description":"Timeout is the timeout for every attempt to send data to the backend. A zero timeout means no timeout."},"auth":{"type":"object","description":"Auth configuration for outgoing RPCs.","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."}}},"authority":{"type":"string","description":"WithAuthority parameter configures client to rewrite \":authority\" header (godoc.org/google.golang.org/grpc#WithAuthority)"},"balancer_name":{"type":"string","description":"Sets the balancer in grpclb_policy to discover the servers. Default is pick_first. https://github.com/grpc/grpc-go/blob/master/examples/features/load_balancing/README.md"},"compression":{"type":"string","description":"The compression key for supported compression types within collector."},"endpoint":{"type":"string","description":"The target to which the exporter is going to send traces or metrics, using the gRPC protocol. The valid syntax is described at https://github.com/grpc/grpc/blob/master/doc/naming.md."},"headers":{"type":"map | list","description":"The headers associated with gRPC requests.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"keepalive":{"type":"object","description":"The keepalive parameters for gRPC client. See grpc.WithKeepaliveParams. (https://godoc.org/google.golang.org/grpc#WithKeepaliveParams).","properties":{"permit_without_stream":{"type":"boolean"},"time":{"type":"duration"},"timeout":{"type":"duration"}}},"middlewares":{"type":"object[]","description":"Middlewares for the gRPC client.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"read_buffer_size":{"type":"number","description":"ReadBufferSize for gRPC client. See grpc.WithReadBufferSize. (https://godoc.org/google.golang.org/grpc#WithReadBufferSize)."},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration"},"insecure":{"type":"boolean","description":"In gRPC and HTTP when set to true, this is used to disable the client transport security. See https://godoc.org/google.golang.org/grpc#WithInsecure for gRPC. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional, default false)"},"insecure_skip_verify":{"type":"boolean","description":"InsecureSkipVerify will enable TLS but not verify the certificate."},"server_name_override":{"type":"string","description":"ServerName requested by client for virtual hosting. This sets the ServerName in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"}}},"user_agent":{"type":"string","description":"UserAgent overrides the default user-agent header sent on gRPC requests. The default is derived from the build info. When empty, the caller controls the user-agent via grpc.WithUserAgent or similar options."},"wait_for_ready":{"type":"boolean","description":"WaitForReady parameter configures client to wait for ready state before sending data. (https://github.com/grpc/grpc/blob/master/doc/wait-for-ready.md)"},"write_buffer_size":{"type":"number","description":"WriteBufferSize for gRPC gRPC. See grpc.WithWriteBufferSize. (https://godoc.org/google.golang.org/grpc#WithWriteBufferSize)."},"retry_on_failure":{"type":"object","description":"BackOffConfig defines configuration for retrying batches in case of export failure. The current supported strategy is exponential backoff.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to not retry sending batches in case of export failure."},"initial_interval":{"type":"duration","description":"InitialInterval the time to wait after the first failure before retrying."},"max_elapsed_time":{"type":"duration","description":"MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a request/batch. Once this value is reached, the data is discarded. If set to 0, the retries are never stopped."},"max_interval":{"type":"duration","description":"MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`."},"multiplier":{"type":"number","description":"Multiplier is the value multiplied by the backoff interval bounds"},"randomization_factor":{"type":"number","description":"RandomizationFactor is a random factor used to calculate next backoffs Randomized interval = RetryInterval * (1 ± RandomizationFactor)"}}},"sending_queue":{"type":"object","description":"Config defines configuration for queueing and batching incoming requests.","properties":{"batch":{"type":"object","description":"BatchConfig it configures how the requests are consumed from the queue and batch together during consumption."},"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error."},"enabled":{"type":"boolean","description":"Enabled indicates whether to not enqueue and batch before exporting."},"num_consumers":{"type":"number","description":"NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.)."},"queue_size":{"type":"number","description":"QueueSize represents the maximum data size allowed for concurrent storage and processing."},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by this component. It accepts \"requests\", \"items\", or \"bytes\"."},"storage":{"type":"component id","description":"StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822"},"wait_for_result":{"type":"boolean","description":"WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration."}}}}}}},"resolver":{"type":"object","description":"ResolverSettings defines the configurations for the backend resolver","properties":{"aws_cloud_map":{"type":"object","properties":{"health_status":{"type":"unknown"},"interval":{"type":"duration"},"namespace":{"type":"string"},"owner_account":{"type":"string"},"port":{"type":"number"},"service_name":{"type":"string"},"timeout":{"type":"duration"}}},"dns":{"type":"object","description":"DNSResolver defines the configuration for the DNS resolver","properties":{"hostname":{"type":"string"},"interval":{"type":"duration"},"port":{"type":"string"},"timeout":{"type":"duration"}}},"k8s":{"type":"object","description":"K8sSvcResolver defines the configuration for the DNS resolver","properties":{"ports":{"type":"number[]"},"return_hostnames":{"type":"boolean"},"service":{"type":"string"},"timeout":{"type":"duration"}}},"static":{"type":"object","description":"StaticResolver defines the configuration for the resolver providing a fixed list of backends","properties":{"hostnames":{"type":"string[]"}}}}},"retry_on_failure":{"type":"object","description":"BackOffConfig defines configuration for retrying batches in case of export failure. The current supported strategy is exponential backoff.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to not retry sending batches in case of export failure."},"initial_interval":{"type":"duration","description":"InitialInterval the time to wait after the first failure before retrying."},"max_elapsed_time":{"type":"duration","description":"MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a request/batch. Once this value is reached, the data is discarded. If set to 0, the retries are never stopped."},"max_interval":{"type":"duration","description":"MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`."},"multiplier":{"type":"number","description":"Multiplier is the value multiplied by the backoff interval bounds"},"randomization_factor":{"type":"number","description":"RandomizationFactor is a random factor used to calculate next backoffs Randomized interval = RetryInterval * (1 ± RandomizationFactor)"}}},"routing_attributes":{"type":"string[]","description":"RoutingAttributes creates a composite routing key from the listed attributes. For traces, attributes can come from resource, scope, or span, plus the pseudo attributes \"span.kind\" and \"span.name\". For logs, attributes can come from resource, scope, or log record attributes, plus the pseudo attributes \"log.severity\" and \"log.body\". For metrics, attributes can come from resource, scope, or datapoint attributes. Keys are encoded as \"name=value|name=value|\" in the order configured. Missing attributes are encoded as \"name=|\". Non-string values are deterministically stringified."},"routing_key":{"type":"string","description":"RoutingKey is a single routing key value"},"sending_queue":{"type":"object","description":"Config defines configuration for queueing and batching incoming requests.","properties":{"batch":{"type":"object","description":"BatchConfig it configures how the requests are consumed from the queue and batch together during consumption.","properties":{"flush_timeout":{"type":"duration","description":"FlushTimeout sets the time after which a batch will be sent regardless of its size."},"max_size":{"type":"number","description":"MaxSize defines the configuration for the maximum size of a batch."},"min_size":{"type":"number","description":"MinSize defines the configuration for the minimum size of a batch."},"partition":{"type":"object","description":"Partition defines the partitioning of the batches configuration.","properties":{"cache_size":{"type":"number","description":"CacheSize is the maximum number of active partition batchers kept in the LRU cache when partitioning is enabled. When the limit is reached, the least recently used partition is flushed and removed. Default is 10000. Must be positive."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the duration a partition may stay empty before it is removed. Keep it above the data arrival interval to avoid churning partitions. Default is 90s. Must be positive."},"metadata_keys":{"type":"string[]","description":"MetadataKeys is a list of client.Metadata keys that will be used to partition the data into batches. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error."}}},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by the batch. If not configured, use the same configuration as the queue. It accepts \"requests\", \"items\", or \"bytes\"."}}},"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error."},"enabled":{"type":"boolean","description":"Enabled indicates whether to not enqueue and batch before exporting."},"num_consumers":{"type":"number","description":"NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.)."},"queue_size":{"type":"number","description":"QueueSize represents the maximum data size allowed for concurrent storage and processing."},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by this component. It accepts \"requests\", \"items\", or \"bytes\"."},"storage":{"type":"component id","description":"StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822"},"wait_for_result":{"type":"boolean","description":"WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration."}}}},"MemoryLimiterProcessor":{"check_interval":{"type":"duration","description":"CheckInterval is the time between measurements of memory usage for the purposes of avoiding going over the limits. Defaults to zero, so no checks will be performed."},"limit_mib":{"type":"number","description":"MemoryLimitMiB is the maximum amount of memory, in MiB, targeted to be allocated by the process."},"limit_percentage":{"type":"number","description":"MemoryLimitPercentage is the maximum amount of memory, in %, targeted to be allocated by the process. The fixed memory settings MemoryLimitMiB has a higher precedence."},"max_gc_interval_when_hard_limited":{"type":"duration","description":"MaxGCIntervalWhenHardLimited caps the exponential backoff between forced GC calls in hard-limited mode. Same semantics as MaxGCIntervalWhenSoftLimited but applies to the hard-limit path. Set to 0 to disable the exponential backoff on this path."},"max_gc_interval_when_soft_limited":{"type":"duration","description":"MaxGCIntervalWhenSoftLimited caps the exponential backoff between forced GC calls in soft-limited mode. When a forced GC fails to reclaim memory (e.g., held by live references in exporter queues during a downstream outage), the interval doubles starting from min_gc_interval_when_soft_limited (or 95% of check_interval, whichever is larger) up to this cap. It resets to zero whenever a GC is effective or memory drops on its own. Set to 0 to disable the exponential backoff on this path; the interval will not grow beyond the configured min."},"min_gc_interval_when_hard_limited":{"type":"duration","description":"MinGCIntervalWhenHardLimited minimum interval between forced GC when in hard (=limit_mib) limited mode. Zero value means no minimum interval. GCs is a CPU-heavy operation and executing it too frequently may affect the recovery capabilities of the collector."},"min_gc_interval_when_soft_limited":{"type":"duration","description":"MinGCIntervalWhenSoftLimited minimum interval between forced GC when in soft (=limit_mib - spike_limit_mib) limited mode. Zero value means no minimum interval. GCs is a CPU-heavy operation and executing it too frequently may affect the recovery capabilities of the collector."},"spike_limit_mib":{"type":"number","description":"MemorySpikeLimitMiB is the maximum, in MiB, spike expected between the measurements of memory usage."},"spike_limit_percentage":{"type":"number","description":"MemorySpikePercentage is the maximum, in percents against the total memory, spike expected between the measurements of memory usage."}},"OtlpExporter":{"timeout":{"type":"duration","description":"Timeout is the timeout for every attempt to send data to the backend. A zero timeout means no timeout."},"auth":{"type":"object","description":"Auth configuration for outgoing RPCs.","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."}}},"authority":{"type":"string","description":"WithAuthority parameter configures client to rewrite \":authority\" header (godoc.org/google.golang.org/grpc#WithAuthority)"},"balancer_name":{"type":"string","description":"Sets the balancer in grpclb_policy to discover the servers. Default is pick_first. https://github.com/grpc/grpc-go/blob/master/examples/features/load_balancing/README.md"},"compression":{"type":"string","description":"The compression key for supported compression types within collector."},"endpoint":{"type":"string","description":"The target to which the exporter is going to send traces or metrics, using the gRPC protocol. The valid syntax is described at https://github.com/grpc/grpc/blob/master/doc/naming.md."},"headers":{"type":"map | list","description":"The headers associated with gRPC requests.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"keepalive":{"type":"object","description":"The keepalive parameters for gRPC client. See grpc.WithKeepaliveParams. (https://godoc.org/google.golang.org/grpc#WithKeepaliveParams).","properties":{"permit_without_stream":{"type":"boolean"},"time":{"type":"duration"},"timeout":{"type":"duration"}}},"middlewares":{"type":"object[]","description":"Middlewares for the gRPC client.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"read_buffer_size":{"type":"number","description":"ReadBufferSize for gRPC client. See grpc.WithReadBufferSize. (https://godoc.org/google.golang.org/grpc#WithReadBufferSize)."},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"insecure":{"type":"boolean","description":"In gRPC and HTTP when set to true, this is used to disable the client transport security. See https://godoc.org/google.golang.org/grpc#WithInsecure for gRPC. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional, default false)"},"insecure_skip_verify":{"type":"boolean","description":"InsecureSkipVerify will enable TLS but not verify the certificate."},"server_name_override":{"type":"string","description":"ServerName requested by client for virtual hosting. This sets the ServerName in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"}}},"user_agent":{"type":"string","description":"UserAgent overrides the default user-agent header sent on gRPC requests. The default is derived from the build info. When empty, the caller controls the user-agent via grpc.WithUserAgent or similar options."},"wait_for_ready":{"type":"boolean","description":"WaitForReady parameter configures client to wait for ready state before sending data. (https://github.com/grpc/grpc/blob/master/doc/wait-for-ready.md)"},"write_buffer_size":{"type":"number","description":"WriteBufferSize for gRPC gRPC. See grpc.WithWriteBufferSize. (https://godoc.org/google.golang.org/grpc#WithWriteBufferSize)."},"retry_on_failure":{"type":"object","description":"BackOffConfig defines configuration for retrying batches in case of export failure. The current supported strategy is exponential backoff.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to not retry sending batches in case of export failure."},"initial_interval":{"type":"duration","description":"InitialInterval the time to wait after the first failure before retrying."},"max_elapsed_time":{"type":"duration","description":"MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a request/batch. Once this value is reached, the data is discarded. If set to 0, the retries are never stopped."},"max_interval":{"type":"duration","description":"MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`."},"multiplier":{"type":"number","description":"Multiplier is the value multiplied by the backoff interval bounds"},"randomization_factor":{"type":"number","description":"RandomizationFactor is a random factor used to calculate next backoffs Randomized interval = RetryInterval * (1 ± RandomizationFactor)"}}},"sending_queue":{"type":"object","description":"Config defines configuration for queueing and batching incoming requests.","properties":{"batch":{"type":"object","description":"BatchConfig it configures how the requests are consumed from the queue and batch together during consumption.","properties":{"flush_timeout":{"type":"duration","description":"FlushTimeout sets the time after which a batch will be sent regardless of its size."},"max_size":{"type":"number","description":"MaxSize defines the configuration for the maximum size of a batch."},"min_size":{"type":"number","description":"MinSize defines the configuration for the minimum size of a batch."},"partition":{"type":"object","description":"Partition defines the partitioning of the batches configuration.","properties":{"cache_size":{"type":"number","description":"CacheSize is the maximum number of active partition batchers kept in the LRU cache when partitioning is enabled. When the limit is reached, the least recently used partition is flushed and removed. Default is 10000. Must be positive."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the duration a partition may stay empty before it is removed. Keep it above the data arrival interval to avoid churning partitions. Default is 90s. Must be positive."},"metadata_keys":{"type":"string[]","description":"MetadataKeys is a list of client.Metadata keys that will be used to partition the data into batches. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error."}}},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by the batch. If not configured, use the same configuration as the queue. It accepts \"requests\", \"items\", or \"bytes\"."}}},"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error."},"enabled":{"type":"boolean","description":"Enabled indicates whether to not enqueue and batch before exporting."},"num_consumers":{"type":"number","description":"NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.)."},"queue_size":{"type":"number","description":"QueueSize represents the maximum data size allowed for concurrent storage and processing."},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by this component. It accepts \"requests\", \"items\", or \"bytes\"."},"storage":{"type":"component id","description":"StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822"},"wait_for_result":{"type":"boolean","description":"WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration."}}}},"OtlpHttpExporter":{"auth":{"type":"object","description":"Auth configuration for outgoing HTTP calls.","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."}}},"compression":{"type":"string","description":"The compression key for supported compression types within collector."},"compression_params":{"type":"object","description":"Advanced configuration options for the Compression","properties":{"level":{"type":"number"}}},"cookies":{"type":"unknown","description":"Cookies configures the cookie management of the HTTP client."},"endpoint":{"type":"string","description":"The target URL to send data to (e.g.: http://some.url:9411/v1/traces)."},"force_attempt_http2":{"type":"boolean","description":"Enabling ForceAttemptHTTP2 forces the HTTP transport to use the HTTP/2 protocol. By default, this is set to true. NOTE: HTTP/2 does not support settings such as MaxConnsPerHost, MaxIdleConnsPerHost and MaxIdleConns."},"headers":{"type":"map | list","description":"Additional headers attached to each HTTP request sent by the client. Existing header values are overwritten if collision happens. Header values are opaque since they may be sensitive.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"http2_ping_timeout":{"type":"duration","description":"HTTP2PingTimeout if there's no response to the ping within the configured value, the connection will be closed. If not set or set to 0, it defaults to 15s."},"http2_read_idle_timeout":{"type":"duration","description":"This is needed in case you run into https://github.com/golang/go/issues/59690 https://github.com/golang/go/issues/36026 HTTP2ReadIdleTimeout if the connection has been idle for the configured value send a ping frame for health check 0s means no health check will be performed."},"keepalive":{"type":"object","description":"Keepalive settings for the HTTP client.","properties":{"enabled":{"type":"boolean","description":"Set to false to disable HTTP keep-alives. Default is true."},"idle_conn_timeout":{"type":"duration","description":"IdleConnTimeout is the maximum amount of time an idle (keep-alive) connection will remain open before closing itself. Default is 90 seconds."},"max_idle_conns":{"type":"number","description":"MaxIdleConns is used to set a limit to the maximum idle HTTP connections the client can keep open. Default is 100. Zero means no limit."},"max_idle_conns_per_host":{"type":"number","description":"MaxIdleConnsPerHost is used to set a limit to the maximum idle HTTP connections the host can keep open. If zero, net/http.DefaultMaxIdleConnsPerHost is used."}}},"max_conns_per_host":{"type":"number","description":"MaxConnsPerHost limits the total number of connections per host, including connections in the dialing, active, and idle states. Default is 0 (unlimited)."},"middlewares":{"type":"object[]","description":"Middlewares are used to add custom functionality to the HTTP client. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"proxy_url":{"type":"string","description":"ProxyURL setting for the collector"},"read_buffer_size":{"type":"number","description":"ReadBufferSize for HTTP client. See http.Transport.ReadBufferSize. Default is 0."},"timeout":{"type":"duration","description":"Timeout parameter configures `http.Client.Timeout`. Default is 0 (unlimited)."},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"insecure":{"type":"boolean","description":"In gRPC and HTTP when set to true, this is used to disable the client transport security. See https://godoc.org/google.golang.org/grpc#WithInsecure for gRPC. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional, default false)"},"insecure_skip_verify":{"type":"boolean","description":"InsecureSkipVerify will enable TLS but not verify the certificate."},"server_name_override":{"type":"string","description":"ServerName requested by client for virtual hosting. This sets the ServerName in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"}}},"write_buffer_size":{"type":"number","description":"WriteBufferSize for HTTP client. See http.Transport.WriteBufferSize. Default is 0."},"encoding":{"type":"string","description":"The encoding to export telemetry (default: \"proto\")"},"logs_endpoint":{"type":"string","description":"The URL to send logs to. If omitted the Endpoint + \"/v1/logs\" will be used."},"metrics_endpoint":{"type":"string","description":"The URL to send metrics to. If omitted the Endpoint + \"/v1/metrics\" will be used."},"profiles_endpoint":{"type":"string","description":"The URL to send profiles to. If omitted the Endpoint + \"/v1development/profiles\" will be used."},"retry_on_failure":{"type":"object","description":"BackOffConfig defines configuration for retrying batches in case of export failure. The current supported strategy is exponential backoff.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to not retry sending batches in case of export failure."},"initial_interval":{"type":"duration","description":"InitialInterval the time to wait after the first failure before retrying."},"max_elapsed_time":{"type":"duration","description":"MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a request/batch. Once this value is reached, the data is discarded. If set to 0, the retries are never stopped."},"max_interval":{"type":"duration","description":"MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`."},"multiplier":{"type":"number","description":"Multiplier is the value multiplied by the backoff interval bounds"},"randomization_factor":{"type":"number","description":"RandomizationFactor is a random factor used to calculate next backoffs Randomized interval = RetryInterval * (1 ± RandomizationFactor)"}}},"sending_queue":{"type":"object","description":"Config defines configuration for queueing and batching incoming requests.","properties":{"batch":{"type":"object","description":"BatchConfig it configures how the requests are consumed from the queue and batch together during consumption.","properties":{"flush_timeout":{"type":"duration","description":"FlushTimeout sets the time after which a batch will be sent regardless of its size."},"max_size":{"type":"number","description":"MaxSize defines the configuration for the maximum size of a batch."},"min_size":{"type":"number","description":"MinSize defines the configuration for the minimum size of a batch."},"partition":{"type":"object","description":"Partition defines the partitioning of the batches configuration.","properties":{"cache_size":{"type":"number","description":"CacheSize is the maximum number of active partition batchers kept in the LRU cache when partitioning is enabled. When the limit is reached, the least recently used partition is flushed and removed. Default is 10000. Must be positive."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the duration a partition may stay empty before it is removed. Keep it above the data arrival interval to avoid churning partitions. Default is 90s. Must be positive."},"metadata_keys":{"type":"string[]","description":"MetadataKeys is a list of client.Metadata keys that will be used to partition the data into batches. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error."}}},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by the batch. If not configured, use the same configuration as the queue. It accepts \"requests\", \"items\", or \"bytes\"."}}},"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error."},"enabled":{"type":"boolean","description":"Enabled indicates whether to not enqueue and batch before exporting."},"num_consumers":{"type":"number","description":"NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.)."},"queue_size":{"type":"number","description":"QueueSize represents the maximum data size allowed for concurrent storage and processing."},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by this component. It accepts \"requests\", \"items\", or \"bytes\"."},"storage":{"type":"component id","description":"StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822"},"wait_for_result":{"type":"boolean","description":"WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration."}}},"traces_endpoint":{"type":"string","description":"The URL to send traces to. If omitted the Endpoint + \"/v1/traces\" will be used."}},"OtlpReceiver":{"protocols":{"type":"object","description":"Protocols is the configuration for the supported protocols, currently gRPC and HTTP (Proto and JSON).","properties":{"grpc":{"type":"object","description":"ServerConfig defines common settings for a gRPC server configuration.","properties":{"dialer":{"type":"object","description":"DialerConfig contains options for connecting to an address.","properties":{"timeout":{"type":"duration","description":"Timeout is the maximum amount of time a dial will wait for a connect to complete. The default is no timeout."}}},"endpoint":{"type":"string","description":"Endpoint configures the address for this network connection. For TCP and UDP networks, the address has the form \"host:port\". The host must be a literal IP address, or a host name that can be resolved to IP addresses. The port must be a literal port number or a service name. If the host is a literal IPv6 address it must be enclosed in square brackets, as in \"[2001:db8::1]:80\" or \"[fe80::1%zone]:80\". The zone specifies the scope of the literal IPv6 address as defined in RFC 4007."},"transport":{"type":"string","description":"Transport to use. Allowed protocols are \"tcp\", \"tcp4\" (IPv4-only), \"tcp6\" (IPv6-only), \"udp\", \"udp4\" (IPv4-only), \"udp6\" (IPv6-only), \"ip\", \"ip4\" (IPv4-only), \"ip6\" (IPv6-only), \"unix\", \"unixgram\", \"unixpacket\" and \"npipe\" (Windows named pipes, Windows-only)."},"auth":{"type":"object","description":"Auth for this receiver","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."}}},"include_metadata":{"type":"boolean","description":"Include propagates the incoming connection's metadata to downstream consumers."},"keepalive":{"type":"object","description":"Keepalive anchor for all the settings related to keepalive.","properties":{"enforcement_policy":{"type":"object","description":"KeepaliveEnforcementPolicy allow configuration of the keepalive.EnforcementPolicy. The same default values as keepalive.EnforcementPolicy are applicable and get applied by the server. See https://godoc.org/google.golang.org/grpc/keepalive#EnforcementPolicy for details."},"server_parameters":{"type":"object","description":"KeepaliveServerParameters allow configuration of the keepalive.ServerParameters. The same default values as keepalive.ServerParameters are applicable and get applied by the server. See https://godoc.org/google.golang.org/grpc/keepalive#ServerParameters for details."}}},"max_concurrent_streams":{"type":"number","description":"MaxConcurrentStreams sets the limit on the number of concurrent streams to each ServerTransport. It has effect only for streaming RPCs."},"max_recv_msg_size_mib":{"type":"number","description":"MaxRecvMsgSizeMiB sets the maximum size (in MiB) of messages accepted by the server."},"middlewares":{"type":"object[]","description":"Middlewares for the gRPC server.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"read_buffer_size":{"type":"number","description":"ReadBufferSize for gRPC server. See grpc.ReadBufferSize. (https://godoc.org/google.golang.org/grpc#ReadBufferSize)."},"tls":{"type":"object","description":"Configures the protocol to use TLS. The default value is nil, which will cause the protocol to not use TLS.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration"},"client_ca_file":{"type":"string","description":"Path to the TLS cert to use by the server to verify a client certificate. (optional) This sets the ClientCAs and ClientAuth to RequireAndVerifyClientCert in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"},"client_ca_file_reload":{"type":"boolean","description":"Reload the ClientCAs file when it is modified (optional, default false)"}}},"write_buffer_size":{"type":"number","description":"WriteBufferSize for gRPC server. See grpc.WriteBufferSize. (https://godoc.org/google.golang.org/grpc#WriteBufferSize)."}}},"http":{"type":"object","properties":{"auth":{"type":"object","description":"Auth for this receiver","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."},"request_params":{"type":"string[]","description":"RequestParameters is a list of parameters that should be extracted from the request and added to the context. When a parameter is found in both the query string and the header, the value from the query string will be used."}}},"compression_algorithms":{"type":"string[]","description":"CompressionAlgorithms configures the list of compression algorithms the server can accept. Default: [\"\", \"gzip\", \"zstd\", \"zlib\", \"snappy\", \"deflate\"]"},"cors":{"type":"object","description":"CORS configures the server for HTTP cross-origin resource sharing (CORS).","properties":{"allowed_headers":{"type":"string[]","description":"AllowedHeaders sets what headers will be allowed in CORS requests. The Accept, Accept-Language, Content-Type, and Content-Language headers are implicitly allowed. If no headers are listed, X-Requested-With will also be accepted by default. Include \"*\" to allow any request header."},"allowed_origins":{"type":"string[]","description":"AllowedOrigins sets the allowed values of the Origin header for HTTP/JSON requests to an OTLP receiver. An origin may contain a wildcard (*) to replace 0 or more characters (e.g., \"http://*.domain.com\", or \"*\" to allow any origin)."},"exposed_headers":{"type":"string[]","description":"ExposedHeaders sets the value of the Access-Control-Expose-Headers response header, indicating which headers are safe to expose to the API of a CORS response."},"max_age":{"type":"number","description":"MaxAge sets the value of the Access-Control-Max-Age response header. Set it to the number of seconds that browsers should cache a CORS preflight response for."}}},"endpoint":{"type":"string","description":"Endpoint configures the listening address for the server."},"include_metadata":{"type":"boolean","description":"IncludeMetadata propagates the client metadata from the incoming requests to the downstream consumers"},"keepalive":{"type":"object","description":"Keepalive settings for the HTTP server.","properties":{"enabled":{"type":"boolean","description":"Set to false to disable HTTP keep-alives. Default is true."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the maximum amount of time to wait for the next request when keep-alives are enabled. If IdleTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout."}}},"max_request_body_size":{"type":"number","description":"MaxRequestBodySize sets the maximum request body size in bytes. Default: 20MiB."},"middlewares":{"type":"object[]","description":"Middlewares are used to add custom functionality to the HTTP server. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"read_header_timeout":{"type":"duration","description":"ReadHeaderTimeout is the amount of time allowed to read request headers. The connection's read deadline is reset after reading the headers and the Handler can decide what is considered too slow for the body. If ReadHeaderTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout."},"read_timeout":{"type":"duration","description":"ReadTimeout is the maximum duration for reading the entire request, including the body. A zero or negative value means there will be no timeout. Because ReadTimeout does not let Handlers make per-request decisions on each request body's acceptable deadline or upload rate, most users will prefer to use ReadHeaderTimeout. It is valid to use them both."},"response_headers":{"type":"map | list","description":"Additional headers attached to each HTTP response sent to the client. Header values are opaque since they may be sensitive.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration"},"client_ca_file":{"type":"string","description":"Path to the TLS cert to use by the server to verify a client certificate. (optional) This sets the ClientCAs and ClientAuth to RequireAndVerifyClientCert in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"},"client_ca_file_reload":{"type":"boolean","description":"Reload the ClientCAs file when it is modified (optional, default false)"}}},"write_timeout":{"type":"duration","description":"WriteTimeout is the maximum duration before timing out writes of the response. It is reset whenever a new request's header is read. Like ReadTimeout, it does not let Handlers make decisions on a per-request basis. A zero or negative value means there will be no timeout."},"logs_url_path":{"type":"string","description":"The URL path to receive logs on. If omitted \"/v1/logs\" will be used."},"metrics_url_path":{"type":"string","description":"The URL path to receive metrics on. If omitted \"/v1/metrics\" will be used."},"traces_url_path":{"type":"string","description":"The URL path to receive traces on. If omitted \"/v1/traces\" will be used."}}}}}},"PprofExtension":{"dialer":{"type":"object","description":"DialerConfig contains options for connecting to an address.","properties":{"timeout":{"type":"duration","description":"Timeout is the maximum amount of time a dial will wait for a connect to complete. The default is no timeout."}}},"endpoint":{"type":"string","description":"Endpoint configures the address for this network connection. The address has the form \"host:port\". The host must be a literal IP address, or a host name that can be resolved to IP addresses. The port must be a literal port number or a service name. If the host is a literal IPv6 address it must be enclosed in square brackets, as in \"[2001:db8::1]:80\" or \"[fe80::1%zone]:80\". The zone specifies the scope of the literal IPv6 address as defined in RFC 4007."},"block_profile_fraction":{"type":"number","description":"Fraction of blocking events that are profiled. A value <= 0 disables profiling. See https://golang.org/pkg/runtime/#SetBlockProfileRate for details."},"mutex_profile_fraction":{"type":"number","description":"Fraction of mutex contention events that are profiled. A value <= 0 disables profiling. See https://golang.org/pkg/runtime/#SetMutexProfileFraction for details."},"save_to_file":{"type":"string","description":"Optional file name to save the CPU profile to. The profiling starts when the Collector starts and is saved to the file when the Collector is terminated."}},"ProbabilisticSamplerProcessor":{"attribute_source":{"type":"string","description":"AttributeSource (logs only) defines where to look for the attribute in from_attribute. The allowed values are `traceID` or `record`. Default is `traceID`."},"fail_closed":{"type":"boolean","description":"FailClosed indicates to not sample data (the processor will fail \"closed\") in case of error, such as failure to parse the tracestate field or missing the randomness attribute. By default, failure cases are sampled (the processor is fails \"open\"). Sampling priority-based decisions are made after FailClosed is processed, making it possible to sample despite errors using priority."},"from_attribute":{"type":"string","description":"FromAttribute (logs only) The optional name of a log record attribute used for sampling purposes, such as a unique log record ID. The value of the attribute is only used if the trace ID is absent or if `attribute_source` is set to `record`."},"hash_seed":{"type":"number","description":"HashSeed allows one to configure the hashing seed. This is important in scenarios where multiple layers of collectors have different sampling rates: if they use the same seed all passing one layer may pass the other even if they have different sampling rates, configuring different seeds avoids that."},"mode":{"type":"string","description":"Mode selects the sampling behavior. Supported values: - \"hash_seed\": the legacy behavior of this processor. Using an FNV hash combined with the HashSeed value, this sampler performs a non-consistent probabilistic downsampling. The number of spans output is expected to equal SamplingPercentage (as a ratio) times the number of spans inpout, assuming good behavior from FNV and good entropy in the hashed attributes or TraceID. - \"equalizing\": Using an OTel-specified consistent sampling mechanism, this sampler selectively reduces the effective sampling probability of arriving spans. This can be useful to select a small fraction of complete traces from a stream with mixed sampling rates. The rate of spans passing through depends on how much sampling has already been applied. If an arriving span was head sampled at the same probability it passes through. If the span arrives with lower probability, a warning is logged because it means this sampler is configured with too large a sampling probability to ensure complete traces. - \"proportional\": Using an OTel-specified consistent sampling mechanism, this sampler reduces the effective sampling probability of each span by `SamplingProbability`."},"sampling_percentage":{"type":"number","description":"SamplingPercentage is the percentage rate at which traces or logs are going to be sampled. Defaults to zero, i.e.: no sample. Values greater or equal 100 are treated as \"sample all traces/logs\"."},"sampling_precision":{"type":"number","description":"SamplingPrecision is how many hex digits of sampling threshold will be encoded, from 1 up to 14. Default is 4. 0 is treated as full precision."},"sampling_priority":{"type":"string","description":"SamplingPriority (logs only) enables using a log record attribute as the sampling priority of the log record."}},"PrometheusExporter":{"auth":{"type":"object","description":"Auth for this receiver","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."},"request_params":{"type":"string[]","description":"RequestParameters is a list of parameters that should be extracted from the request and added to the context. When a parameter is found in both the query string and the header, the value from the query string will be used."}}},"compression_algorithms":{"type":"string[]","description":"CompressionAlgorithms configures the list of compression algorithms the server can accept. Default: [\"\", \"gzip\", \"zstd\", \"zlib\", \"snappy\", \"deflate\"]"},"cors":{"type":"object","description":"CORS configures the server for HTTP cross-origin resource sharing (CORS).","properties":{"allowed_headers":{"type":"string[]","description":"AllowedHeaders sets what headers will be allowed in CORS requests. The Accept, Accept-Language, Content-Type, and Content-Language headers are implicitly allowed. If no headers are listed, X-Requested-With will also be accepted by default. Include \"*\" to allow any request header."},"allowed_origins":{"type":"string[]","description":"AllowedOrigins sets the allowed values of the Origin header for HTTP/JSON requests to an OTLP receiver. An origin may contain a wildcard (*) to replace 0 or more characters (e.g., \"http://*.domain.com\", or \"*\" to allow any origin)."},"exposed_headers":{"type":"string[]","description":"ExposedHeaders sets the value of the Access-Control-Expose-Headers response header, indicating which headers are safe to expose to the API of a CORS response."},"max_age":{"type":"number","description":"MaxAge sets the value of the Access-Control-Max-Age response header. Set it to the number of seconds that browsers should cache a CORS preflight response for."}}},"endpoint":{"type":"string","description":"Endpoint configures the listening address for the server."},"include_metadata":{"type":"boolean","description":"IncludeMetadata propagates the client metadata from the incoming requests to the downstream consumers"},"keepalive":{"type":"object","description":"Keepalive settings for the HTTP server.","properties":{"enabled":{"type":"boolean","description":"Set to false to disable HTTP keep-alives. Default is true."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the maximum amount of time to wait for the next request when keep-alives are enabled. If IdleTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout."}}},"max_request_body_size":{"type":"number","description":"MaxRequestBodySize sets the maximum request body size in bytes. Default: 20MiB."},"middlewares":{"type":"object[]","description":"Middlewares are used to add custom functionality to the HTTP server. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"read_header_timeout":{"type":"duration","description":"ReadHeaderTimeout is the amount of time allowed to read request headers. The connection's read deadline is reset after reading the headers and the Handler can decide what is considered too slow for the body. If ReadHeaderTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout."},"read_timeout":{"type":"duration","description":"ReadTimeout is the maximum duration for reading the entire request, including the body. A zero or negative value means there will be no timeout. Because ReadTimeout does not let Handlers make per-request decisions on each request body's acceptable deadline or upload rate, most users will prefer to use ReadHeaderTimeout. It is valid to use them both."},"response_headers":{"type":"map | list","description":"Additional headers attached to each HTTP response sent to the client. Header values are opaque since they may be sensitive.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"client_ca_file":{"type":"string","description":"Path to the TLS cert to use by the server to verify a client certificate. (optional) This sets the ClientCAs and ClientAuth to RequireAndVerifyClientCert in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"},"client_ca_file_reload":{"type":"boolean","description":"Reload the ClientCAs file when it is modified (optional, default false)"}}},"write_timeout":{"type":"duration","description":"WriteTimeout is the maximum duration before timing out writes of the response. It is reset whenever a new request's header is read. Like ReadTimeout, it does not let Handlers make decisions on a per-request basis. A zero or negative value means there will be no timeout."},"add_metric_suffixes":{"type":"boolean","description":"AddMetricSuffixes controls whether suffixes are added to metric names. Defaults to true. Deprecated: Use TranslationStrategy instead. This setting is ignored when TranslationStrategy is explicitly set.","deprecated":true},"const_labels":{"type":"unknown","description":"ConstLabels are values that are applied for every exported metric."},"enable_open_metrics":{"type":"boolean","description":"EnableOpenMetrics enables the use of the OpenMetrics encoding option for the prometheus exporter."},"metric_expiration":{"type":"duration","description":"MetricExpiration defines how long metrics are kept without updates"},"namespace":{"type":"string","description":"Namespace if set, exports metrics under the provided value."},"resource_constant_labels":{"type":"object","description":"ResourceConstantLabels controls which resource attributes are added as constant labels on Prometheus metrics.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to convert resource attributes to telemetry attributes. Default is `false`. Deprecated: Use Included and Excluded instead. To convert all resource attributes, set Included to [\"*\"].","deprecated":true},"exclude_service_attributes":{"type":"boolean","description":"ExcludeServiceAttributes indicates whether to exclude `service.name`, `service.instance.id` and `service.namespace` resource attributes from being converted to metric attributes. Default is `false`. When set to `true`, these attributes will not be added to metric labels since they are already mapped to Prometheus `job` and `instance` labels respectively. Deprecated: Use Excluded instead. To exclude service attributes, add \"service.name\", \"service.instance.id\", and \"service.namespace\" to Excluded.","deprecated":true},"excluded":{"type":"string[]","description":"Excluded represents a list of patterns (supporting wildcards '*' and '?') of resource attribute keys to exclude, overriding anything that matched Included. If Included is empty, setting Excluded implies including all non-excluded attributes."},"included":{"type":"string[]","description":"Included represents a list of patterns (supporting wildcards '*' and '?') of resource attribute keys to include. Wildcards '*' and '?' match any sequence of characters and any single character respectively (and cannot be escaped). Note: if Included is empty and Excluded is non-empty, all resource attributes except those matched by Excluded will be included."}}},"resource_to_telemetry_conversion":{"type":"object","description":"ResourceToTelemetrySettings defines configuration for converting resource attributes to metric labels. Deprecated: Use ResourceConstantLabels instead.","deprecated":true,"properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to convert resource attributes to telemetry attributes. Default is `false`. Deprecated: Use Included and Excluded instead. To convert all resource attributes, set Included to [\"*\"].","deprecated":true},"exclude_service_attributes":{"type":"boolean","description":"ExcludeServiceAttributes indicates whether to exclude `service.name`, `service.instance.id` and `service.namespace` resource attributes from being converted to metric attributes. Default is `false`. When set to `true`, these attributes will not be added to metric labels since they are already mapped to Prometheus `job` and `instance` labels respectively. Deprecated: Use Excluded instead. To exclude service attributes, add \"service.name\", \"service.instance.id\", and \"service.namespace\" to Excluded.","deprecated":true},"excluded":{"type":"string[]","description":"Excluded represents a list of patterns (supporting wildcards '*' and '?') of resource attribute keys to exclude, overriding anything that matched Included. If Included is empty, setting Excluded implies including all non-excluded attributes."},"included":{"type":"string[]","description":"Included represents a list of patterns (supporting wildcards '*' and '?') of resource attribute keys to include. Wildcards '*' and '?' match any sequence of characters and any single character respectively (and cannot be escaped). Note: if Included is empty and Excluded is non-empty, all resource attributes except those matched by Excluded will be included."}}},"send_timestamps":{"type":"boolean","description":"SendTimestamps will send the underlying scrape timestamp with the export"},"sending_queue":{"type":"object","description":"QueueBatchConfig defines the queue configuration.","properties":{"batch":{"type":"object","description":"BatchConfig it configures how the requests are consumed from the queue and batch together during consumption.","properties":{"flush_timeout":{"type":"duration","description":"FlushTimeout sets the time after which a batch will be sent regardless of its size."},"max_size":{"type":"number","description":"MaxSize defines the configuration for the maximum size of a batch."},"min_size":{"type":"number","description":"MinSize defines the configuration for the minimum size of a batch."},"partition":{"type":"object","description":"Partition defines the partitioning of the batches configuration.","properties":{"cache_size":{"type":"number","description":"CacheSize is the maximum number of active partition batchers kept in the LRU cache when partitioning is enabled. When the limit is reached, the least recently used partition is flushed and removed. Default is 10000. Must be positive."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the duration a partition may stay empty before it is removed. Keep it above the data arrival interval to avoid churning partitions. Default is 90s. Must be positive."},"metadata_keys":{"type":"string[]","description":"MetadataKeys is a list of client.Metadata keys that will be used to partition the data into batches. If this setting is empty, a single batcher instance will be used. When this setting is not empty, one batcher will be used per distinct combination of values for the listed metadata keys. Empty value and unset metadata are treated as distinct cases. Entries are case-insensitive. Duplicated entries will trigger a validation error."}}},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by the batch. If not configured, use the same configuration as the queue. It accepts \"requests\", \"items\", or \"bytes\"."}}},"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's TotalSize limit is reached. If true, the component will wait for space; otherwise, operations will immediately return a retryable error."},"enabled":{"type":"boolean","description":"Enabled indicates whether to not enqueue and batch before exporting."},"num_consumers":{"type":"number","description":"NumConsumers is the maximum number of concurrent consumers from the queue. This applies across all different optional configurations from above (e.g. wait_for_result, block_on_overflow, storage, etc.)."},"queue_size":{"type":"number","description":"QueueSize represents the maximum data size allowed for concurrent storage and processing."},"sizer":{"type":"string","description":"Sizer determines the type of size measurement used by this component. It accepts \"requests\", \"items\", or \"bytes\"."},"storage":{"type":"component id","description":"StorageID if not empty, enables the persistent storage and uses the component specified as a storage extension for the persistent queue. TODO: This will be changed to Optional when available. See https://github.com/open-telemetry/opentelemetry-collector/issues/13822"},"wait_for_result":{"type":"boolean","description":"WaitForResult determines if incoming requests are blocked until the request is processed or not. Currently, this option is not available when persistent queue is configured using the storage configuration."}}},"translation_strategy":{"type":"string","description":"TranslationStrategy controls how OTLP metric and attribute names are translated into Prometheus metric and label names. When set, this takes precedence over AddMetricSuffixes."},"without_scope_info":{"type":"boolean","description":"WithoutScopeInfo controls the addition of labels for the instrumentation scope."}},"PrometheusReceiver":{"api_server":{"type":"object","description":"APIServer has the settings to enable the receiver to host the Prometheus API server in agent mode. This allows the user to call the endpoint to get the config, service discovery, and targets for debugging purposes.","properties":{"enabled":{"type":"boolean"},"max_connections":{"type":"number"},"server_config":{"type":"object","description":"ServerConfig defines settings for creating an HTTP server.","properties":{"auth":{"type":"object","description":"Auth for this receiver","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."},"request_params":{"type":"string[]","description":"RequestParameters is a list of parameters that should be extracted from the request and added to the context. When a parameter is found in both the query string and the header, the value from the query string will be used."}}},"compression_algorithms":{"type":"string[]","description":"CompressionAlgorithms configures the list of compression algorithms the server can accept. Default: [\"\", \"gzip\", \"zstd\", \"zlib\", \"snappy\", \"deflate\"]"},"cors":{"type":"object","description":"CORS configures the server for HTTP cross-origin resource sharing (CORS).","properties":{"allowed_headers":{"type":"string[]","description":"AllowedHeaders sets what headers will be allowed in CORS requests. The Accept, Accept-Language, Content-Type, and Content-Language headers are implicitly allowed. If no headers are listed, X-Requested-With will also be accepted by default. Include \"*\" to allow any request header."},"allowed_origins":{"type":"string[]","description":"AllowedOrigins sets the allowed values of the Origin header for HTTP/JSON requests to an OTLP receiver. An origin may contain a wildcard (*) to replace 0 or more characters (e.g., \"http://*.domain.com\", or \"*\" to allow any origin)."},"exposed_headers":{"type":"string[]","description":"ExposedHeaders sets the value of the Access-Control-Expose-Headers response header, indicating which headers are safe to expose to the API of a CORS response."},"max_age":{"type":"number","description":"MaxAge sets the value of the Access-Control-Max-Age response header. Set it to the number of seconds that browsers should cache a CORS preflight response for."}}},"endpoint":{"type":"string","description":"Endpoint configures the listening address for the server."},"include_metadata":{"type":"boolean","description":"IncludeMetadata propagates the client metadata from the incoming requests to the downstream consumers"},"keepalive":{"type":"object","description":"Keepalive settings for the HTTP server.","properties":{"enabled":{"type":"boolean","description":"Set to false to disable HTTP keep-alives. Default is true."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the maximum amount of time to wait for the next request when keep-alives are enabled. If IdleTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout."}}},"max_request_body_size":{"type":"number","description":"MaxRequestBodySize sets the maximum request body size in bytes. Default: 20MiB."},"middlewares":{"type":"object[]","description":"Middlewares are used to add custom functionality to the HTTP server. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"read_header_timeout":{"type":"duration","description":"ReadHeaderTimeout is the amount of time allowed to read request headers. The connection's read deadline is reset after reading the headers and the Handler can decide what is considered too slow for the body. If ReadHeaderTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout."},"read_timeout":{"type":"duration","description":"ReadTimeout is the maximum duration for reading the entire request, including the body. A zero or negative value means there will be no timeout. Because ReadTimeout does not let Handlers make per-request decisions on each request body's acceptable deadline or upload rate, most users will prefer to use ReadHeaderTimeout. It is valid to use them both."},"response_headers":{"type":"map | list","description":"Additional headers attached to each HTTP response sent to the client. Header values are opaque since they may be sensitive.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration"},"client_ca_file":{"type":"string","description":"Path to the TLS cert to use by the server to verify a client certificate. (optional) This sets the ClientCAs and ClientAuth to RequireAndVerifyClientCert in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"},"client_ca_file_reload":{"type":"boolean","description":"Reload the ClientCAs file when it is modified (optional, default false)"}}},"write_timeout":{"type":"duration","description":"WriteTimeout is the maximum duration before timing out writes of the response. It is reset whenever a new request's header is read. Like ReadTimeout, it does not let Handlers make decisions on a per-request basis. A zero or negative value means there will be no timeout."}}}}},"config":{"type":"object","description":"PromConfig is a redeclaration of promconfig.Config because we need custom unmarshaling as prometheus \"config\" uses `yaml` tags.","properties":{"global":{"type":"object","description":"Default values applied to all scrape jobs.","properties":{"always_scrape_classic_histograms":{"type":"boolean","description":"Whether to always scrape classic histograms alongside native histograms."},"body_size_limit":{"type":"string","description":"Maximum size of uncompressed response body. E.g. \"100MB\". 0 means no limit."},"convert_classic_histograms_to_nhcb":{"type":"boolean","description":"Whether to convert classic histograms to native histogram custom buckets."},"evaluation_interval":{"type":"duration","description":"How frequently to evaluate rules. Default is 1m."},"external_labels":{"type":"object","description":"Labels added to all time series and alerts when communicating with external systems."},"extra_scrape_metrics":{"type":"boolean","description":"Whether to add extra metrics to each scrape result (scrape_body_size_bytes, etc.)."},"keep_dropped_targets":{"type":"number","description":"How many dropped targets to keep for UI purposes. 0 means no limit."},"label_limit":{"type":"number","description":"Per-scrape limit on number of labels per sample. 0 means no limit."},"label_name_length_limit":{"type":"number","description":"Per-scrape limit on label name length. 0 means no limit."},"label_value_length_limit":{"type":"number","description":"Per-scrape limit on label value length. 0 means no limit."},"metric_name_escaping_scheme":{"type":"\"allow-utf-8\" | \"underscore\" | \"dots\" | \"values\"","description":"Escaping scheme for non-standard metric names."},"metric_name_validation_scheme":{"type":"\"utf8\" | \"legacy\"","description":"Validation scheme for metric names."},"query_log_file":{"type":"string","description":"File to which PromQL queries are logged."},"rule_query_offset":{"type":"duration","description":"Delay rule evaluation relative to the query timestamp."},"sample_limit":{"type":"number","description":"Per-scrape limit on number of accepted samples. 0 means no limit."},"scrape_failure_log_file":{"type":"string","description":"File to which scrape failures are logged."},"scrape_interval":{"type":"duration","description":"How frequently to scrape targets. Default is 1m."},"scrape_native_histograms":{"type":"boolean","description":"Whether to scrape native histograms."},"scrape_protocols":{"type":"\"PrometheusProto\" | \"PrometheusText0.0.4\" | \"PrometheusText1.0.0\" | \"OpenMetricsText0.0.1\" | \"OpenMetricsText1.0.0\"[]","description":"Accepted content-type negotiation protocols in preference order."},"scrape_timeout":{"type":"duration","description":"Timeout per scrape request. Default is 10s."},"target_limit":{"type":"number","description":"Per-scrape limit on number of targets. 0 means no limit."}}},"otlp":{"type":"object","description":"Configuration for OTLP metric translation.","properties":{"convert_histograms_to_nhcb":{"type":"boolean","description":"Whether to convert OTLP histograms to native histogram custom buckets."},"ignore_resource_attributes":{"type":"string[]","description":"Resource attributes to exclude from promotion."},"keep_identifying_resource_attributes":{"type":"boolean","description":"Whether to keep identifying resource attributes."},"label_name_preserve_multiple_underscores":{"type":"boolean","description":"Whether to preserve multiple consecutive underscores in label names."},"label_name_underscore_sanitization":{"type":"boolean","description":"Whether to sanitize label names by replacing non-alphanumeric characters with underscores."},"promote_all_resource_attributes":{"type":"boolean","description":"Promote all resource attributes to metric labels."},"promote_resource_attributes":{"type":"string[]","description":"Specific resource attributes to promote to metric labels."},"promote_scope_metadata":{"type":"boolean","description":"Whether to promote instrumentation scope metadata to metric labels."},"translation_strategy":{"type":"string","description":"Strategy for translating OTLP metrics to Prometheus format."}}},"runtime":{"type":"object","description":"Runtime configuration.","properties":{"gogc":{"type":"number","description":"Target percentage for Go GC. Default is 75."}}},"scrape_configs":{"type":"object[]","properties":{"always_scrape_classic_histograms":{"type":"boolean"},"authorization":{"type":"object","description":"HTTP Authorization header credentials.","properties":{"credentials":{"type":"string","description":"Credentials value (mutually exclusive with credentials_file/credentials_ref)."},"credentials_file":{"type":"string","description":"File containing credentials."},"credentials_ref":{"type":"string","description":"Reference to credentials in the credential store."},"type":{"type":"string","description":"Authorization type. Default is \"Bearer\"."}}},"azure_sd_configs":{"type":"object[]","description":"Azure service discovery configurations."},"basic_auth":{"type":"object","description":"HTTP Basic authentication credentials.","properties":{"password":{"type":"string"},"password_file":{"type":"string","description":"File containing the password."},"password_ref":{"type":"string","description":"Reference to a password in the credential store."},"username":{"type":"string"},"username_file":{"type":"string","description":"File containing the username."},"username_ref":{"type":"string","description":"Reference to a username in the credential store."}}},"bearer_token":{"type":"string","description":"Bearer token for authentication (mutually exclusive with bearer_token_file)."},"bearer_token_file":{"type":"string","description":"File containing bearer token (mutually exclusive with bearer_token)."},"body_size_limit":{"type":"string","description":"Maximum response body size. E.g. \"100MB\". 0 means no limit."},"consul_sd_configs":{"type":"object[]","description":"HashiCorp Consul service discovery configurations."},"convert_classic_histograms_to_nhcb":{"type":"boolean"},"digitalocean_sd_configs":{"type":"object[]"},"dns_sd_configs":{"type":"object[]","description":"DNS SRV record service discovery configurations."},"ec2_sd_configs":{"type":"object[]","description":"AWS EC2 service discovery configurations."},"enable_compression":{"type":"boolean","description":"Whether to request compressed responses. Default is true."},"enable_http2":{"type":"boolean","description":"Whether to use HTTP/2. Default is true."},"eureka_sd_configs":{"type":"object[]"},"extra_scrape_metrics":{"type":"boolean"},"fallback_scrape_protocol":{"type":"\"PrometheusProto\" | \"PrometheusText0.0.4\" | \"PrometheusText1.0.0\" | \"OpenMetricsText0.0.1\" | \"OpenMetricsText1.0.0\"","description":"Fallback protocol if negotiation fails."},"file_sd_configs":{"type":"object[]","description":"File-based service discovery configurations."},"follow_redirects":{"type":"boolean","description":"Whether to follow HTTP redirects. Default is true."},"gce_sd_configs":{"type":"object[]","description":"Google Compute Engine service discovery configurations."},"hetzner_sd_configs":{"type":"object[]"},"honor_labels":{"type":"boolean","description":"Whether to honor labels from the scraped target over Prometheus-set labels."},"honor_timestamps":{"type":"boolean","description":"Whether to honor timestamps from the scraped target."},"http_headers":{"type":"object","description":"Custom HTTP headers sent during scraping."},"http_sd_configs":{"type":"object[]","description":"HTTP endpoint service discovery configurations."},"ionos_sd_configs":{"type":"object[]"},"job_name":{"type":"string","description":"Name of the scrape job. Must be unique across all scrape configs."},"keep_dropped_targets":{"type":"number"},"kubernetes_sd_configs":{"type":"object[]","description":"Kubernetes service discovery configurations."},"label_limit":{"type":"number"},"label_name_length_limit":{"type":"number"},"label_value_length_limit":{"type":"number"},"linode_sd_configs":{"type":"object[]"},"marathon_sd_configs":{"type":"object[]"},"metric_name_escaping_scheme":{"type":"\"allow-utf-8\" | \"underscore\" | \"dots\" | \"values\""},"metric_name_validation_scheme":{"type":"\"utf8\" | \"legacy\""},"metric_relabel_configs":{"type":"object[]","description":"List of relabel configs applied to scraped samples.","properties":{"action":{"type":"\"replace\" | \"lowercase\" | \"uppercase\" | \"keep\" | \"drop\" | \"keepequal\" | \"dropequal\" | \"hashmod\" | \"labelmap\" | \"labeldrop\" | \"labelkeep\" | \"templatereplace\"","description":"Action to perform. Default is \"replace\"."},"if":{"type":"string","description":"PromQL metric selector used as a pre-filter (native histograms only)."},"labels":{"type":"object","description":"Labels to set for the labelkeep/labeldrop/labelmap actions."},"modulus":{"type":"number","description":"Modulus for the hashmod action."},"regex":{"type":"string","description":"Regular expression matched against the concatenated source label values. Default is \"(.*)\"."},"replacement":{"type":"string","description":"Replacement value for the target label. Default is \"$1\"."},"separator":{"type":"string","description":"Separator between source label values. Default is \";\"."},"source_labels":{"type":"string[]","description":"Labels whose values are concatenated to form the input to the regex."},"target_label":{"type":"string","description":"Label to write the replacement value into."}}},"metrics_path":{"type":"string","description":"HTTP path for scraping. Default is /metrics."},"moby_sd_configs":{"type":"object[]","description":"Docker/Moby service discovery configurations."},"native_histogram_bucket_limit":{"type":"number","description":"Maximum number of buckets per native histogram sample."},"native_histogram_min_bucket_factor":{"type":"number","description":"Minimum bucket factor for native histograms."},"no_proxy":{"type":"string","description":"Comma-separated list of hosts to bypass the proxy."},"nomad_sd_configs":{"type":"object[]"},"oauth2":{"type":"object","description":"OAuth 2.0 authentication configuration.","properties":{"audience":{"type":"string","description":"JWT audience."},"claims":{"type":"object","description":"Additional JWT claims."},"client_certificate_key":{"type":"string"},"client_certificate_key_file":{"type":"string"},"client_certificate_key_id":{"type":"string"},"client_certificate_key_ref":{"type":"string"},"client_id":{"type":"string"},"client_secret":{"type":"string"},"client_secret_file":{"type":"string"},"client_secret_ref":{"type":"string"},"endpoint_params":{"type":"object","description":"Additional parameters for the token endpoint."},"grant_type":{"type":"string","description":"OAuth2 grant type. Default is \"client_credentials\"."},"iss":{"type":"string","description":"JWT issuer."},"no_proxy":{"type":"string"},"proxy_connect_header":{"type":"object"},"proxy_from_environment":{"type":"boolean"},"proxy_url":{"type":"string"},"scopes":{"type":"string[]","description":"OAuth2 scopes."},"signature_algorithm":{"type":"string"},"tls_config":{"type":"object","description":"TLS client configuration."},"token_url":{"type":"string","description":"URL for fetching the access token."}}},"openstack_sd_configs":{"type":"object[]"},"outscale_sd_configs":{"type":"object[]"},"ovhcloud_sd_configs":{"type":"object[]"},"params":{"type":"object","description":"HTTP URL query parameters added to every scrape."},"proxy_connect_header":{"type":"object","description":"Headers sent to the proxy during CONNECT requests."},"proxy_from_environment":{"type":"boolean","description":"Whether to use proxy settings from environment variables."},"proxy_url":{"type":"string","description":"HTTP proxy URL."},"puppetdb_sd_configs":{"type":"object[]"},"relabel_configs":{"type":"object[]","description":"List of relabel configs applied to target labels before scraping.","properties":{"action":{"type":"\"replace\" | \"lowercase\" | \"uppercase\" | \"keep\" | \"drop\" | \"keepequal\" | \"dropequal\" | \"hashmod\" | \"labelmap\" | \"labeldrop\" | \"labelkeep\" | \"templatereplace\"","description":"Action to perform. Default is \"replace\"."},"if":{"type":"string","description":"PromQL metric selector used as a pre-filter (native histograms only)."},"labels":{"type":"object","description":"Labels to set for the labelkeep/labeldrop/labelmap actions."},"modulus":{"type":"number","description":"Modulus for the hashmod action."},"regex":{"type":"string","description":"Regular expression matched against the concatenated source label values. Default is \"(.*)\"."},"replacement":{"type":"string","description":"Replacement value for the target label. Default is \"$1\"."},"separator":{"type":"string","description":"Separator between source label values. Default is \";\"."},"source_labels":{"type":"string[]","description":"Labels whose values are concatenated to form the input to the regex."},"target_label":{"type":"string","description":"Label to write the replacement value into."}}},"sample_limit":{"type":"number"},"scaleway_sd_configs":{"type":"object[]"},"scheme":{"type":"\"http\" | \"https\"","description":"HTTP scheme for scraping. Default is http."},"scrape_failure_log_file":{"type":"string"},"scrape_interval":{"type":"duration","description":"Override for global scrape_interval."},"scrape_native_histograms":{"type":"boolean"},"scrape_protocols":{"type":"\"PrometheusProto\" | \"PrometheusText0.0.4\" | \"PrometheusText1.0.0\" | \"OpenMetricsText0.0.1\" | \"OpenMetricsText1.0.0\"[]"},"scrape_timeout":{"type":"duration","description":"Override for global scrape_timeout."},"stackit_sd_configs":{"type":"object[]"},"static_configs":{"type":"object[]","description":"List of statically configured targets.","properties":{"labels":{"type":"object","description":"Labels assigned to all metrics scraped from these targets."},"targets":{"type":"string[]","description":"Targets in host:port format (scheme and path from the job config are used)."}}},"target_limit":{"type":"number"},"tls_config":{"type":"object","description":"TLS client configuration.","properties":{"ca":{"type":"string","description":"CA certificate as a string (mutually exclusive with ca_file/ca_ref)."},"ca_file":{"type":"string","description":"Path to the CA certificate file."},"ca_ref":{"type":"string","description":"Reference to a CA certificate in the credential store."},"cert":{"type":"string","description":"Client certificate as a string (mutually exclusive with cert_file/cert_ref)."},"cert_file":{"type":"string","description":"Path to the client certificate file."},"cert_ref":{"type":"string","description":"Reference to a client certificate in the credential store."},"insecure_skip_verify":{"type":"boolean","description":"Whether to skip TLS certificate verification."},"key":{"type":"string","description":"Client private key as a string (mutually exclusive with key_file/key_ref)."},"key_file":{"type":"string","description":"Path to the client private key file."},"key_ref":{"type":"string","description":"Reference to a client private key in the credential store."},"max_version":{"type":"string","description":"Maximum TLS version. E.g. \"TLS13\"."},"min_version":{"type":"string","description":"Minimum TLS version. E.g. \"TLS12\"."},"server_name":{"type":"string","description":"Server name for SNI verification (overrides the hostname in the URL)."}}},"track_timestamps_staleness":{"type":"boolean","description":"Whether to track staleness of scraped timestamps."},"triton_sd_configs":{"type":"object[]"},"uyuni_sd_configs":{"type":"object[]"},"vultr_sd_configs":{"type":"object[]"},"xds_sd_configs":{"type":"object[]","description":"xDS (Envoy) service discovery configurations."},"zookeeper_sd_configs":{"type":"object[]"}}},"storage":{"type":"object","description":"Storage configuration.","properties":{"exemplars":{"type":"object","description":"Exemplar storage configuration.","properties":{"max_exemplars":{"type":"number","description":"Maximum number of exemplars stored in memory. 0 disables exemplar storage."}}},"tsdb":{"type":"object","description":"TSDB storage configuration.","properties":{"out_of_order_time_window":{"type":"duration","description":"Time window for accepting out-of-order samples."},"retention":{"type":"object","description":"TSDB data retention configuration."},"stale_series_compaction_threshold":{"type":"number","description":"Fraction of chunks that must be stale to trigger compaction."}}}}},"tracing":{"type":"object","description":"OTLP tracing configuration for Prometheus internal traces.","properties":{"client_type":{"type":"\"http\" | \"grpc\"","description":"Transport protocol for trace export. Default is grpc."},"compression":{"type":"\"gzip\"","description":"Compression for trace export."},"endpoint":{"type":"string","description":"OTLP endpoint to send traces to."},"headers":{"type":"object","description":"HTTP headers sent with trace requests."},"insecure":{"type":"boolean","description":"Whether to skip TLS for the trace endpoint."},"sampling_fraction":{"type":"number","description":"Fraction of traces to sample. 0 disables tracing. 1 enables full tracing."},"timeout":{"type":"duration","description":"Timeout for trace export requests."},"tls_config":{"type":"object","description":"TLS client configuration.","properties":{"ca":{"type":"string","description":"CA certificate as a string (mutually exclusive with ca_file/ca_ref)."},"ca_file":{"type":"string","description":"Path to the CA certificate file."},"ca_ref":{"type":"string","description":"Reference to a CA certificate in the credential store."},"cert":{"type":"string","description":"Client certificate as a string (mutually exclusive with cert_file/cert_ref)."},"cert_file":{"type":"string","description":"Path to the client certificate file."},"cert_ref":{"type":"string","description":"Reference to a client certificate in the credential store."},"insecure_skip_verify":{"type":"boolean","description":"Whether to skip TLS certificate verification."},"key":{"type":"string","description":"Client private key as a string (mutually exclusive with key_file/key_ref)."},"key_file":{"type":"string","description":"Path to the client private key file."},"key_ref":{"type":"string","description":"Reference to a client private key in the credential store."},"max_version":{"type":"string","description":"Maximum TLS version. E.g. \"TLS13\"."},"min_version":{"type":"string","description":"Minimum TLS version. E.g. \"TLS12\"."},"server_name":{"type":"string","description":"Server name for SNI verification (overrides the hostname in the URL)."}}}}}}},"discovery_reload_on_startup":{"type":"boolean","description":"DiscoveryReloadOnStartup enables discovering targets immediately on start up as opposed to waiting for the configured interval before initializing the scrape pools."},"initial_scrape_offset":{"type":"duration","description":"InitialScrapeOffset adds a fixed delay before the initial scrape of targets. This duration is applied on top of the receiver's internal load balancing offset. It avoids readiness races and backend rate limits immediately after startup."},"scrape_on_shutdown":{"type":"boolean","description":"ScrapeOnShutdown enables a final scrape before the receiver closes. NOTE: This final scrape ignores the configured scrape interval."},"target_allocator":{"type":"object","properties":{"auth":{"type":"object","description":"Auth configuration for outgoing HTTP calls.","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."}}},"compression":{"type":"string","description":"The compression key for supported compression types within collector."},"compression_params":{"type":"object","description":"Advanced configuration options for the Compression","properties":{"level":{"type":"number"}}},"cookies":{"type":"unknown","description":"Cookies configures the cookie management of the HTTP client."},"endpoint":{"type":"string","description":"The target URL to send data to (e.g.: http://some.url:9411/v1/traces)."},"force_attempt_http2":{"type":"boolean","description":"Enabling ForceAttemptHTTP2 forces the HTTP transport to use the HTTP/2 protocol. By default, this is set to true. NOTE: HTTP/2 does not support settings such as MaxConnsPerHost, MaxIdleConnsPerHost and MaxIdleConns."},"headers":{"type":"map | list","description":"Additional headers attached to each HTTP request sent by the client. Existing header values are overwritten if collision happens. Header values are opaque since they may be sensitive.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"http2_ping_timeout":{"type":"duration","description":"HTTP2PingTimeout if there's no response to the ping within the configured value, the connection will be closed. If not set or set to 0, it defaults to 15s."},"http2_read_idle_timeout":{"type":"duration","description":"This is needed in case you run into https://github.com/golang/go/issues/59690 https://github.com/golang/go/issues/36026 HTTP2ReadIdleTimeout if the connection has been idle for the configured value send a ping frame for health check 0s means no health check will be performed."},"keepalive":{"type":"object","description":"Keepalive settings for the HTTP client.","properties":{"enabled":{"type":"boolean","description":"Set to false to disable HTTP keep-alives. Default is true."},"idle_conn_timeout":{"type":"duration","description":"IdleConnTimeout is the maximum amount of time an idle (keep-alive) connection will remain open before closing itself. Default is 90 seconds."},"max_idle_conns":{"type":"number","description":"MaxIdleConns is used to set a limit to the maximum idle HTTP connections the client can keep open. Default is 100. Zero means no limit."},"max_idle_conns_per_host":{"type":"number","description":"MaxIdleConnsPerHost is used to set a limit to the maximum idle HTTP connections the host can keep open. If zero, net/http.DefaultMaxIdleConnsPerHost is used."}}},"max_conns_per_host":{"type":"number","description":"MaxConnsPerHost limits the total number of connections per host, including connections in the dialing, active, and idle states. Default is 0 (unlimited)."},"middlewares":{"type":"object[]","description":"Middlewares are used to add custom functionality to the HTTP client. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"proxy_url":{"type":"string","description":"ProxyURL setting for the collector"},"read_buffer_size":{"type":"number","description":"ReadBufferSize for HTTP client. See http.Transport.ReadBufferSize. Default is 0."},"timeout":{"type":"duration","description":"Timeout parameter configures `http.Client.Timeout`. Default is 0 (unlimited)."},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"insecure":{"type":"boolean","description":"In gRPC and HTTP when set to true, this is used to disable the client transport security. See https://godoc.org/google.golang.org/grpc#WithInsecure for gRPC. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional, default false)"},"insecure_skip_verify":{"type":"boolean","description":"InsecureSkipVerify will enable TLS but not verify the certificate."},"server_name_override":{"type":"string","description":"ServerName requested by client for virtual hosting. This sets the ServerName in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"}}},"write_buffer_size":{"type":"number","description":"WriteBufferSize for HTTP client. See http.Transport.WriteBufferSize. Default is 0."},"collector_id":{"type":"string"},"http_scrape_config":{"type":"unknown"},"http_sd_config":{"type":"unknown","description":"PromHTTPSDConfig is a redeclaration of promHTTP.SDConfig because we need custom unmarshaling as prometheus \"config\" uses `yaml` tags."},"interval":{"type":"duration"}}},"trim_metric_suffixes":{"type":"boolean"}},"RedactionProcessor":{"allow_all_keys":{"type":"boolean","description":"AllowAllKeys is a flag to allow all span attribute keys. Setting this to true disables the AllowedKeys list. The list of BlockedValues is applied regardless. If you just want to block values, set this to true."},"allowed_keys":{"type":"string[]","description":"AllowedKeys is a list of allowed span attribute keys. Span attributes not on the list are removed. The list fails closed if it's empty. To allow all keys, you should explicitly set AllowAllKeys"},"allowed_values":{"type":"string[]","description":"AllowedValues is a list of regular expressions for allowing values of blocked span attributes. Values that match are not masked."},"blocked_key_patterns":{"type":"string[]","description":"BlockedKeyPatterns is a list of blocked span attribute key patterns. Span attributes matching the regexes on the list are masked."},"blocked_values":{"type":"string[]","description":"BlockedValues is a list of regular expressions for blocking values of allowed span attributes. Values that match are masked."},"db_sanitizer":{"type":"object","description":"DBSanitizer is a flag to enable database query sanitization.","properties":{"es":{"type":"object","properties":{"attributes":{"type":"string[]","description":"Attributes specifies which attribute keys to apply Elasticsearch sanitization to. If empty, Elasticsearch sanitization is applied to all string values in log bodies but not to span/metric attributes"},"enabled":{"type":"boolean"}}},"memcached":{"type":"object","properties":{"attributes":{"type":"string[]","description":"Attributes specifies which attribute keys to apply Memcached sanitization to. If empty, Memcached sanitization is applied to all string values in log bodies but not to span/metric attributes"},"enabled":{"type":"boolean"}}},"mongo":{"type":"object","properties":{"attributes":{"type":"string[]","description":"Attributes specifies which attribute keys to apply MongoDB sanitization to. If empty, MongoDB sanitization is applied to all string values in log bodies but not to span/metric attributes"},"enabled":{"type":"boolean"}}},"opensearch":{"type":"object","properties":{"attributes":{"type":"string[]","description":"Attributes specifies which attribute keys to apply OpenSearch sanitization to. If empty, OpenSearch sanitization is applied to all string values in log bodies but not to span/metric attributes"},"enabled":{"type":"boolean"}}},"redis":{"type":"object","properties":{"attributes":{"type":"string[]","description":"Attributes specifies which attribute keys to apply Redis sanitization to. If empty, Redis sanitization is applied to all string values in log bodies but not to span/metric attributes"},"enabled":{"type":"boolean"}}},"sanitize_span_name":{"type":"boolean"},"sql":{"type":"object","properties":{"attributes":{"type":"string[]","description":"Attributes specifies which attribute keys to apply SQL sanitization to. If empty, SQL sanitization is applied to all string values in log bodies but not to span/metric attributes"},"enabled":{"type":"boolean"}}},"valkey":{"type":"object","properties":{"attributes":{"type":"string[]","description":"Attributes specifies which attribute keys to apply Valkey sanitization to. If empty, Valkey sanitization is applied to all string values in log bodies but not to span/metric attributes"},"enabled":{"type":"boolean"}}}}},"hash_function":{"type":"string","description":"HashFunction defines the function for hashing the values instead of masking them with a fixed string. By default, no hash function is used and masking with a fixed string is performed."},"hmac_key":{"type":"string","description":"HMACKey is the secret key used for HMAC hashing when HashFunction is set to hmac-sha256 or hmac-sha512. This should be loaded from a secure source like environment variables. Minimum length: 32 bytes for HMAC-SHA256, 64 bytes for HMAC-SHA512."},"ignored_key_patterns":{"type":"string[]","description":"IgnoredKeyPatterns is a list of attribute key patterns (regex) that are not redacted. attributes matching any of these patterns are allowed to pass through the filter without their values being checked or modified."},"ignored_keys":{"type":"string[]","description":"IgnoredKeys is a list of span attribute keys that are not redacted. Span attributes in this list are allowed to pass through the filter without being changed or removed."},"redact_all_types":{"type":"boolean","description":"RedactAllTypes of attributes, including those that are not string, by converting to a string representation. By default only string values are redacted."},"summary":{"type":"string","description":"Summary controls the verbosity level of the diagnostic attributes that the processor adds to the spans when it redacts or masks other attributes. In some contexts a list of redacted attributes leaks information, while it is valuable when integrating and testing a new configuration. Possible values are `debug`, `info`, and `silent`."},"url_sanitizer":{"type":"object","description":"URLSanitization is a flag to sanitize URLs by removing UUIDs, timestamps, and other non-essential information","properties":{"attributes":{"type":"string[]","description":"Attributes is the list of attributes that will be sanitized."},"enabled":{"type":"boolean"},"sanitize_span_name":{"type":"boolean","description":"SanitizeSpanName controls whether span names should be sanitized."}}}},"ResourceDetectionProcessor":{"akamai":{"type":"object","description":"AkamaiConfig contains user-specified configurations for the akamai detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for akamaidetector resource attributes.","properties":{"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.account.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.image.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.image.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.image.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.image.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.type resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"aks":{"type":"object","description":"Aks contains user-specified configurations for the aks detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/aks resource attributes.","properties":{"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.cluster.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"alibaba_ecs":{"type":"object","description":"AlibabaECSConfig contains user-specified configurations for the Alibaba Cloud ECS detector","properties":{"fail_on_missing_metadata":{"type":"boolean","description":"Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.","deprecated":true},"resource_attributes":{"type":"object","description":"ResourceAttributes controls which standard resource attributes are enabled (e.g., host.id, host.name, cloud.provider, etc.).","properties":{"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.image.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"azure":{"type":"object","description":"Azure contains user-specified configurations for the azure detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for azuredetector resource attributes.","properties":{"azure.resourcegroup.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a azure.resourcegroup.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"azure.vm.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a azure.vm.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"azure.vm.scaleset.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a azure.vm.scaleset.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"azure.vm.size":{"type":"object","description":"ResourceAttributeConfig provides common config for a azure.vm.size resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.account.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}},"tags":{"type":"string[]","description":"Tags is a list of regex's to match azure instance tag keys that users want to add as resource attributes to processed data"}}},"azureappservice":{"type":"object","description":"AzureAppServiceConfig contains user-specified configurations for the Azure App Service detector","properties":{"resource_attributes":{"type":"unknown"}}},"azurecontainerapps":{"type":"object","description":"AzureContainerAppsConfig contains user-specified configurations for the Azure Container Apps detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/azurecontainerapps resource attributes.","properties":{"azure.container_app.instance.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a azure.container_app.instance.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"service.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a service.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"azurefunctions":{"type":"object","description":"AzureFunctionsConfig contains user-specified configurations for the Azure Functions detector","properties":{"resource_attributes":{"type":"unknown"}}},"consul":{"type":"object","description":"ConsulConfig contains user-specified configurations for the Consul detector","properties":{"address":{"type":"string","description":"Address is the address of the Consul server"},"datacenter":{"type":"string","description":"Datacenter to use. If not provided, the default agent datacenter is used."},"meta":{"type":"object","description":"Allowlist of [Consul Metadata](https://www.consul.io/docs/agent/options#node_meta) keys to use as resource attributes."},"namespace":{"type":"string","description":"Namespace is the name of the namespace to send along for the request when no other Namespace is present in the QueryOptions"},"resource_attributes":{"type":"object","description":"ResourceAttributes configuration for Consul detector","properties":{"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}},"token":{"type":"string","description":"Token is used to provide a per-request ACL token which overrides the agent's default (empty) token. Token or Tokenfile are only required if [Consul's ACL System](https://www.consul.io/docs/security/acl/acl-system) is enabled."},"token_file":{"type":"string","description":"TokenFile is a file containing the current token to use for this client. If provided it is read once at startup and never again. Token or Tokenfile are only required if [Consul's ACL System](https://www.consul.io/docs/security/acl/acl-system) is enabled."}}},"digitalocean":{"type":"object","description":"DigitalOceanConfig contains user-specified configurations for the digitalocean detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for digitaloceandetector resource attributes.","properties":{"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"docker":{"type":"object","description":"DockerConfig contains user-specified configurations for the docker detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/docker resource attributes.","properties":{"container.image.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a container.image.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"container.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a container.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"os.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a os.type resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"ec2":{"type":"object","description":"EC2Config contains user-specified configurations for the EC2 detector","properties":{"fail_on_missing_metadata":{"type":"boolean","description":"Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.","deprecated":true},"max_attempts":{"type":"number"},"max_backoff":{"type":"duration"},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/ec2 resource attributes.","properties":{"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.account.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.image.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.image.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.type resource attribute.","properties":{"enabled":{"type":"boolean"}}}}},"tags":{"type":"string[]","description":"Tags is a list of regex's to match ec2 instance tag keys that users want to add as resource attributes to processed data"},"tags_from_imds":{"type":"boolean","description":"TagsFromIMDS controls whether instance tags are fetched via IMDS (true) or via the EC2 DescribeTags API (false, default). IMDS does not require IAM permissions but requires InstanceMetadataTags=enabled on the instance. Note: IMDS must be network-accessible from the process; workloads running in containers (e.g., EKS pods, ECS tasks) may not have access to IMDS even if it is enabled on the host, unless the instance metadata options are configured to allow container access."}}},"ecs":{"type":"object","description":"ECSConfig contains user-specified configurations for the ECS detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/ecs resource attributes.","properties":{"aws.ecs.cluster.arn":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.ecs.cluster.arn resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.ecs.launchtype":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.ecs.launchtype resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.ecs.task.arn":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.ecs.task.arn resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.ecs.task.family":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.ecs.task.family resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.ecs.task.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.ecs.task.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.ecs.task.revision":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.ecs.task.revision resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.log.group.arns":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.log.group.arns resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.log.group.names":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.log.group.names resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.log.stream.arns":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.log.stream.arns resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.log.stream.names":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.log.stream.names resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.account.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"eks":{"type":"object","description":"EKSConfig contains user-specified configurations for the EKS detector","properties":{"node_from_env_var":{"type":"string"},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/eks resource attributes.","properties":{"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.account.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.image.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.image.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.type resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.cluster.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"elasticbeanstalk":{"type":"object","description":"Elasticbeanstalk contains user-specified configurations for the elasticbeanstalk detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/elastic_beanstalk resource attributes.","properties":{"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"deployment.environment":{"type":"object","description":"ResourceAttributeConfig provides common config for a deployment.environment resource attribute.","properties":{"enabled":{"type":"boolean"}}},"service.instance.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a service.instance.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"service.version":{"type":"object","description":"ResourceAttributeConfig provides common config for a service.version resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"gcp":{"type":"object","description":"GcpConfig contains user-specified configurations for the gcp detector","properties":{"labels":{"type":"string[]","description":"Labels is a list of regex's to match gce instance label keys that users want to add as resource attributes to processed data"},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/gcp resource attributes.","properties":{"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.account.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"faas.instance":{"type":"object","description":"ResourceAttributeConfig provides common config for a faas.instance resource attribute.","properties":{"enabled":{"type":"boolean"}}},"faas.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a faas.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"faas.version":{"type":"object","description":"ResourceAttributeConfig provides common config for a faas.version resource attribute.","properties":{"enabled":{"type":"boolean"}}},"gcp.cloud_run.job.execution":{"type":"object","description":"ResourceAttributeConfig provides common config for a gcp.cloud_run.job.execution resource attribute.","properties":{"enabled":{"type":"boolean"}}},"gcp.cloud_run.job.task_index":{"type":"object","description":"ResourceAttributeConfig provides common config for a gcp.cloud_run.job.task_index resource attribute.","properties":{"enabled":{"type":"boolean"}}},"gcp.gce.instance.hostname":{"type":"object","description":"ResourceAttributeConfig provides common config for a gcp.gce.instance.hostname resource attribute.","properties":{"enabled":{"type":"boolean"}}},"gcp.gce.instance.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a gcp.gce.instance.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"gcp.gce.instance_group_manager.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a gcp.gce.instance_group_manager.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"gcp.gce.instance_group_manager.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a gcp.gce.instance_group_manager.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"gcp.gce.instance_group_manager.zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a gcp.gce.instance_group_manager.zone resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.type resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.cluster.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"heroku":{"type":"object","description":"HerokuConfig contains user-specified configurations for the heroku detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/heroku resource attributes.","properties":{"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"heroku.app.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a heroku.app.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"heroku.dyno.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a heroku.dyno.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"heroku.release.commit":{"type":"object","description":"ResourceAttributeConfig provides common config for a heroku.release.commit resource attribute.","properties":{"enabled":{"type":"boolean"}}},"heroku.release.creation_timestamp":{"type":"object","description":"ResourceAttributeConfig provides common config for a heroku.release.creation_timestamp resource attribute.","properties":{"enabled":{"type":"boolean"}}},"service.instance.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a service.instance.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"service.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a service.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"service.version":{"type":"object","description":"ResourceAttributeConfig provides common config for a service.version resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"hetzner":{"type":"object","description":"HetznerConfig contains user-specified configurations for the hetzner detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for hetznerdetector resource attributes.","properties":{"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"ibmcloud_classic":{"type":"unknown","description":"IBMCloudClassicConfig contains user-specified configurations for the IBM Cloud Classic detector"},"ibmcloud_vpc":{"type":"unknown","description":"IBMCloudVPCConfig contains user-specified configurations for the IBM Cloud VPC detector"},"k8s_api":{"type":"object","description":"K8SAPIConfig contains user-specified configurations for the K8S API detector","properties":{"auth_type":{"type":"string","description":"How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`."},"context":{"type":"string","description":"When using auth_type `kubeConfig`, override the current context."},"kube_api_burst":{"type":"number","description":"KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings."},"kube_api_qps":{"type":"number","description":"KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings."},"node_from_env_var":{"type":"string","description":"NodeFromEnv can be used to extract the node name from an environment variable. The value must be the name of the environment variable. This is useful when the node a Otel agent will run on cannot be predicted. In such cases, the Kubernetes downward API can be used to add the node name to each pod as an environment variable. K8s tagger can then read this value and filter pods by it. NodeFromEnv defaults to K8S_NODE_NAME For example, node name can be passed to each agent with the downward API as follows env: - name: K8S_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName Then the NodeFromEnv field can be set to `K8S_NODE_NAME` to filter all pods by the node that the agent is running on. More on downward API here: https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/"},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/k8s_api resource attributes.","properties":{"k8s.cluster.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cluster.uid resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.node.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.node.uid resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"k8snode":{"type":"object","description":"K8SNodeConfig contains user-specified configurations for the K8SNode detector (deprecated: use K8SAPIConfig)","properties":{"auth_type":{"type":"string","description":"How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`."},"context":{"type":"string","description":"When using auth_type `kubeConfig`, override the current context."},"kube_api_burst":{"type":"number","description":"KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings."},"kube_api_qps":{"type":"number","description":"KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings."},"node_from_env_var":{"type":"string","description":"NodeFromEnv can be used to extract the node name from an environment variable. The value must be the name of the environment variable. This is useful when the node a Otel agent will run on cannot be predicted. In such cases, the Kubernetes downward API can be used to add the node name to each pod as an environment variable. K8s tagger can then read this value and filter pods by it. NodeFromEnv defaults to K8S_NODE_NAME For example, node name can be passed to each agent with the downward API as follows env: - name: K8S_NODE_NAME valueFrom: fieldRef: fieldPath: spec.nodeName Then the NodeFromEnv field can be set to `K8S_NODE_NAME` to filter all pods by the node that the agent is running on. More on downward API here: https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/"},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/k8s_api resource attributes.","properties":{"k8s.cluster.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cluster.uid resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.node.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.node.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.node.uid resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"kubeadm":{"type":"object","description":"Kubeadm contains user-specified configurations for the Kubeadm detector","properties":{"auth_type":{"type":"string","description":"How to authenticate to the K8s API server. This can be one of `none` (for no auth), `serviceAccount` (to use the standard service account token provided to the agent pod), or `kubeConfig` to use credentials from `~/.kube/config`."},"context":{"type":"string","description":"When using auth_type `kubeConfig`, override the current context."},"kube_api_burst":{"type":"number","description":"KubeAPIBurst is the maximum burst of requests to the Kubernetes API. Uses client-go's default (10) if unset. Increase if you see client-side throttling warnings."},"kube_api_qps":{"type":"number","description":"KubeAPIQPS is the maximum number of queries per second to the Kubernetes API. Uses client-go's default (5) if unset. Increase if you see client-side throttling warnings."},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/kubeadm resource attributes.","properties":{"k8s.cluster.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.cluster.uid":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cluster.uid resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"lambda":{"type":"object","description":"Lambda contains user-specified configurations for the lambda detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/lambda resource attributes.","properties":{"aws.log.group.names":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.log.group.names resource attribute.","properties":{"enabled":{"type":"boolean"}}},"aws.log.stream.names":{"type":"object","description":"ResourceAttributeConfig provides common config for a aws.log.stream.names resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"faas.instance":{"type":"object","description":"ResourceAttributeConfig provides common config for a faas.instance resource attribute.","properties":{"enabled":{"type":"boolean"}}},"faas.max_memory":{"type":"object","description":"ResourceAttributeConfig provides common config for a faas.max_memory resource attribute.","properties":{"enabled":{"type":"boolean"}}},"faas.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a faas.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"faas.version":{"type":"object","description":"ResourceAttributeConfig provides common config for a faas.version resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"nova":{"type":"object","description":"OpenStackNovaConfig contains user-specified configurations for the OpenStackNova detector","properties":{"fail_on_missing_metadata":{"type":"boolean","description":"Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.","deprecated":true},"labels":{"type":"string[]","description":"Labels is a list of regex patterns to match Nova instance metadata keys (from the \"meta\" map) that should be added as resource attributes. Matched keys are emitted as \"openstack.nova.meta.<key>: <value>\"."},"resource_attributes":{"type":"object","description":"ResourceAttributes controls which standard resource attributes are enabled (e.g., host.id, host.name, cloud.provider, etc.).","properties":{"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"openshift":{"type":"object","description":"OpenShift contains user-specified configurations for the OpenShift detector","properties":{"address":{"type":"string","description":"Address is the address of the openshift api server"},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/openshift resource attributes.","properties":{"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.cluster.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a k8s.cluster.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}},"tls":{"type":"object","description":"TLSs contains TLS configurations that are specific to client connection used to communicate with the OpenShift API.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"insecure":{"type":"boolean","description":"In gRPC and HTTP when set to true, this is used to disable the client transport security. See https://godoc.org/google.golang.org/grpc#WithInsecure for gRPC. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional, default false)"},"insecure_skip_verify":{"type":"boolean","description":"InsecureSkipVerify will enable TLS but not verify the certificate."},"server_name_override":{"type":"string","description":"ServerName requested by client for virtual hosting. This sets the ServerName in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"}}},"token":{"type":"string","description":"Token is used to identify against the openshift api server"}}},"oraclecloud":{"type":"object","description":"OracleCloud contains user-specified configurations for the OracleCloud detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for oracleclouddetector resource attributes.","properties":{"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.resource_id":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"k8s.cluster.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}},"oracle_cloud.realm":{"type":"object","description":"ResourceAttributeConfig provides common config for a particular resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"scaleway":{"type":"object","description":"ScalewayConfig contains user-specified configurations for the scaleway detector","properties":{"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for scalewaydetector resource attributes.","properties":{"cloud.account.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.account.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.availability_zone":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.availability_zone resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.image.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.image.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.image.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.image.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.type resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"system":{"type":"object","description":"SystemConfig contains user-specified configurations for the System detector","properties":{"hostname_sources":{"type":"string[]","description":"The HostnameSources is a priority list of sources from which hostname will be fetched. In case of the error in fetching hostname from source, the next source from the list will be considered.(**default**: `[\"dns\", \"os\"]`)"},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for resourcedetectionprocessor/system resource attributes.","properties":{"host.arch":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.arch resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.cpu.cache.l2.size":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.cpu.cache.l2.size resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.cpu.family":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.cpu.family resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.cpu.model.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.cpu.model.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.cpu.model.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.cpu.model.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.cpu.stepping":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.cpu.stepping resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.cpu.vendor.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.cpu.vendor.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.interface":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.interface resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.ip":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.ip resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.mac":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.mac resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"os.build.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a os.build.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"os.description":{"type":"object","description":"ResourceAttributeConfig provides common config for a os.description resource attribute.","properties":{"enabled":{"type":"boolean"}}},"os.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a os.name resource attribute.","properties":{"enabled":{"type":"boolean"}}},"os.type":{"type":"object","description":"ResourceAttributeConfig provides common config for a os.type resource attribute.","properties":{"enabled":{"type":"boolean"}}},"os.version":{"type":"object","description":"ResourceAttributeConfig provides common config for a os.version resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"tencent_cvm":{"type":"unknown","description":"TencentCVMConfig contains user-specified configurations for the Tencent Cloud CVM detector"},"upcloud":{"type":"object","description":"UpcloudConfig contains user-specified configurations for the upcloud detector","properties":{"fail_on_missing_metadata":{"type":"boolean","description":"Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.","deprecated":true},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for upclouddetector resource attributes.","properties":{"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"vultr":{"type":"object","description":"VultrConfig contains user-specified configurations for the vultr detector","properties":{"fail_on_missing_metadata":{"type":"boolean","description":"Deprecated: Use the top-level fail_on_missing_metadata in the processor config instead. This field will be removed in a future release.","deprecated":true},"resource_attributes":{"type":"object","description":"ResourceAttributesConfig provides config for vultrdetector resource attributes.","properties":{"cloud.platform":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.platform resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.provider":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.provider resource attribute.","properties":{"enabled":{"type":"boolean"}}},"cloud.region":{"type":"object","description":"ResourceAttributeConfig provides common config for a cloud.region resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.id":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.id resource attribute.","properties":{"enabled":{"type":"boolean"}}},"host.name":{"type":"object","description":"ResourceAttributeConfig provides common config for a host.name resource attribute.","properties":{"enabled":{"type":"boolean"}}}}}}},"auth":{"type":"object","description":"Auth configuration for outgoing HTTP calls.","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."}}},"compression":{"type":"string","description":"The compression key for supported compression types within collector."},"compression_params":{"type":"object","description":"Advanced configuration options for the Compression","properties":{"level":{"type":"number"}}},"cookies":{"type":"unknown","description":"Cookies configures the cookie management of the HTTP client."},"endpoint":{"type":"string","description":"The target URL to send data to (e.g.: http://some.url:9411/v1/traces)."},"force_attempt_http2":{"type":"boolean","description":"Enabling ForceAttemptHTTP2 forces the HTTP transport to use the HTTP/2 protocol. By default, this is set to true. NOTE: HTTP/2 does not support settings such as MaxConnsPerHost, MaxIdleConnsPerHost and MaxIdleConns."},"headers":{"type":"map | list","description":"Additional headers attached to each HTTP request sent by the client. Existing header values are overwritten if collision happens. Header values are opaque since they may be sensitive.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"http2_ping_timeout":{"type":"duration","description":"HTTP2PingTimeout if there's no response to the ping within the configured value, the connection will be closed. If not set or set to 0, it defaults to 15s."},"http2_read_idle_timeout":{"type":"duration","description":"This is needed in case you run into https://github.com/golang/go/issues/59690 https://github.com/golang/go/issues/36026 HTTP2ReadIdleTimeout if the connection has been idle for the configured value send a ping frame for health check 0s means no health check will be performed."},"keepalive":{"type":"object","description":"Keepalive settings for the HTTP client.","properties":{"enabled":{"type":"boolean","description":"Set to false to disable HTTP keep-alives. Default is true."},"idle_conn_timeout":{"type":"duration","description":"IdleConnTimeout is the maximum amount of time an idle (keep-alive) connection will remain open before closing itself. Default is 90 seconds."},"max_idle_conns":{"type":"number","description":"MaxIdleConns is used to set a limit to the maximum idle HTTP connections the client can keep open. Default is 100. Zero means no limit."},"max_idle_conns_per_host":{"type":"number","description":"MaxIdleConnsPerHost is used to set a limit to the maximum idle HTTP connections the host can keep open. If zero, net/http.DefaultMaxIdleConnsPerHost is used."}}},"max_conns_per_host":{"type":"number","description":"MaxConnsPerHost limits the total number of connections per host, including connections in the dialing, active, and idle states. Default is 0 (unlimited)."},"middlewares":{"type":"object[]","description":"Middlewares are used to add custom functionality to the HTTP client. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"proxy_url":{"type":"string","description":"ProxyURL setting for the collector"},"read_buffer_size":{"type":"number","description":"ReadBufferSize for HTTP client. See http.Transport.ReadBufferSize. Default is 0."},"timeout":{"type":"duration","description":"Timeout parameter configures `http.Client.Timeout`. Default is 0 (unlimited)."},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"insecure":{"type":"boolean","description":"In gRPC and HTTP when set to true, this is used to disable the client transport security. See https://godoc.org/google.golang.org/grpc#WithInsecure for gRPC. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional, default false)"},"insecure_skip_verify":{"type":"boolean","description":"InsecureSkipVerify will enable TLS but not verify the certificate."},"server_name_override":{"type":"string","description":"ServerName requested by client for virtual hosting. This sets the ServerName in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"}}},"write_buffer_size":{"type":"number","description":"WriteBufferSize for HTTP client. See http.Transport.WriteBufferSize. Default is 0."},"detectors":{"type":"string[]","description":"Detectors is an ordered list of named detectors that should be run to attempt to detect resource information."},"fail_on_missing_metadata":{"type":"boolean","description":"FailOnMissingMetadata controls whether network-based detectors treat an unreachable metadata service as a hard failure. When true, affected detectors return an error instead of silently returning an empty resource, enabling the processor's retry mechanism to wait until the metadata service becomes available (e.g., during GKE/AKS node startup races). Supersedes the per-detector fail_on_missing_metadata fields (now deprecated). Default: false (backward compatible)."},"override":{"type":"boolean","description":"Override indicates whether any existing resource attributes should be overridden or preserved. Defaults to true."},"refresh_interval":{"type":"duration","description":"If > 0, periodically re-run detection for all configured detectors. When 0 (default), no periodic refresh occurs."},"retry":{"type":"object","description":"Retry controls retry/backoff for each detection attempt. Set Enabled=false to perform a single attempt per detector with no retries.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to not retry sending batches in case of export failure."},"initial_interval":{"type":"duration","description":"InitialInterval the time to wait after the first failure before retrying."},"max_elapsed_time":{"type":"duration","description":"MaxElapsedTime is the maximum amount of time (including retries) spent trying to send a request/batch. Once this value is reached, the data is discarded. If set to 0, the retries are never stopped."},"max_interval":{"type":"duration","description":"MaxInterval is the upper bound on backoff interval. Once this value is reached the delay between consecutive retries will always be `MaxInterval`."},"multiplier":{"type":"number","description":"Multiplier is the value multiplied by the backoff interval bounds"},"randomization_factor":{"type":"number","description":"RandomizationFactor is a random factor used to calculate next backoffs Randomized interval = RetryInterval * (1 ± RandomizationFactor)"}}}},"ResourceProcessor":{"attributes":{"type":"object[]","description":"AttributesActions specifies the list of actions to be applied on resource attributes. The set of actions are {INSERT, UPDATE, UPSERT, DELETE, HASH, EXTRACT}.","properties":{"action":{"type":"string","description":"Action specifies the type of action to perform. The set of values are {INSERT, UPDATE, UPSERT, DELETE, HASH}. Both lower case and upper case are supported. INSERT - Inserts the key/value to attributes when the key does not exist. No action is applied to attributes where the key already exists. Either Value, FromAttribute or FromContext must be set. UPDATE - Updates an existing key with a value. No action is applied to attributes where the key does not exist. Either Value, FromAttribute or FromContext must be set. UPSERT - Performs insert or update action depending on the attributes containing the key. The key/value is inserted to attributes that did not originally have the key. The key/value is updated for attributes where the key already existed. Either Value, FromAttribute or FromContext must be set. DELETE - Deletes the attribute. If the key doesn't exist, no action is performed. HASH - Calculates the SHA-1 hash of an existing value and overwrites the value with its SHA-1 hash result. If the feature gate `coreinternal.attraction.hash.sha256` is enabled, it uses SHA2-256 instead. EXTRACT - Extracts values using a regular expression rule from the input 'key' to target keys specified in the 'rule'. If a target key already exists, it will be overridden. CONVERT - converts the type of an existing attribute, if convertable This is a required field."},"converted_type":{"type":"string","description":"ConvertedType specifies the target type of an attribute to be converted If the key doesn't exist, no action is performed. If the value cannot be converted, the original value will be left as-is"},"default_value":{"type":"unknown","description":"DefaultValue specifies the value to use if Value/FromAttribute/FromContext doesn't provide a value (e.g., environment variable not set, attribute doesn't exist). Only used with INSERT, UPDATE, and UPSERT actions."},"from_attribute":{"type":"string","description":"FromAttribute specifies the attribute to use to populate the value. If the attribute doesn't exist, no action is performed."},"from_context":{"type":"string","description":"FromContext specifies the context value to use to populate the value. The values would be searched in client.Info.Metadata. If the key doesn't exist, no action is performed. If the key has multiple values the values will be joined with `;` separator."},"key":{"type":"string","description":"Key specifies the attribute to act upon. This is a required field."},"pattern":{"type":"string","description":"A regex pattern must be specified for the action EXTRACT. It uses the attribute specified by `key' to extract values from The target keys are inferred based on the names of the matcher groups provided and the names will be inferred based on the values of the matcher group. Note: All subexpressions must have a name. Note: The value type of the source key must be a string. If it isn't, no extraction will occur."},"value":{"type":"unknown","description":"Value specifies the value to populate for the key. The type of the value is inferred from the configuration."}}}},"RoutingConnector":{"default_pipelines":{"type":"unknown[]","description":"DefaultPipelines contains the list of pipelines to use when a more specific record can't be found in the routing table. Optional."},"error_mode":{"type":"string","description":"ErrorMode determines how the processor reacts to errors that occur while processing an OTTL condition. Valid values are `ignore` and `propagate`. `ignore` means the processor ignores errors returned by conditions and continues on to the next condition. This is the recommended mode. If `ignore` is used and a statement's condition has an error then the payload will be routed to the default exporter. `propagate` means the processor returns the error up the pipeline. This will result in the payload being dropped from the collector. The default value is `ignore` when the `connector.routing.defaultErrorModeIgnore` feature gate is enabled (default), and `propagate` when disabled."},"table":{"type":"object[]","description":"Table contains the routing table for this processor. Required.","properties":{"action":{"type":"string","description":"Action indicates the type of operation we intend to do when the condition Matches for the corresponding context and data."},"condition":{"type":"string","description":"Condition is an OTTL condition used for making a routing decision. For the \"request\" context, 'Condition' is required and must be of the form 'request[\"<attribute>\"] {== | !=} <value>'. For all other contexts, 'Statement' or 'Condition' must be provided, and must be a valid OTTL condition."},"context":{"type":"string","description":"One of \"request\" (deprecated), \"resource\", \"log\", \"span\", \"metric\", \"datapoint\", \"otelcol\". Optional. Default is inferred from the condition/statement paths."},"pipelines":{"type":"unknown[]","description":"Pipelines contains the list of pipelines to use when the value from the FromAttribute field matches this table item. When no pipelines are specified, the ones specified under DefaultPipelines are used, if any. The routing processor will fail upon the first failure from these pipelines. Optional."},"statement":{"type":"string","description":"Statement is an OTTL statement used for making a routing decision. 'Statement' is disallowed for the \"request\" context. For other contexts, 'Statement' or 'Condition' must be provided."}}}},"ServiceGraphConnector":{"cache_loop":{"type":"duration","description":"CacheLoop is the time to cleans the cache periodically."},"database_name_attributes":{"type":"string[]","description":"DatabaseNameAttributes is the attribute name list of attributes need to match used to identify the database name from span attributes, the higher the front, the higher the priority. The default value is {\"db.name\"}."},"dimensions":{"type":"string[]","description":"Dimensions defines the list of additional dimensions on top of the provided: - client - server - failed - connection_type The dimensions will be fetched from the span's attributes. Examples of some conventionally used attributes: https://github.com/open-telemetry/opentelemetry-collector/blob/main/model/semconv/opentelemetry.go."},"exponential_histogram_max_size":{"type":"number","description":"ExponentialHistogramMaxSize is the setting of exponential histogram"},"latency_histogram_buckets":{"type":"duration[]","description":"LatencyHistogramBuckets is the list of durations representing latency histogram buckets. See defaultLatencyHistogramBucketsMs in processor.go for the default value. make sure use either `LatencyHistogramBuckets` or `ExponentialHistogramMaxSize`"},"metrics_flush_interval":{"type":"duration","description":"MetricsFlushInterval is the interval at which metrics are flushed to the exporter. If set to 0, metrics are flushed on every received batch of traces. Default is 60s if unset."},"metrics_timestamp_offset":{"type":"duration","description":"MetricsTimestampOffset is the offset to subtract from metric timestamps. If set to a positive duration, metric timestamps will be set to (current time - offset), effectively shifting metrics to appear as if they were generated in the past. Default is 0, which means no offset is applied."},"store":{"type":"object","description":"Store contains the config for the in-memory store used to find requests between services by pairing spans.","properties":{"max_items":{"type":"number","description":"MaxItems is the maximum number of items to keep in the store."},"ttl":{"type":"duration","description":"TTL is the time to live for items in the store."}}},"store_expiration_loop":{"type":"duration","description":"CacheLoop is the time to expire old entries from the store periodically."},"virtual_node_extra_label":{"type":"boolean","description":"VirtualNodeExtraLabel enables the `virtual_node` label to be added to the spans."},"virtual_node_peer_attributes":{"type":"string[]","description":"VirtualNodePeerAttributes the list of attributes need to match, the higher the front, the higher the priority."}},"SignalToMetricsConnector":{"datapoints":{"type":"object[]","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"},"keys_expression":{"type":"string","description":"KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set."},"optional":{"type":"boolean"}}},"conditions":{"type":"string[]","description":"Conditions are a set of OTTL conditions which are ORed. Data is processed into metrics only if the sequence evaluates to true."},"description":{"type":"string"},"exponential_histogram":{"type":"object","properties":{"count":{"type":"string"},"max_size":{"type":"number"},"value":{"type":"string"}}},"gauge":{"type":"object","properties":{"value":{"type":"string"}}},"histogram":{"type":"object","properties":{"buckets":{"type":"number[]"},"count":{"type":"string"},"value":{"type":"string"}}},"include_resource_attributes":{"type":"object[]","description":"IncludeResourceAttributes is a list of resource attributes that needs to be included in the generated metric. If no resource attribute is included in the list then all attributes are included.","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"},"keys_expression":{"type":"string","description":"KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set."},"optional":{"type":"boolean"}}},"name":{"type":"string"},"sum":{"type":"object","properties":{"monotonic":{"type":"boolean"},"value":{"type":"string"}}},"unit":{"type":"string","description":"Unit, if not-empty, will set the unit associated with the metric. See: https://github.com/open-telemetry/opentelemetry-collector/blob/b06236cc794982916cc956f20828b3e18eb33264/pdata/pmetric/generated_metric.go#L72-L81"}}},"error_mode":{"type":"string","description":"ErrorMode determines how the connector reacts to errors that occur while processing an OTTL condition or statement during runtime data consumption. This setting does NOT affect errors during OTTL statement parsing at configuration time - those will always cause startup failures. Valid values are `propagate`, `ignore`, and `silent`. `propagate` means the connector returns the error up the pipeline. This will result in the payload being dropped from the collector. `ignore` means the connector ignores errors returned by conditions and continues processing. If an error occurs, the record is skipped and the error is logged. `silent` means the connector ignores errors returned by conditions and continues processing. If an error occurs, the record is skipped and the error is not logged. The default value is `propagate`."},"logs":{"type":"object[]","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"},"keys_expression":{"type":"string","description":"KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set."},"optional":{"type":"boolean"}}},"conditions":{"type":"string[]","description":"Conditions are a set of OTTL conditions which are ORed. Data is processed into metrics only if the sequence evaluates to true."},"description":{"type":"string"},"exponential_histogram":{"type":"object","properties":{"count":{"type":"string"},"max_size":{"type":"number"},"value":{"type":"string"}}},"gauge":{"type":"object","properties":{"value":{"type":"string"}}},"histogram":{"type":"object","properties":{"buckets":{"type":"number[]"},"count":{"type":"string"},"value":{"type":"string"}}},"include_resource_attributes":{"type":"object[]","description":"IncludeResourceAttributes is a list of resource attributes that needs to be included in the generated metric. If no resource attribute is included in the list then all attributes are included.","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"},"keys_expression":{"type":"string","description":"KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set."},"optional":{"type":"boolean"}}},"name":{"type":"string"},"sum":{"type":"object","properties":{"monotonic":{"type":"boolean"},"value":{"type":"string"}}},"unit":{"type":"string","description":"Unit, if not-empty, will set the unit associated with the metric. See: https://github.com/open-telemetry/opentelemetry-collector/blob/b06236cc794982916cc956f20828b3e18eb33264/pdata/pmetric/generated_metric.go#L72-L81"}}},"profiles":{"type":"object[]","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"},"keys_expression":{"type":"string","description":"KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set."},"optional":{"type":"boolean"}}},"conditions":{"type":"string[]","description":"Conditions are a set of OTTL conditions which are ORed. Data is processed into metrics only if the sequence evaluates to true."},"description":{"type":"string"},"exponential_histogram":{"type":"object","properties":{"count":{"type":"string"},"max_size":{"type":"number"},"value":{"type":"string"}}},"gauge":{"type":"object","properties":{"value":{"type":"string"}}},"histogram":{"type":"object","properties":{"buckets":{"type":"number[]"},"count":{"type":"string"},"value":{"type":"string"}}},"include_resource_attributes":{"type":"object[]","description":"IncludeResourceAttributes is a list of resource attributes that needs to be included in the generated metric. If no resource attribute is included in the list then all attributes are included.","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"},"keys_expression":{"type":"string","description":"KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set."},"optional":{"type":"boolean"}}},"name":{"type":"string"},"sum":{"type":"object","properties":{"monotonic":{"type":"boolean"},"value":{"type":"string"}}},"unit":{"type":"string","description":"Unit, if not-empty, will set the unit associated with the metric. See: https://github.com/open-telemetry/opentelemetry-collector/blob/b06236cc794982916cc956f20828b3e18eb33264/pdata/pmetric/generated_metric.go#L72-L81"}}},"spans":{"type":"object[]","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"},"keys_expression":{"type":"string","description":"KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set."},"optional":{"type":"boolean"}}},"conditions":{"type":"string[]","description":"Conditions are a set of OTTL conditions which are ORed. Data is processed into metrics only if the sequence evaluates to true."},"description":{"type":"string"},"exponential_histogram":{"type":"object","properties":{"count":{"type":"string"},"max_size":{"type":"number"},"value":{"type":"string"}}},"gauge":{"type":"object","properties":{"value":{"type":"string"}}},"histogram":{"type":"object","properties":{"buckets":{"type":"number[]"},"count":{"type":"string"},"value":{"type":"string"}}},"include_resource_attributes":{"type":"object[]","description":"IncludeResourceAttributes is a list of resource attributes that needs to be included in the generated metric. If no resource attribute is included in the list then all attributes are included.","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"},"keys_expression":{"type":"string","description":"KeysExpression is an OTTL value expression that resolves to a list of attribute keys at runtime. The expression must return a pcommon.Slice or []string. Exactly one of Key or KeysExpression must be set."},"optional":{"type":"boolean"}}},"name":{"type":"string"},"sum":{"type":"object","properties":{"monotonic":{"type":"boolean"},"value":{"type":"string"}}},"unit":{"type":"string","description":"Unit, if not-empty, will set the unit associated with the metric. See: https://github.com/open-telemetry/opentelemetry-collector/blob/b06236cc794982916cc956f20828b3e18eb33264/pdata/pmetric/generated_metric.go#L72-L81"}}}},"SpanMetricsConnector":{"add_resource_attributes":{"type":"boolean","description":"Add the resource attributes to the resulting metrics (disabled by default) This option enables the old behavior https://github.com/open-telemetry/opentelemetry-collector-contrib/issues/42103"},"aggregation_cardinality_limit":{"type":"number"},"aggregation_temporality":{"type":"string"},"calls_dimensions":{"type":"object[]","properties":{"default":{"type":"string"},"glob":{"type":"string"},"name":{"type":"string"}}},"dimensions":{"type":"object[]","description":"Dimensions defines the list of additional dimensions on top of the provided: - service.name - span.name - span.kind - status.code - collector.instance.id The dimensions will be fetched from the span's attributes. Examples of some conventionally used attributes: https://github.com/open-telemetry/opentelemetry-collector/blob/main/model/semconv/opentelemetry.go.","properties":{"default":{"type":"string"},"glob":{"type":"string"},"name":{"type":"string"}}},"dimensions_cache_size":{"type":"number","description":"DimensionsCacheSize defines the size of cache for storing Dimensions, which helps to avoid cache memory growing indefinitely over the lifetime of the collector. Optional. See defaultDimensionsCacheSize in connector.go for the default value. Deprecated [v0.130.0]: Please use AggregationCardinalityLimit instead","deprecated":true},"enable_metrics_sampling_method":{"type":"boolean","description":"EnableMetricsSamplingMethod adds the sampling.method attribute (\"extrapolated\" or \"counted\") to metrics. When false (default), the attribute is not added."},"events":{"type":"object","description":"Events defines the configuration for events section of spans.","properties":{"dimensions":{"type":"object[]","description":"Dimensions defines the list of dimensions to add to the events metric.","properties":{"default":{"type":"string"},"glob":{"type":"string"},"name":{"type":"string"}}},"enabled":{"type":"boolean","description":"Enabled is a flag to enable events."}}},"exclude_dimensions":{"type":"string[]"},"exemplars":{"type":"object","description":"Exemplars defines the configuration for exemplars.","properties":{"enabled":{"type":"boolean"},"max_per_data_point":{"type":"number"}}},"histogram":{"type":"object","properties":{"dimensions":{"type":"object[]","properties":{"default":{"type":"string"},"glob":{"type":"string"},"name":{"type":"string"}}},"disable":{"type":"boolean"},"explicit":{"type":"object","properties":{"buckets":{"type":"duration[]","description":"Buckets is the list of durations representing explicit histogram buckets."}}},"exponential":{"type":"object","properties":{"max_size":{"type":"number"}}},"unit":{"type":"\"ms\" | \"s\""}}},"include_instrumentation_scope":{"type":"string[]"},"metric_timestamp_cache_size":{"type":"number","description":"TimestampCacheSize controls the size of the cache used to keep track of delta metrics' TimestampUnixNano the last time it was flushed"},"metrics_expiration":{"type":"duration","description":"MetricsExpiration is the time period after which, if no new spans are received, metrics are considered stale and will no longer be exported. Default value (0) means that the metrics will never expire."},"metrics_flush_interval":{"type":"duration","description":"MetricsEmitInterval is the time period between when metrics are flushed or emitted to the configured MetricsExporter."},"namespace":{"type":"string","description":"Namespace is the namespace of the metrics emitted by the connector."},"resource_metrics_cache_size":{"type":"number","description":"ResourceMetricsCacheSize defines the size of the cache holding metrics for a service. This is mostly relevant for cumulative temporality to avoid memory leaks and correct metric timestamp resets. Optional. See defaultResourceMetricsCacheSize in connector.go for the default value."},"resource_metrics_key_attributes":{"type":"string[]","description":"ResourceMetricsKeyAttributes filters the resource attributes used to create the resource metrics key hash. This can be used to avoid situations where resource attributes may change across service restarts, causing metric counters to break (and duplicate). A resource does not need to have all of the attributes. The list must include enough attributes to properly identify unique resources or risk aggregating data from more than one service and span. e.g. [\"service.name\", \"telemetry.sdk.language\", \"telemetry.sdk.name\"] See https://opentelemetry.io/docs/specs/semconv/resource/ for possible attributes."},"series_expiration":{"type":"duration","description":"SeriesExpiration is the time period after which individual metric series are considered stale and will no longer be exported. Default value (0) means that individual metric series will never expire."}},"SumConnector":{"datapoints":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"},"source_attribute":{"type":"string"}}},"logs":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"},"source_attribute":{"type":"string"}}},"metrics":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"},"source_attribute":{"type":"string"}}},"spanevents":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"},"source_attribute":{"type":"string"}}},"spans":{"type":"object","properties":{"attributes":{"type":"object[]","properties":{"default_value":{"type":"unknown"},"key":{"type":"string"}}},"conditions":{"type":"string[]"},"description":{"type":"string"},"source_attribute":{"type":"string"}}}},"TailSamplingProcessor":{"block_on_overflow":{"type":"boolean","description":"BlockOnOverflow determines the behavior when the component's NumTraces limit is reached. If true, the component will wait for space; otherwise, old traces will be evicted to make space."},"decision_cache":{"type":"object","description":"DecisionCache holds configuration for the decision cache(s)","properties":{"non_sampled_cache_size":{"type":"number","description":"NonSampledCacheSize specifies the size of the cache that holds the non-sampled trace IDs. This value will be the maximum amount of trace IDs that the cache can hold before overwriting previous IDs. For effective use, this value should be at least an order of magnitude greater than Config.NumTraces. If left as default 0, a no-op DecisionCache will be used."},"sampled_cache_size":{"type":"number","description":"SampledCacheSize specifies the size of the cache that holds the sampled trace IDs. This value will be the maximum amount of trace IDs that the cache can hold before overwriting previous IDs. For effective use, this value should be at least an order of magnitude greater than Config.NumTraces. If left as default 0, a no-op DecisionCache will be used."}}},"decision_wait":{"type":"duration","description":"DecisionWait is the time before timer handling for a trace. When sampling_strategy is \"trace-complete\", this controls decision timing. When sampling_strategy is \"span-ingest\", this controls pending cleanup finalization timing."},"decision_wait_after_root_received":{"type":"duration","description":"DecisionWaitAfterRootReceived adds root-span-based acceleration for timer handling. When sampling_strategy is \"trace-complete\", this can make decisions earlier. When sampling_strategy is \"span-ingest\", this can finalize pending traces earlier on cleanup."},"drop_pending_traces_on_shutdown":{"type":"boolean","description":"DropPendingTracesOnShutdown will drop all traces that are part of batches that have not yet reached the decision wait when the processor is shutdown."},"expected_new_traces_per_sec":{"type":"number","description":"ExpectedNewTracesPerSec sets the expected number of new traces sending to the tail sampling processor per second. This helps with allocating data structures with closer to actual usage size."},"maximum_trace_size_bytes":{"type":"number","description":"MaximumTraceSizeBytes is the largest size of a trace a decision will be made for. If the trace size exceeds this it will be dropped before the decision period to keep memory more predictable. A 0 value disables dropping large traces early."},"num_shards":{"type":"number","description":"NumShards controls the number of parallel goroutine loops processing traces. Each shard runs an independent event loop with its own trace storage and decision batcher. Traces are routed to shards by a hash of the trace ID, ensuring all spans for a given trace are processed by the same shard. Higher values reduce contention between trace ingestion and sampling decision evaluation under high load. NumTraces, ExpectedNewTracesPerSec, decision cache sizes, and per-second rate limits in policies (rate_limiting, bytes_limiting, and composite max_total_spans_per_second) are divided evenly across shards so aggregate behavior matches the configured values. Limiter burst capacities are not divided so single large traces stay admissible regardless of the shard count. Must not exceed 256, and values greater than 1 are not supported with tail_storage. Defaults to 1 (single event loop, original behavior)."},"num_traces":{"type":"number","description":"NumTraces is the number of traces kept on memory. Typically most of the data of a trace is released after a sampling decision is taken."},"policies":{"type":"object[]","description":"PolicyCfgs sets the tail-based sampling policy which makes a sampling decision for a given trace when requested.","properties":{"ExtensionCfg":{"type":"object","description":"Configs for any extensions that are used."},"and":{"type":"object","description":"Configs for defining and policy","properties":{"and_sub_policy":{"type":"object[]","properties":{"ExtensionCfg":{"type":"object","description":"Configs for any extensions that are used."},"boolean_attribute":{"type":"object","description":"Configs for boolean attribute filter sampling policy evaluator."},"bytes_limiting":{"type":"object","description":"Configs for bytes limiting filter sampling policy evaluator."},"latency":{"type":"object","description":"Configs for latency filter sampling policy evaluator."},"name":{"type":"string","description":"Name given to the instance of the policy to make easy to identify it in metrics and logs."},"not":{"type":"object","description":"Configs for defining not policy under and policy."},"numeric_attribute":{"type":"object","description":"Configs for numeric attribute filter sampling policy evaluator."},"ottl_condition":{"type":"object","description":"Configs for OTTL condition filter sampling policy evaluator"},"probabilistic":{"type":"object","description":"Configs for probabilistic sampling policy evaluator."},"rate_limiting":{"type":"object","description":"Configs for rate limiting filter sampling policy evaluator."},"span_count":{"type":"object","description":"Configs for span count filter sampling policy evaluator."},"status_code":{"type":"object","description":"Configs for status code filter sampling policy evaluator."},"string_attribute":{"type":"object","description":"Configs for string attribute filter sampling policy evaluator."},"trace_state":{"type":"object","description":"Configs for defining trace_state policy"},"type":{"type":"string","description":"Type of the policy this will be used to match the proper configuration of the policy."}}}}},"boolean_attribute":{"type":"object","description":"Configs for boolean attribute filter sampling policy evaluator.","properties":{"invert_match":{"type":"boolean","description":"InvertMatch indicates that values must not match against attribute values. If InvertMatch is true and Values is equal to 'true', all other values will be sampled except 'true'. Also, if the specified Key does not match any resource or span attributes, data will be sampled."},"key":{"type":"string","description":"Tag that the filter is going to be matching against."},"value":{"type":"boolean","description":"Value indicate the bool value, either true or false to use when matching against attribute values. BooleanAttribute Policy will apply exact value match on Value"}}},"bytes_limiting":{"type":"object","description":"Configs for bytes limiting filter sampling policy evaluator.","properties":{"burst_capacity":{"type":"number","description":"BurstCapacity sets the maximum burst capacity in bytes. If not specified, defaults to 2x BytesPerSecond. This allows for short bursts of traffic above the sustained rate. It also acts as a limit for individual trace sizes, a single trace larger than the burst size will not pass."},"bytes_per_second":{"type":"number","description":"BytesPerSecond sets the limit on the maximum number of bytes that can be processed each second."}}},"composite":{"type":"object","description":"Configs for defining composite policy","properties":{"composite_sub_policy":{"type":"object[]","properties":{"ExtensionCfg":{"type":"object","description":"Configs for any extensions that are used."},"and":{"type":"object","description":"Configs for and policy evaluator."},"boolean_attribute":{"type":"object","description":"Configs for boolean attribute filter sampling policy evaluator."},"bytes_limiting":{"type":"object","description":"Configs for bytes limiting filter sampling policy evaluator."},"latency":{"type":"object","description":"Configs for latency filter sampling policy evaluator."},"name":{"type":"string","description":"Name given to the instance of the policy to make easy to identify it in metrics and logs."},"numeric_attribute":{"type":"object","description":"Configs for numeric attribute filter sampling policy evaluator."},"ottl_condition":{"type":"object","description":"Configs for OTTL condition filter sampling policy evaluator"},"probabilistic":{"type":"object","description":"Configs for probabilistic sampling policy evaluator."},"rate_limiting":{"type":"object","description":"Configs for rate limiting filter sampling policy evaluator."},"span_count":{"type":"object","description":"Configs for span count filter sampling policy evaluator."},"status_code":{"type":"object","description":"Configs for status code filter sampling policy evaluator."},"string_attribute":{"type":"object","description":"Configs for string attribute filter sampling policy evaluator."},"trace_state":{"type":"object","description":"Configs for defining trace_state policy"},"type":{"type":"string","description":"Type of the policy this will be used to match the proper configuration of the policy."}}},"max_total_spans_per_second":{"type":"number"},"policy_order":{"type":"string[]"},"rate_allocation":{"type":"object[]","properties":{"percent":{"type":"number"},"policy":{"type":"string"}}}}},"drop":{"type":"object","description":"Configs for defining drop policy","properties":{"drop_sub_policy":{"type":"object[]","properties":{"ExtensionCfg":{"type":"object","description":"Configs for any extensions that are used."},"boolean_attribute":{"type":"object","description":"Configs for boolean attribute filter sampling policy evaluator."},"bytes_limiting":{"type":"object","description":"Configs for bytes limiting filter sampling policy evaluator."},"latency":{"type":"object","description":"Configs for latency filter sampling policy evaluator."},"name":{"type":"string","description":"Name given to the instance of the policy to make easy to identify it in metrics and logs."},"not":{"type":"object","description":"Configs for defining not policy under and policy."},"numeric_attribute":{"type":"object","description":"Configs for numeric attribute filter sampling policy evaluator."},"ottl_condition":{"type":"object","description":"Configs for OTTL condition filter sampling policy evaluator"},"probabilistic":{"type":"object","description":"Configs for probabilistic sampling policy evaluator."},"rate_limiting":{"type":"object","description":"Configs for rate limiting filter sampling policy evaluator."},"span_count":{"type":"object","description":"Configs for span count filter sampling policy evaluator."},"status_code":{"type":"object","description":"Configs for status code filter sampling policy evaluator."},"string_attribute":{"type":"object","description":"Configs for string attribute filter sampling policy evaluator."},"trace_state":{"type":"object","description":"Configs for defining trace_state policy"},"type":{"type":"string","description":"Type of the policy this will be used to match the proper configuration of the policy."}}}}},"latency":{"type":"object","description":"Configs for latency filter sampling policy evaluator.","properties":{"threshold_ms":{"type":"number","description":"Lower bound in milliseconds. Retaining original name for compatibility"},"upper_threshold_ms":{"type":"number","description":"Upper bound in milliseconds."}}},"name":{"type":"string","description":"Name given to the instance of the policy to make easy to identify it in metrics and logs."},"not":{"type":"object","description":"Configs for defining not policy","properties":{"not_sub_policy":{"type":"object","description":"NotSubPolicyCfg holds the common configuration to the policy under the not policy.","properties":{"ExtensionCfg":{"type":"object","description":"Configs for any extensions that are used."},"boolean_attribute":{"type":"object","description":"Configs for boolean attribute filter sampling policy evaluator."},"bytes_limiting":{"type":"object","description":"Configs for bytes limiting filter sampling policy evaluator."},"latency":{"type":"object","description":"Configs for latency filter sampling policy evaluator."},"name":{"type":"string","description":"Name given to the instance of the policy to make easy to identify it in metrics and logs."},"numeric_attribute":{"type":"object","description":"Configs for numeric attribute filter sampling policy evaluator."},"ottl_condition":{"type":"object","description":"Configs for OTTL condition filter sampling policy evaluator"},"probabilistic":{"type":"object","description":"Configs for probabilistic sampling policy evaluator."},"rate_limiting":{"type":"object","description":"Configs for rate limiting filter sampling policy evaluator."},"span_count":{"type":"object","description":"Configs for span count filter sampling policy evaluator."},"status_code":{"type":"object","description":"Configs for status code filter sampling policy evaluator."},"string_attribute":{"type":"object","description":"Configs for string attribute filter sampling policy evaluator."},"trace_state":{"type":"object","description":"Configs for defining trace_state policy"},"type":{"type":"string","description":"Type of the policy this will be used to match the proper configuration of the policy."}}}}},"numeric_attribute":{"type":"object","description":"Configs for numeric attribute filter sampling policy evaluator.","properties":{"invert_match":{"type":"boolean","description":"InvertMatch indicates that values must not match against attribute values. If InvertMatch is true and Values is equal to '123', all other values will be sampled except '123'. Also, if the specified Key does not match any resource or span attributes, data will be sampled."},"key":{"type":"string","description":"Tag that the filter is going to be matching against."},"max_value":{"type":"number","description":"MaxValue is the maximum value of the attribute to be considered a match."},"min_value":{"type":"number","description":"MinValue is the minimum value of the attribute to be considered a match."}}},"ottl_condition":{"type":"object","description":"Configs for OTTL condition filter sampling policy evaluator","properties":{"error_mode":{"type":"string","description":"ErrorMode is the way OTTL should handle errors."},"span":{"type":"string[]"},"spanevent":{"type":"string[]"}}},"probabilistic":{"type":"object","description":"Configs for probabilistic sampling policy evaluator.","properties":{"hash_salt":{"type":"string","description":"HashSalt allows one to configure the hashing salts. This is important in scenarios where multiple layers of collectors have different sampling rates: if they use the same salt all passing one layer may pass the other even if they have different sampling rates, configuring different salts avoids that."},"sampling_percentage":{"type":"number","description":"SamplingPercentage is the percentage rate at which traces are going to be sampled. Defaults to zero, i.e.: no sample. Values greater or equal 100 are treated as \"sample all traces\"."}}},"rate_limiting":{"type":"object","description":"Configs for rate limiting filter sampling policy evaluator.","properties":{"burst_capacity":{"type":"number","description":"BurstCapacity sets the maximum burst capacity in spans. If not specified, defaults to 2x SpansPerSecond. This allows for short bursts of traffic above the sustained rate. It also acts as a limit for individual trace span counts, a single trace with more spans than the burst size will not pass."},"spans_per_second":{"type":"number","description":"SpansPerSecond sets the limit on the maximum number of spans that can be processed each second."}}},"span_count":{"type":"object","description":"Configs for span count filter sampling policy evaluator.","properties":{"max_spans":{"type":"number"},"min_spans":{"type":"number","description":"Minimum number of spans in a Trace"}}},"status_code":{"type":"object","description":"Configs for status code filter sampling policy evaluator.","properties":{"status_codes":{"type":"string[]"}}},"string_attribute":{"type":"object","description":"Configs for string attribute filter sampling policy evaluator.","properties":{"cache_max_size":{"type":"number","description":"CacheMaxSize is the maximum number of attribute entries of LRU Cache that stores the matched result from the regular expressions defined in Values. CacheMaxSize will not be used if EnabledRegexMatching is set to false."},"enabled_regex_matching":{"type":"boolean","description":"EnabledRegexMatching determines whether match attribute values by regexp string."},"invert_match":{"type":"boolean","description":"InvertMatch indicates that values or regular expressions must not match against attribute values. If InvertMatch is true and Values is equal to 'acme', all other values will be sampled except 'acme'. Also, if the specified Key does not match on any resource or span attributes, data will be sampled."},"key":{"type":"string","description":"Tag that the filter is going to be matching against."},"values":{"type":"string[]","description":"Values indicate the set of values or regular expressions to use when matching against attribute values. StringAttribute Policy will apply exact value match on Values unless EnabledRegexMatching is true."}}},"trace_state":{"type":"object","description":"Configs for defining trace_state policy","properties":{"key":{"type":"string","description":"Tag that the filter is going to be matching against."},"values":{"type":"string[]","description":"Values indicate the set of values to use when matching against trace_state values."}}},"type":{"type":"string","description":"Type of the policy this will be used to match the proper configuration of the policy."}}},"sample_on_first_match":{"type":"boolean","description":"Make decision as soon as a policy matches"},"sampling_strategy":{"type":"string","description":"SamplingStrategy controls how/when sampling decisions are made. \"trace-complete\" (default) evaluates accumulated trace data on timer handling. \"span-ingest\" evaluates each incoming batch on ingest; terminal outcomes finalize immediately, and non-terminal traces are finalized on cleanup."},"tail_storage":{"type":"component id","description":"TailStorageID specifies an optional tail storage extension to use for buffering spans. If not set, in-memory tail storage is used. It is behind feature gate `processor.tailsamplingprocessor.tailstorageextension`."}},"TransformProcessor":{"error_mode":{"type":"string","description":"ErrorMode determines how the processor reacts to errors that occur while processing a statement. Valid values are `ignore` and `propagate`. `ignore` means the processor ignores errors returned by statements and continues on to the next statement. This is the recommended mode. `propagate` means the processor returns the error up the pipeline. This will result in the payload being dropped from the collector. The default value is `ignore`."},"flatten_data":{"type":"boolean"},"log_statements":{"type":"object[]","properties":{"conditions":{"type":"string[]"},"context":{"type":"string"},"error_mode":{"type":"string","description":"ErrorMode determines how the processor reacts to errors that occur while processing this group of statements. When provided, it overrides the default Config ErrorMode."},"shared_cache":{"type":"boolean","description":"SharedCache is experimental and subject to change or removal in the future."},"statements":{"type":"string[]"}}},"metric_statements":{"type":"object[]","properties":{"conditions":{"type":"string[]"},"context":{"type":"string"},"error_mode":{"type":"string","description":"ErrorMode determines how the processor reacts to errors that occur while processing this group of statements. When provided, it overrides the default Config ErrorMode."},"shared_cache":{"type":"boolean","description":"SharedCache is experimental and subject to change or removal in the future."},"statements":{"type":"string[]"}}},"profile_statements":{"type":"object[]","description":"ProfileStatements configures the OTTL statements executed against profile data. Experimental: *NOTE* this API is subject to change or removal in the future.","properties":{"conditions":{"type":"string[]"},"context":{"type":"string"},"error_mode":{"type":"string","description":"ErrorMode determines how the processor reacts to errors that occur while processing this group of statements. When provided, it overrides the default Config ErrorMode."},"shared_cache":{"type":"boolean","description":"SharedCache is experimental and subject to change or removal in the future."},"statements":{"type":"string[]"}}},"trace_statements":{"type":"object[]","properties":{"conditions":{"type":"string[]"},"context":{"type":"string"},"error_mode":{"type":"string","description":"ErrorMode determines how the processor reacts to errors that occur while processing this group of statements. When provided, it overrides the default Config ErrorMode."},"shared_cache":{"type":"boolean","description":"SharedCache is experimental and subject to change or removal in the future."},"statements":{"type":"string[]"}}}},"ZPagesExtension":{"auth":{"type":"object","description":"Auth for this receiver","properties":{"authenticator":{"type":"component id","description":"AuthenticatorID specifies the name of the extension to use in order to authenticate the incoming data point."},"request_params":{"type":"string[]","description":"RequestParameters is a list of parameters that should be extracted from the request and added to the context. When a parameter is found in both the query string and the header, the value from the query string will be used."}}},"compression_algorithms":{"type":"string[]","description":"CompressionAlgorithms configures the list of compression algorithms the server can accept. Default: [\"\", \"gzip\", \"zstd\", \"zlib\", \"snappy\", \"deflate\"]"},"cors":{"type":"object","description":"CORS configures the server for HTTP cross-origin resource sharing (CORS).","properties":{"allowed_headers":{"type":"string[]","description":"AllowedHeaders sets what headers will be allowed in CORS requests. The Accept, Accept-Language, Content-Type, and Content-Language headers are implicitly allowed. If no headers are listed, X-Requested-With will also be accepted by default. Include \"*\" to allow any request header."},"allowed_origins":{"type":"string[]","description":"AllowedOrigins sets the allowed values of the Origin header for HTTP/JSON requests to an OTLP receiver. An origin may contain a wildcard (*) to replace 0 or more characters (e.g., \"http://*.domain.com\", or \"*\" to allow any origin)."},"exposed_headers":{"type":"string[]","description":"ExposedHeaders sets the value of the Access-Control-Expose-Headers response header, indicating which headers are safe to expose to the API of a CORS response."},"max_age":{"type":"number","description":"MaxAge sets the value of the Access-Control-Max-Age response header. Set it to the number of seconds that browsers should cache a CORS preflight response for."}}},"endpoint":{"type":"string","description":"Endpoint configures the listening address for the server."},"include_metadata":{"type":"boolean","description":"IncludeMetadata propagates the client metadata from the incoming requests to the downstream consumers"},"keepalive":{"type":"object","description":"Keepalive settings for the HTTP server.","properties":{"enabled":{"type":"boolean","description":"Set to false to disable HTTP keep-alives. Default is true."},"idle_timeout":{"type":"duration","description":"IdleTimeout is the maximum amount of time to wait for the next request when keep-alives are enabled. If IdleTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout."}}},"max_request_body_size":{"type":"number","description":"MaxRequestBodySize sets the maximum request body size in bytes. Default: 20MiB."},"middlewares":{"type":"object[]","description":"Middlewares are used to add custom functionality to the HTTP server. Middleware handlers are called in the order they appear in this list, with the first middleware becoming the outermost handler.","properties":{"id":{"type":"component id","description":"ID specifies the name of the extension to use."}}},"read_header_timeout":{"type":"duration","description":"ReadHeaderTimeout is the amount of time allowed to read request headers. The connection's read deadline is reset after reading the headers and the Handler can decide what is considered too slow for the body. If ReadHeaderTimeout is zero, the value of ReadTimeout is used. If both are zero, there is no timeout."},"read_timeout":{"type":"duration","description":"ReadTimeout is the maximum duration for reading the entire request, including the body. A zero or negative value means there will be no timeout. Because ReadTimeout does not let Handlers make per-request decisions on each request body's acceptable deadline or upload rate, most users will prefer to use ReadHeaderTimeout. It is valid to use them both."},"response_headers":{"type":"map | list","description":"Additional headers attached to each HTTP response sent to the client. Header values are opaque since they may be sensitive.","properties":{"name":{"type":"string"},"value":{"type":"string","description":"String alias that is marshaled and printed in an opaque way. To recover the original value, cast it to a string."}}},"tls":{"type":"object","description":"TLS struct exposes TLS client configuration.","properties":{"ca_file":{"type":"string","description":"Path to the CA cert. For a client this verifies the server certificate. For a server this verifies client certificates. If empty uses system root CA. (optional)"},"ca_pem":{"type":"string","description":"In memory PEM encoded cert. (optional)"},"cert_file":{"type":"string","description":"Path to the TLS cert to use for TLS required connections. (optional)"},"cert_pem":{"type":"string","description":"In memory PEM encoded TLS cert to use for TLS required connections. (optional)"},"cipher_suites":{"type":"string[]","description":"CipherSuites is a list of TLS cipher suites that the TLS transport can use. If left blank, a safe default list is used. See https://go.dev/src/crypto/tls/cipher_suites.go for a list of supported cipher suites."},"curve_preferences":{"type":"string[]","description":"contains the elliptic curves that will be used in an ECDHE handshake, in preference order Defaults to empty list and \"crypto/tls\" defaults are used, internally."},"include_system_ca_certs_pool":{"type":"boolean","description":"If true, load system CA certificates pool in addition to the certificates configured in this struct."},"key_file":{"type":"string","description":"Path to the TLS key to use for TLS required connections. (optional)"},"key_pem":{"type":"string","description":"In memory PEM encoded TLS key to use for TLS required connections. (optional)"},"max_version":{"type":"string","description":"MaxVersion sets the maximum TLS version that is acceptable. If not set, refer to crypto/tls for defaults. (optional)"},"min_version":{"type":"string","description":"MinVersion sets the minimum TLS version that is acceptable. If not set, TLS 1.2 will be used. (optional)"},"reload_interval":{"type":"duration","description":"ReloadInterval specifies the duration after which the certificate will be reloaded If not set, it will never be reloaded (optional)"},"tpm":{"type":"object","description":"Trusted platform module configuration","properties":{"auth":{"type":"string"},"enabled":{"type":"boolean"},"owner_auth":{"type":"string"},"path":{"type":"string","description":"The path to the TPM device or Unix domain socket. For instance /dev/tpm0 or /dev/tpmrm0."}}},"client_ca_file":{"type":"string","description":"Path to the TLS cert to use by the server to verify a client certificate. (optional) This sets the ClientCAs and ClientAuth to RequireAndVerifyClientCert in the TLSConfig. Please refer to https://godoc.org/crypto/tls#Config for more information. (optional)"},"client_ca_file_reload":{"type":"boolean","description":"Reload the ClientCAs file when it is modified (optional, default false)"}}},"write_timeout":{"type":"duration","description":"WriteTimeout is the maximum duration before timing out writes of the response. It is reset whenever a new request's header is read. Like ReadTimeout, it does not let Handlers make decisions on a per-request basis. A zero or negative value means there will be no timeout."},"expvar":{"type":"object","description":"ExpvarConfig has the configuration for the expvar service.","properties":{"enabled":{"type":"boolean","description":"Enabled indicates whether to enable expvar service. (default = false)"}}}}}
|