diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index d6a1bd0d..4e5f06a1 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -58,7 +58,7 @@ Properties defined in the schema should be lower [snake case](https://en.wikiped ### Properties requiring pattern matching -When a property requires pattern matching, use wildcard `*` (match any number of any character, including none) and `?` (match any single character) instead of regex. If a single property with wildcards is likely to be insufficient to model the configuration requirements, accept `included` and `excluded` properties, each with an array of strings with wildcard entries. The wildcard entries should be joined with a logical OR. If `included` is not specified, assume that all entries are included. Apply `excluded` after applying `included`. Examples: +When a property requires pattern matching, use wildcard `*` (match any number of any character, including none) and `?` (match any single character) instead of regex. Matching is case-sensitive. If a single property with wildcards is likely to be insufficient to model the configuration requirements, accept `included` and `excluded` properties, each with an array of strings with wildcard entries. The wildcard entries should be joined with a logical OR. If `included` is not specified, assume that all entries are included. Apply `excluded` after applying `included`. Examples: * Given `excluded: ["a*"]`: Match all except values starting with `a`. * Given `included: ["a*", "b*"]`, `excluded: ["ab*"]`: Match any value starting with `a` or `b`, excluding values starting with `ab`. diff --git a/opentelemetry_configuration.json b/opentelemetry_configuration.json index b4a3d01d..dabb4463 100644 --- a/opentelemetry_configuration.json +++ b/opentelemetry_configuration.json @@ -592,7 +592,7 @@ "items": { "type": "string" }, - "description": "Configure list of value patterns to include.\nValues are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, all values are included.\n" + "description": "Configure list of value patterns to include.\nMatching is case-sensitive. Values are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, all values are included.\n" }, "excluded": { "type": "array", @@ -600,7 +600,7 @@ "items": { "type": "string" }, - "description": "Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).\nValues are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, .included attributes are included.\n" + "description": "Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).\nMatching is case-sensitive. Values are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, .included attributes are included.\n" } }, "required": [ @@ -962,7 +962,7 @@ "type": [ "string" ], - "description": "Configure logger names to match, evaluated as follows:\n\n * If the logger name exactly matches.\n * If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" + "description": "Configure logger names to match. Matching is case-sensitive, evaluated as follows:\n\n * If the logger name exactly matches.\n * If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalLoggerConfig", @@ -1028,7 +1028,7 @@ "type": [ "string" ], - "description": "Configure meter names to match, evaluated as follows:\n\n * If the meter name exactly matches.\n * If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" + "description": "Configure meter names to match. Matching is case-sensitive, evaluated as follows:\n\n * If the meter name exactly matches.\n * If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalMeterConfig", @@ -1319,7 +1319,7 @@ "type": [ "string" ], - "description": "Configure tracer names to match, evaluated as follows:\n\n * If the tracer name exactly matches.\n * If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" + "description": "Configure tracer names to match. Matching is case-sensitive, evaluated as follows:\n\n * If the tracer name exactly matches.\n * If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalTracerConfig", @@ -1467,7 +1467,7 @@ "items": { "type": "string" }, - "description": "Configure list of value patterns to include.\nValues are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, all values are included.\n" + "description": "Configure list of value patterns to include.\nMatching is case-sensitive. Values are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, all values are included.\n" }, "excluded": { "type": "array", @@ -1475,7 +1475,7 @@ "items": { "type": "string" }, - "description": "Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).\nValues are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, .included attributes are included.\n" + "description": "Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).\nMatching is case-sensitive. Values are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, .included attributes are included.\n" } } }, diff --git a/schema-docs.md b/schema-docs.md index 43928b39..a45339a4 100644 --- a/schema-docs.md +++ b/schema-docs.md @@ -1318,8 +1318,8 @@ No snippets. | Property | Type | Required? | Default and Null Behavior | Constraints | Description | |---|---|---|---|---|---| -| `excluded` | `array` of `string` | `false` | If omitted, .included attributes are included. | * `minItems`: `1`
| Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).
Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| -| `included` | `array` of `string` | `false` | If omitted, all values are included. | * `minItems`: `1`
| Configure list of value patterns to include.
Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| `excluded` | `array` of `string` | `false` | If omitted, .included attributes are included. | * `minItems`: `1`
| Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).
Matching is case-sensitive. Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| `included` | `array` of `string` | `false` | If omitted, all values are included. | * `minItems`: `1`
| Configure list of value patterns to include.
Matching is case-sensitive. Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
|
Language support status @@ -1356,7 +1356,7 @@ No snippets. "items": { "type": "string" }, - "description": "Configure list of value patterns to include.\nValues are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, all values are included.\n" + "description": "Configure list of value patterns to include.\nMatching is case-sensitive. Values are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, all values are included.\n" }, "excluded": { "type": "array", @@ -1364,7 +1364,7 @@ No snippets. "items": { "type": "string" }, - "description": "Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).\nValues are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, .included attributes are included.\n" + "description": "Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).\nMatching is case-sensitive. Values are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, .included attributes are included.\n" } } } @@ -4664,8 +4664,8 @@ No snippets. | Property | Type | Required? | Default and Null Behavior | Constraints | Description | |---|---|---|---|---|---| -| `excluded` | `array` of `string` | `false` | If omitted, .included attributes are included. | * `minItems`: `1`
| Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).
Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| -| `included` | `array` of `string` | `false` | If omitted, all values are included. | * `minItems`: `1`
| Configure list of value patterns to include.
Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| `excluded` | `array` of `string` | `false` | If omitted, .included attributes are included. | * `minItems`: `1`
| Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).
Matching is case-sensitive. Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| `included` | `array` of `string` | `false` | If omitted, all values are included. | * `minItems`: `1`
| Configure list of value patterns to include.
Matching is case-sensitive. Values are evaluated to match as follows:
* If the value exactly matches.
* If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| | `key` | `string` | `true` | Property is required and must be non-null. | No constraints. | The attribute key to match against. |
@@ -4707,7 +4707,7 @@ No snippets. "items": { "type": "string" }, - "description": "Configure list of value patterns to include.\nValues are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, all values are included.\n" + "description": "Configure list of value patterns to include.\nMatching is case-sensitive. Values are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, all values are included.\n" }, "excluded": { "type": "array", @@ -4715,7 +4715,7 @@ No snippets. "items": { "type": "string" }, - "description": "Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).\nValues are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, .included attributes are included.\n" + "description": "Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included).\nMatching is case-sensitive. Values are evaluated to match as follows:\n * If the value exactly matches.\n * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nIf omitted, .included attributes are included.\n" } }, "required": [ @@ -5770,7 +5770,7 @@ loggers: | Property | Type | Required? | Default and Null Behavior | Constraints | Description | |---|---|---|---|---|---| | `config` | [`ExperimentalLoggerConfig`](#experimentalloggerconfig) | `true` | Property is required and must be non-null. | No constraints. | The logger config. | -| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure logger names to match, evaluated as follows:

* If the logger name exactly matches.
* If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure logger names to match. Matching is case-sensitive, evaluated as follows:

* If the logger name exactly matches.
* If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
|
Language support status @@ -5806,7 +5806,7 @@ No snippets. "type": [ "string" ], - "description": "Configure logger names to match, evaluated as follows:\n\n * If the logger name exactly matches.\n * If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" + "description": "Configure logger names to match. Matching is case-sensitive, evaluated as follows:\n\n * If the logger name exactly matches.\n * If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalLoggerConfig", @@ -5988,7 +5988,7 @@ meters: | Property | Type | Required? | Default and Null Behavior | Constraints | Description | |---|---|---|---|---|---| | `config` | [`ExperimentalMeterConfig`](#experimentalmeterconfig) | `true` | Property is required and must be non-null. | No constraints. | The meter config. | -| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure meter names to match, evaluated as follows:

* If the meter name exactly matches.
* If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure meter names to match. Matching is case-sensitive, evaluated as follows:

* If the meter name exactly matches.
* If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
|
Language support status @@ -6024,7 +6024,7 @@ No snippets. "type": [ "string" ], - "description": "Configure meter names to match, evaluated as follows:\n\n * If the meter name exactly matches.\n * If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" + "description": "Configure meter names to match. Matching is case-sensitive, evaluated as follows:\n\n * If the meter name exactly matches.\n * If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalMeterConfig", @@ -6929,7 +6929,7 @@ tracers: | Property | Type | Required? | Default and Null Behavior | Constraints | Description | |---|---|---|---|---|---| | `config` | [`ExperimentalTracerConfig`](#experimentaltracerconfig) | `true` | Property is required and must be non-null. | No constraints. | The tracer config. | -| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure tracer names to match, evaluated as follows:

* If the tracer name exactly matches.
* If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
| +| `name` | `string` | `true` | Property is required and must be non-null. | No constraints. | Configure tracer names to match. Matching is case-sensitive, evaluated as follows:

* If the tracer name exactly matches.
* If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.
|
Language support status @@ -6965,7 +6965,7 @@ No snippets. "type": [ "string" ], - "description": "Configure tracer names to match, evaluated as follows:\n\n * If the tracer name exactly matches.\n * If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" + "description": "Configure tracer names to match. Matching is case-sensitive, evaluated as follows:\n\n * If the tracer name exactly matches.\n * If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.\nProperty is required and must be non-null.\n" }, "config": { "$ref": "#/$defs/ExperimentalTracerConfig", diff --git a/schema/common.yaml b/schema/common.yaml index ddf85390..a22c5a63 100644 --- a/schema/common.yaml +++ b/schema/common.yaml @@ -10,7 +10,7 @@ $defs: type: string description: | Configure list of value patterns to include. - Values are evaluated to match as follows: + Matching is case-sensitive. Values are evaluated to match as follows: * If the value exactly matches. * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none. defaultBehavior: all values are included @@ -21,7 +21,7 @@ $defs: type: string description: | Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included). - Values are evaluated to match as follows: + Matching is case-sensitive. Values are evaluated to match as follows: * If the value exactly matches. * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none. defaultBehavior: .included attributes are included diff --git a/schema/logger_provider.yaml b/schema/logger_provider.yaml index 118ed0e4..5d70042a 100644 --- a/schema/logger_provider.yaml +++ b/schema/logger_provider.yaml @@ -163,7 +163,7 @@ $defs: type: - string description: | - Configure logger names to match, evaluated as follows: + Configure logger names to match. Matching is case-sensitive, evaluated as follows: * If the logger name exactly matches. * If the logger name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none. diff --git a/schema/meter_provider.yaml b/schema/meter_provider.yaml index 56db1f50..ad726536 100644 --- a/schema/meter_provider.yaml +++ b/schema/meter_provider.yaml @@ -730,7 +730,7 @@ $defs: type: - string description: | - Configure meter names to match, evaluated as follows: + Configure meter names to match. Matching is case-sensitive, evaluated as follows: * If the meter name exactly matches. * If the meter name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none. diff --git a/schema/tracer_provider.yaml b/schema/tracer_provider.yaml index 7b327e38..fd2c97e3 100644 --- a/schema/tracer_provider.yaml +++ b/schema/tracer_provider.yaml @@ -349,7 +349,7 @@ $defs: type: string description: | Configure list of value patterns to include. - Values are evaluated to match as follows: + Matching is case-sensitive. Values are evaluated to match as follows: * If the value exactly matches. * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none. defaultBehavior: all values are included @@ -360,7 +360,7 @@ $defs: type: string description: | Configure list of value patterns to exclude. Applies after .included (i.e. excluded has higher priority than included). - Values are evaluated to match as follows: + Matching is case-sensitive. Values are evaluated to match as follows: * If the value exactly matches. * If the value matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none. defaultBehavior: .included attributes are included @@ -533,7 +533,7 @@ $defs: type: - string description: | - Configure tracer names to match, evaluated as follows: + Configure tracer names to match. Matching is case-sensitive, evaluated as follows: * If the tracer name exactly matches. * If the tracer name matches the wildcard pattern, where '?' matches any single character and '*' matches any number of characters including none.