diff --git a/examples/kitchen-sink.yaml b/examples/kitchen-sink.yaml index 693df7ce..ed65b3b3 100644 --- a/examples/kitchen-sink.yaml +++ b/examples/kitchen-sink.yaml @@ -804,8 +804,14 @@ tracer_provider: # Configure local_parent_sampled sampler. # If omitted or null, always_on is used. local_parent_sampled: - # Configure sampler to be always_on. - always_on: + # Configure sampler to be composite. + # This property is experimental and subject to breaking changes in minor versions. + composite/development: + # Configure sampler to be probability. + probability: + # Configure ratio. + # If omitted or null, 1.0 is used. + ratio: 0.001 # Configure local_parent_not_sampled sampler. # If omitted or null, always_off is used. local_parent_not_sampled: diff --git a/schema-docs.md b/schema-docs.md index e058af0a..223025b3 100644 --- a/schema-docs.md +++ b/schema-docs.md @@ -875,6 +875,242 @@ Usages: } +## ExperimentalComposableAlwaysOffSampler + +> [!WARNING] +> This type is [experimental](README.md#experimental-features). + +No properties. + +Constraints: + +* `additionalProperties`: `false` + +Usages: + +* [`ExperimentalComposableSampler.always_off`](#experimentalcomposablesampler) + +
+JSON Schema + +[JSON Schema Source File](./schema/tracer_provider.json) +
{
+  "type": [
+    "object",
+    "null"
+  ],
+  "additionalProperties": false
+}
+
+ +## ExperimentalComposableAlwaysOnSampler + +> [!WARNING] +> This type is [experimental](README.md#experimental-features). + +No properties. + +Constraints: + +* `additionalProperties`: `false` + +Usages: + +* [`ExperimentalComposableSampler.always_on`](#experimentalcomposablesampler) + +
+JSON Schema + +[JSON Schema Source File](./schema/tracer_provider.json) +
{
+  "type": [
+    "object",
+    "null"
+  ],
+  "additionalProperties": false
+}
+
+ +## ExperimentalComposableParentBasedSampler + +> [!WARNING] +> This type is [experimental](README.md#experimental-features). + +| Property | Type | Required? | Constraints | Description | +|---|---|---|---|---| +| `root` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with no parent. | +| `remote_parent_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with a remote parent that is sampled. | +| `remote_parent_not_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with a remote parent that is not sampled. | +| `local_parent_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with a local parent that is sampled. | +| `local_parent_not_sampled` | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configures the sampler for spans with a local parent that is not sampled. | + +
+Language support status + +| Property | [cpp](#cpp) | [go](#go) | [java](#java) | [js](#js) | +|---|---|---|---|---| +| `root` | unknown | unknown | unknown | unknown | +| `remote_parent_sampled` | unknown | unknown | unknown | unknown | +| `remote_parent_not_sampled` | unknown | unknown | unknown | unknown | +| `local_parent_sampled` | unknown | unknown | unknown | unknown | +| `local_parent_not_sampled` | unknown | unknown | unknown | unknown | +
+ +Constraints: + +* `additionalProperties`: `false` + +Usages: + +* [`ExperimentalComposableSampler.parent_based`](#experimentalcomposablesampler) + +
+JSON Schema + +[JSON Schema Source File](./schema/tracer_provider.json) +
{
+  "type": [
+    "object",
+    "null"
+  ],
+  "additionalProperties": false,
+  "properties": {
+    "root": {
+      "$ref": "#/$defs/ExperimentalComposableSampler"
+    },
+    "remote_parent_sampled": {
+      "$ref": "#/$defs/ExperimentalComposableSampler"
+    },
+    "remote_parent_not_sampled": {
+      "$ref": "#/$defs/ExperimentalComposableSampler"
+    },
+    "local_parent_sampled": {
+      "$ref": "#/$defs/ExperimentalComposableSampler"
+    },
+    "local_parent_not_sampled": {
+      "$ref": "#/$defs/ExperimentalComposableSampler"
+    }
+  }
+}
+
+ +## ExperimentalComposableProbabilitySampler + +> [!WARNING] +> This type is [experimental](README.md#experimental-features). + +| Property | Type | Required? | Constraints | Description | +|---|---|---|---|---| +| `ratio` | one of:
* `number`
* `null`
| `false` | * `minimum`: `0`
* `maximum`: `1`
| Configure ratio.
If omitted or null, 1.0 is used.
| + +
+Language support status + +| Property | [cpp](#cpp) | [go](#go) | [java](#java) | [js](#js) | +|---|---|---|---|---| +| `ratio` | unknown | unknown | unknown | unknown | +
+ +Constraints: + +* `additionalProperties`: `false` + +Usages: + +* [`ExperimentalComposableSampler.probability`](#experimentalcomposablesampler) + +
+JSON Schema + +[JSON Schema Source File](./schema/tracer_provider.json) +
{
+  "type": [
+    "object",
+    "null"
+  ],
+  "additionalProperties": false,
+  "properties": {
+    "ratio": {
+      "type": [
+        "number",
+        "null"
+      ],
+      "minimum": 0,
+      "maximum": 1
+    }
+  }
+}
+
+ +## ExperimentalComposableSampler + +> [!WARNING] +> This type is [experimental](README.md#experimental-features). + +| Property | Type | Required? | Constraints | Description | +|---|---|---|---|---| +| `always_off` | [`ExperimentalComposableAlwaysOffSampler`](#experimentalcomposablealwaysoffsampler) | `false` | No constraints. | Configure sampler to be always_off. | +| `always_on` | [`ExperimentalComposableAlwaysOnSampler`](#experimentalcomposablealwaysonsampler) | `false` | No constraints. | Configure sampler to be always_on. | +| `probability` | [`ExperimentalComposableProbabilitySampler`](#experimentalcomposableprobabilitysampler) | `false` | No constraints. | Configure sampler to be probability. | +| `parent_based` | [`ExperimentalComposableParentBasedSampler`](#experimentalcomposableparentbasedsampler) | `false` | No constraints. | Configure sampler to be parent_based. | + +
+Language support status + +| Property | [cpp](#cpp) | [go](#go) | [java](#java) | [js](#js) | +|---|---|---|---|---| +| `always_off` | unknown | unknown | unknown | unknown | +| `always_on` | unknown | unknown | unknown | unknown | +| `probability` | unknown | unknown | unknown | unknown | +| `parent_based` | unknown | unknown | unknown | unknown | +
+ +Constraints: + +* `additionalProperties`: `{"type":["object","null"]}` +* `minProperties`: `1` +* `maxProperties`: `1` + +Usages: + +* [`Sampler.composite/development`](#sampler) +* [`ExperimentalComposableParentBasedSampler.root`](#experimentalcomposableparentbasedsampler) +* [`ExperimentalComposableParentBasedSampler.remote_parent_sampled`](#experimentalcomposableparentbasedsampler) +* [`ExperimentalComposableParentBasedSampler.remote_parent_not_sampled`](#experimentalcomposableparentbasedsampler) +* [`ExperimentalComposableParentBasedSampler.local_parent_sampled`](#experimentalcomposableparentbasedsampler) +* [`ExperimentalComposableParentBasedSampler.local_parent_not_sampled`](#experimentalcomposableparentbasedsampler) + +
+JSON Schema + +[JSON Schema Source File](./schema/tracer_provider.json) +
{
+  "type": "object",
+  "additionalProperties": {
+    "type": [
+      "object",
+      "null"
+    ]
+  },
+  "minProperties": 1,
+  "maxProperties": 1,
+  "properties": {
+    "always_off": {
+      "$ref": "#/$defs/ExperimentalComposableAlwaysOffSampler"
+    },
+    "always_on": {
+      "$ref": "#/$defs/ExperimentalComposableAlwaysOnSampler"
+    },
+    "parent_based": {
+      "$ref": "#/$defs/ExperimentalComposableParentBasedSampler"
+    },
+    "probability": {
+      "$ref": "#/$defs/ExperimentalComposableProbabilitySampler"
+    }
+  }
+}
+
+ ## ExperimentalContainerResourceDetector > [!WARNING] @@ -5234,6 +5470,7 @@ Usages: | `trace_id_ratio_based` | [`TraceIdRatioBasedSampler`](#traceidratiobasedsampler) | `false` | No constraints. | Configure sampler to be trace_id_ratio_based. | | `probability/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalProbabilitySampler`](#experimentalprobabilitysampler) | `false` | No constraints. | Configure sampler to be probability. | | `jaeger_remote/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalJaegerRemoteSampler`](#experimentaljaegerremotesampler) | `false` | No constraints. | TODO | +| `composite/development`
**WARNING:** This property is [experimental](README.md#experimental-features). | [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | `false` | No constraints. | Configure sampler to be composite. |
Language support status @@ -5246,6 +5483,7 @@ Usages: | `trace_id_ratio_based` | supported | unknown | supported | unknown | | `probability/development` | supported | unknown | ignored | unknown | | `jaeger_remote/development` | supported | unknown | supported | unknown | +| `composite/development` | supported | unknown | supported | unknown |
Constraints: @@ -5285,6 +5523,9 @@ Usages: "always_on": { "$ref": "#/$defs/AlwaysOnSampler" }, + "composite/development": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, "jaeger_remote/development": { "$ref": "#/$defs/ExperimentalJaegerRemoteSampler" }, @@ -5876,6 +6117,9 @@ Usages: "always_on": { "$ref": "#/$defs/AlwaysOnSampler" }, + "composite/development": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, "jaeger_remote/development": { "$ref": "#/$defs/ExperimentalJaegerRemoteSampler" }, @@ -5987,6 +6231,86 @@ Usages: } } }, + "ExperimentalComposableAlwaysOffSampler": { + "type": [ + "object", + "null" + ], + "additionalProperties": false + }, + "ExperimentalComposableAlwaysOnSampler": { + "type": [ + "object", + "null" + ], + "additionalProperties": false + }, + "ExperimentalComposableParentBasedSampler": { + "type": [ + "object", + "null" + ], + "additionalProperties": false, + "properties": { + "root": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, + "remote_parent_sampled": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, + "remote_parent_not_sampled": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, + "local_parent_sampled": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, + "local_parent_not_sampled": { + "$ref": "#/$defs/ExperimentalComposableSampler" + } + } + }, + "ExperimentalComposableProbabilitySampler": { + "type": [ + "object", + "null" + ], + "additionalProperties": false, + "properties": { + "ratio": { + "type": [ + "number", + "null" + ], + "minimum": 0, + "maximum": 1 + } + } + }, + "ExperimentalComposableSampler": { + "type": "object", + "additionalProperties": { + "type": [ + "object", + "null" + ] + }, + "minProperties": 1, + "maxProperties": 1, + "properties": { + "always_off": { + "$ref": "#/$defs/ExperimentalComposableAlwaysOffSampler" + }, + "always_on": { + "$ref": "#/$defs/ExperimentalComposableAlwaysOnSampler" + }, + "parent_based": { + "$ref": "#/$defs/ExperimentalComposableParentBasedSampler" + }, + "probability": { + "$ref": "#/$defs/ExperimentalComposableProbabilitySampler" + } + } + }, "SimpleSpanProcessor": { "type": "object", "additionalProperties": false, @@ -6435,6 +6759,11 @@ Latest supported file format: `1.0.0-rc.2` | [`DefaultAggregation`](#defaultaggregation) | supported | | | | [`DropAggregation`](#dropaggregation) | supported | | | | [`ExemplarFilter`](#exemplarfilter) | not_implemented | | * `always_off`: not_implemented
* `always_on`: not_implemented
* `trace_based`: not_implemented
| +| [`ExperimentalComposableAlwaysOffSampler`](#experimentalcomposablealwaysoffsampler) | unknown | | | +| [`ExperimentalComposableAlwaysOnSampler`](#experimentalcomposablealwaysonsampler) | unknown | | | +| [`ExperimentalComposableParentBasedSampler`](#experimentalcomposableparentbasedsampler) | unknown | | * `root`: unknown
* `remote_parent_sampled`: unknown
* `remote_parent_not_sampled`: unknown
* `local_parent_sampled`: unknown
* `local_parent_not_sampled`: unknown
| +| [`ExperimentalComposableProbabilitySampler`](#experimentalcomposableprobabilitysampler) | unknown | | * `ratio`: unknown
| +| [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `probability`: unknown
* `parent_based`: unknown
| | [`ExperimentalContainerResourceDetector`](#experimentalcontainerresourcedetector) | not_implemented | | | | [`ExperimentalGeneralInstrumentation`](#experimentalgeneralinstrumentation) | not_applicable | | * `peer`: not_applicable
* `http`: not_applicable
| | [`ExperimentalHostResourceDetector`](#experimentalhostresourcedetector) | not_implemented | | | @@ -6495,7 +6824,7 @@ Latest supported file format: `1.0.0-rc.2` | [`PullMetricReader`](#pullmetricreader) | supported | | * `exporter`: supported
* `producers`: supported
* `cardinality_limits`: supported
| | [`PushMetricExporter`](#pushmetricexporter) | supported | | * `otlp_http`: supported
* `otlp_grpc`: supported
* `otlp_file/development`: supported
* `console`: supported
| | [`Resource`](#resource) | supported | | * `attributes`: supported
* `detection/development`: supported
* `schema_url`: supported
* `attributes_list`: supported
| -| [`Sampler`](#sampler) | supported | | * `always_off`: supported
* `always_on`: supported
* `parent_based`: supported
* `trace_id_ratio_based`: supported
* `probability/development`: supported
* `jaeger_remote/development`: supported
| +| [`Sampler`](#sampler) | supported | | * `always_off`: supported
* `always_on`: supported
* `parent_based`: supported
* `trace_id_ratio_based`: supported
* `probability/development`: supported
* `jaeger_remote/development`: supported
* `composite/development`: supported
| | [`SimpleLogRecordProcessor`](#simplelogrecordprocessor) | supported | | * `exporter`: supported
| | [`SimpleSpanProcessor`](#simplespanprocessor) | supported | | * `exporter`: supported
| | [`SpanExporter`](#spanexporter) | supported | | * `otlp_http`: supported
* `otlp_grpc`: supported
* `otlp_file/development`: supported
* `console`: supported
* `zipkin`: supported
| @@ -6536,6 +6865,11 @@ Latest supported file format: `0.3.0` | [`DefaultAggregation`](#defaultaggregation) | unknown | | | | [`DropAggregation`](#dropaggregation) | unknown | | | | [`ExemplarFilter`](#exemplarfilter) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `trace_based`: unknown
| +| [`ExperimentalComposableAlwaysOffSampler`](#experimentalcomposablealwaysoffsampler) | unknown | | | +| [`ExperimentalComposableAlwaysOnSampler`](#experimentalcomposablealwaysonsampler) | unknown | | | +| [`ExperimentalComposableParentBasedSampler`](#experimentalcomposableparentbasedsampler) | unknown | | * `root`: unknown
* `remote_parent_sampled`: unknown
* `remote_parent_not_sampled`: unknown
* `local_parent_sampled`: unknown
* `local_parent_not_sampled`: unknown
| +| [`ExperimentalComposableProbabilitySampler`](#experimentalcomposableprobabilitysampler) | unknown | | * `ratio`: unknown
| +| [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `probability`: unknown
* `parent_based`: unknown
| | [`ExperimentalContainerResourceDetector`](#experimentalcontainerresourcedetector) | unknown | | | | [`ExperimentalGeneralInstrumentation`](#experimentalgeneralinstrumentation) | unknown | | * `peer`: unknown
* `http`: unknown
| | [`ExperimentalHostResourceDetector`](#experimentalhostresourcedetector) | unknown | | | @@ -6596,7 +6930,7 @@ Latest supported file format: `0.3.0` | [`PullMetricReader`](#pullmetricreader) | unknown | | * `exporter`: unknown
* `producers`: unknown
* `cardinality_limits`: unknown
| | [`PushMetricExporter`](#pushmetricexporter) | unknown | | * `otlp_http`: unknown
* `otlp_grpc`: unknown
* `otlp_file/development`: unknown
* `console`: unknown
| | [`Resource`](#resource) | unknown | | * `attributes`: unknown
* `detection/development`: unknown
* `schema_url`: unknown
* `attributes_list`: unknown
| -| [`Sampler`](#sampler) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `parent_based`: unknown
* `trace_id_ratio_based`: unknown
* `probability/development`: unknown
* `jaeger_remote/development`: unknown
| +| [`Sampler`](#sampler) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `parent_based`: unknown
* `trace_id_ratio_based`: unknown
* `probability/development`: unknown
* `jaeger_remote/development`: unknown
* `composite/development`: unknown
| | [`SimpleLogRecordProcessor`](#simplelogrecordprocessor) | unknown | | * `exporter`: unknown
| | [`SimpleSpanProcessor`](#simplespanprocessor) | unknown | | * `exporter`: unknown
| | [`SpanExporter`](#spanexporter) | unknown | | * `otlp_http`: unknown
* `otlp_grpc`: unknown
* `otlp_file/development`: unknown
* `console`: unknown
* `zipkin`: unknown
| @@ -6637,6 +6971,11 @@ Latest supported file format: `1.0.0-rc.1` | [`DefaultAggregation`](#defaultaggregation) | supported | | | | [`DropAggregation`](#dropaggregation) | supported | | | | [`ExemplarFilter`](#exemplarfilter) | supported | | * `always_off`: supported
* `always_on`: supported
* `trace_based`: supported
| +| [`ExperimentalComposableAlwaysOffSampler`](#experimentalcomposablealwaysoffsampler) | unknown | | | +| [`ExperimentalComposableAlwaysOnSampler`](#experimentalcomposablealwaysonsampler) | unknown | | | +| [`ExperimentalComposableParentBasedSampler`](#experimentalcomposableparentbasedsampler) | unknown | | * `root`: unknown
* `remote_parent_sampled`: unknown
* `remote_parent_not_sampled`: unknown
* `local_parent_sampled`: unknown
* `local_parent_not_sampled`: unknown
| +| [`ExperimentalComposableProbabilitySampler`](#experimentalcomposableprobabilitysampler) | unknown | | * `ratio`: unknown
| +| [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `probability`: unknown
* `parent_based`: unknown
| | [`ExperimentalContainerResourceDetector`](#experimentalcontainerresourcedetector) | supported | | | | [`ExperimentalGeneralInstrumentation`](#experimentalgeneralinstrumentation) | supported | | * `peer`: supported
* `http`: supported
| | [`ExperimentalHostResourceDetector`](#experimentalhostresourcedetector) | supported | | | @@ -6697,7 +7036,7 @@ Latest supported file format: `1.0.0-rc.1` | [`PullMetricReader`](#pullmetricreader) | supported | | * `exporter`: supported
* `producers`: not_implemented
* `cardinality_limits`: supported
| | [`PushMetricExporter`](#pushmetricexporter) | supported | | * `otlp_http`: supported
* `otlp_grpc`: supported
* `otlp_file/development`: supported
* `console`: supported
| | [`Resource`](#resource) | supported | | * `attributes`: supported
* `detection/development`: supported
* `schema_url`: ignored
* `attributes_list`: supported
| -| [`Sampler`](#sampler) | supported | | * `always_off`: supported
* `always_on`: supported
* `parent_based`: supported
* `trace_id_ratio_based`: supported
* `probability/development`: ignored
* `jaeger_remote/development`: supported
| +| [`Sampler`](#sampler) | supported | | * `always_off`: supported
* `always_on`: supported
* `parent_based`: supported
* `trace_id_ratio_based`: supported
* `probability/development`: ignored
* `jaeger_remote/development`: supported
* `composite/development`: supported
| | [`SimpleLogRecordProcessor`](#simplelogrecordprocessor) | supported | | * `exporter`: supported
| | [`SimpleSpanProcessor`](#simplespanprocessor) | supported | | * `exporter`: supported
| | [`SpanExporter`](#spanexporter) | supported | | * `otlp_http`: supported
* `otlp_grpc`: supported
* `otlp_file/development`: supported
* `console`: supported
* `zipkin`: supported
| @@ -6738,6 +7077,11 @@ Latest supported file format: `1.0.0-rc.2` | [`DefaultAggregation`](#defaultaggregation) | unknown | | | | [`DropAggregation`](#dropaggregation) | unknown | | | | [`ExemplarFilter`](#exemplarfilter) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `trace_based`: unknown
| +| [`ExperimentalComposableAlwaysOffSampler`](#experimentalcomposablealwaysoffsampler) | unknown | | | +| [`ExperimentalComposableAlwaysOnSampler`](#experimentalcomposablealwaysonsampler) | unknown | | | +| [`ExperimentalComposableParentBasedSampler`](#experimentalcomposableparentbasedsampler) | unknown | | * `root`: unknown
* `remote_parent_sampled`: unknown
* `remote_parent_not_sampled`: unknown
* `local_parent_sampled`: unknown
* `local_parent_not_sampled`: unknown
| +| [`ExperimentalComposableProbabilitySampler`](#experimentalcomposableprobabilitysampler) | unknown | | * `ratio`: unknown
| +| [`ExperimentalComposableSampler`](#experimentalcomposablesampler) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `probability`: unknown
* `parent_based`: unknown
| | [`ExperimentalContainerResourceDetector`](#experimentalcontainerresourcedetector) | unknown | | | | [`ExperimentalGeneralInstrumentation`](#experimentalgeneralinstrumentation) | unknown | | * `peer`: unknown
* `http`: unknown
| | [`ExperimentalHostResourceDetector`](#experimentalhostresourcedetector) | unknown | | | @@ -6798,7 +7142,7 @@ Latest supported file format: `1.0.0-rc.2` | [`PullMetricReader`](#pullmetricreader) | unknown | | * `exporter`: unknown
* `producers`: unknown
* `cardinality_limits`: unknown
| | [`PushMetricExporter`](#pushmetricexporter) | unknown | | * `otlp_http`: unknown
* `otlp_grpc`: unknown
* `otlp_file/development`: unknown
* `console`: unknown
| | [`Resource`](#resource) | unknown | | * `attributes`: unknown
* `detection/development`: unknown
* `schema_url`: unknown
* `attributes_list`: unknown
| -| [`Sampler`](#sampler) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `parent_based`: unknown
* `trace_id_ratio_based`: unknown
* `probability/development`: unknown
* `jaeger_remote/development`: unknown
| +| [`Sampler`](#sampler) | unknown | | * `always_off`: unknown
* `always_on`: unknown
* `parent_based`: unknown
* `trace_id_ratio_based`: unknown
* `probability/development`: unknown
* `jaeger_remote/development`: unknown
* `composite/development`: unknown
| | [`SimpleLogRecordProcessor`](#simplelogrecordprocessor) | unknown | | * `exporter`: unknown
| | [`SimpleSpanProcessor`](#simplespanprocessor) | unknown | | * `exporter`: unknown
| | [`SpanExporter`](#spanexporter) | unknown | | * `otlp_http`: unknown
* `otlp_grpc`: unknown
* `otlp_file/development`: unknown
* `console`: unknown
* `zipkin`: unknown
| diff --git a/schema/meta_schema_language_cpp.yaml b/schema/meta_schema_language_cpp.yaml index 8f4d559f..419c1dae 100644 --- a/schema/meta_schema_language_cpp.yaml +++ b/schema/meta_schema_language_cpp.yaml @@ -72,6 +72,26 @@ typeSupportStatuses: status: not_implemented notes: "" enumOverrides: [] + - type: ExperimentalComposableAlwaysOffSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableAlwaysOnSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableParentBasedSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableProbabilitySampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableSampler + status: unknown + notes: "" + propertyOverrides: [] - type: ExperimentalContainerResourceDetector status: not_implemented notes: "" diff --git a/schema/meta_schema_language_go.yaml b/schema/meta_schema_language_go.yaml index cd7d466f..6ecb8cfb 100644 --- a/schema/meta_schema_language_go.yaml +++ b/schema/meta_schema_language_go.yaml @@ -72,6 +72,26 @@ typeSupportStatuses: status: unknown notes: "" enumOverrides: [] + - type: ExperimentalComposableAlwaysOffSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableAlwaysOnSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableParentBasedSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableProbabilitySampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableSampler + status: unknown + notes: "" + propertyOverrides: [] - type: ExperimentalContainerResourceDetector status: unknown notes: "" diff --git a/schema/meta_schema_language_java.yaml b/schema/meta_schema_language_java.yaml index b84ce238..91c13f22 100644 --- a/schema/meta_schema_language_java.yaml +++ b/schema/meta_schema_language_java.yaml @@ -78,6 +78,26 @@ typeSupportStatuses: status: supported notes: "" enumOverrides: [] + - type: ExperimentalComposableAlwaysOffSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableAlwaysOnSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableParentBasedSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableProbabilitySampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableSampler + status: unknown + notes: "" + propertyOverrides: [] - type: ExperimentalContainerResourceDetector status: supported notes: "" diff --git a/schema/meta_schema_language_js.yaml b/schema/meta_schema_language_js.yaml index 0673ccf2..38cbcf35 100644 --- a/schema/meta_schema_language_js.yaml +++ b/schema/meta_schema_language_js.yaml @@ -72,6 +72,26 @@ typeSupportStatuses: status: unknown notes: "" enumOverrides: [] + - type: ExperimentalComposableAlwaysOffSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableAlwaysOnSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableParentBasedSampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableProbabilitySampler + status: unknown + notes: "" + propertyOverrides: [] + - type: ExperimentalComposableSampler + status: unknown + notes: "" + propertyOverrides: [] - type: ExperimentalContainerResourceDetector status: unknown notes: "" diff --git a/schema/meta_schema_types.yaml b/schema/meta_schema_types.yaml index ef780779..abd05523 100644 --- a/schema/meta_schema_types.yaml +++ b/schema/meta_schema_types.yaml @@ -960,6 +960,8 @@ description: Configure sampler to be probability. - property: jaeger_remote/development description: TODO + - property: composite/development + description: Configure sampler to be composite. isSdkExtensionPlugin: true - type: SimpleLogRecordProcessor properties: @@ -1161,3 +1163,40 @@ - property: initial_sampler description: TODO isSdkExtensionPlugin: false +- type: ExperimentalComposableSampler + properties: + - property: always_off + description: Configure sampler to be always_off. + - property: always_on + description: Configure sampler to be always_on. + - property: probability + description: Configure sampler to be probability. + - property: parent_based + description: Configure sampler to be parent_based. + isSdkExtensionPlugin: false +- type: ExperimentalComposableParentBasedSampler + properties: + - property: root + description: Configures the sampler for spans with no parent. + - property: remote_parent_sampled + description: Configures the sampler for spans with a remote parent that is sampled. + - property: remote_parent_not_sampled + description: Configures the sampler for spans with a remote parent that is not sampled. + - property: local_parent_sampled + description: Configures the sampler for spans with a local parent that is sampled. + - property: local_parent_not_sampled + description: Configures the sampler for spans with a local parent that is not sampled. + isSdkExtensionPlugin: false +- type: ExperimentalComposableAlwaysOffSampler + properties: [] + isSdkExtensionPlugin: false +- type: ExperimentalComposableAlwaysOnSampler + properties: [] + isSdkExtensionPlugin: false +- type: ExperimentalComposableProbabilitySampler + properties: + - property: ratio + description: | + Configure ratio. + If omitted or null, 1.0 is used. + isSdkExtensionPlugin: false diff --git a/schema/tracer_provider.json b/schema/tracer_provider.json index bec14c90..f350f0a9 100644 --- a/schema/tracer_provider.json +++ b/schema/tracer_provider.json @@ -67,6 +67,9 @@ "always_on": { "$ref": "#/$defs/AlwaysOnSampler" }, + "composite/development": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, "jaeger_remote/development": { "$ref": "#/$defs/ExperimentalJaegerRemoteSampler" }, @@ -148,6 +151,68 @@ } } }, + "ExperimentalComposableAlwaysOffSampler": { + "type": ["object", "null"], + "additionalProperties": false + }, + "ExperimentalComposableAlwaysOnSampler": { + "type": ["object", "null"], + "additionalProperties": false + }, + "ExperimentalComposableParentBasedSampler": { + "type": ["object", "null"], + "additionalProperties": false, + "properties": { + "root": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, + "remote_parent_sampled": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, + "remote_parent_not_sampled": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, + "local_parent_sampled": { + "$ref": "#/$defs/ExperimentalComposableSampler" + }, + "local_parent_not_sampled": { + "$ref": "#/$defs/ExperimentalComposableSampler" + } + } + }, + "ExperimentalComposableProbabilitySampler": { + "type": ["object", "null"], + "additionalProperties": false, + "properties": { + "ratio": { + "type": ["number", "null"], + "minimum": 0, + "maximum": 1 + } + } + }, + "ExperimentalComposableSampler": { + "type": "object", + "additionalProperties": { + "type": ["object", "null"] + }, + "minProperties": 1, + "maxProperties": 1, + "properties": { + "always_off": { + "$ref": "#/$defs/ExperimentalComposableAlwaysOffSampler" + }, + "always_on": { + "$ref": "#/$defs/ExperimentalComposableAlwaysOnSampler" + }, + "parent_based": { + "$ref": "#/$defs/ExperimentalComposableParentBasedSampler" + }, + "probability": { + "$ref": "#/$defs/ExperimentalComposableProbabilitySampler" + } + } + }, "SimpleSpanProcessor": { "type": "object", "additionalProperties": false,