diff --git a/website/docs/reference/spicepod/models.md b/website/docs/reference/spicepod/models.md index b47ae08ee..b93deeedf 100644 --- a/website/docs/reference/spicepod/models.md +++ b/website/docs/reference/spicepod/models.md @@ -100,7 +100,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/docs/reference/spicepod/runtime.md b/website/docs/reference/spicepod/runtime.md index 99b5d4f54..527baf3c7 100644 --- a/website/docs/reference/spicepod/runtime.md +++ b/website/docs/reference/spicepod/runtime.md @@ -946,6 +946,7 @@ Configures an [OpenTelemetry](https://opentelemetry.io/) exporter that pushes me | `enabled` | Yes | `true` | Whether the OpenTelemetry exporter is enabled. | | `endpoint` | No | - | The OpenTelemetry collector endpoint. Protocol is inferred from the format (see examples below). | | `push_interval` | Yes | `60s` | How frequently metrics are pushed to the collector. Specify as a [duration](../duration). | +| `temporality` | Yes | `delta` | Aggregation temporality of exported metrics: `delta`, `cumulative`, or `low_memory` (delta for synchronous counters and histograms, cumulative for observable counters, up-down counters, and gauges). Datadog requires `delta`. Use `cumulative` for a collector that forwards to Prometheus. Applies to the OTLP exporter only; the Prometheus `/metrics` endpoint always reports cumulative values. | | `metrics` | Yes | `[]` | List of metric names to export. When empty (default), all metrics are exported. | | `signals` | Yes | `[metrics]` | What the exporter sends: `metrics`, `logs`, or both. See [Exporting logs](#exporting-logs). `push_interval` and `metrics` apply to metrics only. | | `headers` | Yes | `{}` | Map of headers to send with each export request. For HTTP these are sent as HTTP headers; for gRPC they are sent as metadata entries (keys must be lowercase ASCII). Values support the `${secrets:...}` [replacement syntax](../../components/secret-stores#using-secrets) for loading credentials from a [secret store](../../components/secret-stores). | @@ -1121,15 +1122,37 @@ runtime: flight: max_message_size: 16MiB do_put_rate_limit_enabled: true + batch_size: + mode: adaptive + max: 131072 + ipc_compression: zstd ``` | Parameter name | Optional | Default | Description | | --------------------------- | -------- | ------- | -------------------------------------------------------------------- | | `max_message_size` | Yes | - | Maximum size of a single Arrow Flight message. | | `do_put_rate_limit_enabled` | Yes | `true` | Whether rate limiting is applied to `DoPut` Arrow Flight operations. | +| `batch_size` | Yes | `mode: adaptive`, `max: 131072` | Record batch size of Arrow Flight and Flight SQL query responses. With `mode: adaptive`, Spice raises the batch size of a response whose planner estimate is large, up to `max` rows. With `mode: default`, every response uses the query engine's configured batch size. | +| `ipc_compression` | Yes | `none` | Compression of the Arrow IPC record batches in Arrow Flight and Flight SQL responses: `none`, `lz4_frame`, or `zstd`. The client must support the codec to read the response. | The `DoPut` rate limit admits 100 writes per minute, shared by all clients of the runtime. Arrow Flight data writes, Flight SQL bulk ingestion (`CommandStatementIngest`), and Flight SQL statement updates (`CommandStatementUpdate`, sent by a Flight SQL client's execute-update call) count against it. Prepared statement calls, including parameter binding, do not. A write over the limit fails with the gRPC status `RESOURCE_EXHAUSTED`. +## `runtime.tracing` + +Exports task history spans to a [Zipkin](https://zipkin.io/) collector. See [Zipkin](../../monitoring/zipkin) for an example. + +```yaml +runtime: + tracing: + zipkin_enabled: true + zipkin_endpoint: http://localhost:9411/api/v2/spans +``` + +| Parameter name | Optional | Default | Description | +| ----------------- | -------- | ------- | ----------- | +| `zipkin_enabled` | No | - | Whether spans are exported to Zipkin. | +| `zipkin_endpoint` | Yes | - | The Zipkin spans endpoint. Required when `zipkin_enabled` is `true`; without it, tracing setup fails with `zipkin_endpoint is required when zipkin_enabled is true`. When the endpoint is not reachable at startup, Spice prints `Zipkin endpoint '' is not reachable. Skipping Zipkin exporter initialization.` and runs without the Zipkin exporter. | + ## `runtime.mcp` Configures settings for the Spice MCP server endpoint (`/v1/mcp`). diff --git a/website/versioned_docs/version-1.10.x/reference/spicepod/models.md b/website/versioned_docs/version-1.10.x/reference/spicepod/models.md index d807940f3..5e759c921 100644 --- a/website/versioned_docs/version-1.10.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-1.10.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-1.11.x/reference/spicepod/models.md b/website/versioned_docs/version-1.11.x/reference/spicepod/models.md index 05a7bb6e1..49846d46a 100644 --- a/website/versioned_docs/version-1.11.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-1.11.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-1.5.x/reference/spicepod/models.md b/website/versioned_docs/version-1.5.x/reference/spicepod/models.md index ed6a82a06..743c2d9ec 100644 --- a/website/versioned_docs/version-1.5.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-1.5.x/reference/spicepod/models.md @@ -102,7 +102,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-1.6.x/reference/spicepod/models.md b/website/versioned_docs/version-1.6.x/reference/spicepod/models.md index ed6a82a06..743c2d9ec 100644 --- a/website/versioned_docs/version-1.6.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-1.6.x/reference/spicepod/models.md @@ -102,7 +102,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-1.7.x/reference/spicepod/models.md b/website/versioned_docs/version-1.7.x/reference/spicepod/models.md index 23e0fc818..80c1d48f9 100644 --- a/website/versioned_docs/version-1.7.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-1.7.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-1.8.x/reference/spicepod/models.md b/website/versioned_docs/version-1.8.x/reference/spicepod/models.md index 0870de598..155432338 100644 --- a/website/versioned_docs/version-1.8.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-1.8.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-1.9.x/reference/spicepod/models.md b/website/versioned_docs/version-1.9.x/reference/spicepod/models.md index 3225a9f92..1926d9a57 100644 --- a/website/versioned_docs/version-1.9.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-1.9.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-2.0.x/reference/spicepod/models.md b/website/versioned_docs/version-2.0.x/reference/spicepod/models.md index 4b5d4d0cf..12c6a0751 100644 --- a/website/versioned_docs/version-2.0.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-2.0.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-2.1.x/reference/spicepod/models.md b/website/versioned_docs/version-2.1.x/reference/spicepod/models.md index e211886f6..c78e18b77 100644 --- a/website/versioned_docs/version-2.1.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-2.1.x/reference/spicepod/models.md @@ -100,7 +100,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-2.2.x/reference/spicepod/models.md b/website/versioned_docs/version-2.2.x/reference/spicepod/models.md index 2c38770be..03914465d 100644 --- a/website/versioned_docs/version-2.2.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-2.2.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-2.3.x/reference/spicepod/models.md b/website/versioned_docs/version-2.3.x/reference/spicepod/models.md index 2c38770be..03914465d 100644 --- a/website/versioned_docs/version-2.3.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-2.3.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-2.3.x/reference/spicepod/runtime.md b/website/versioned_docs/version-2.3.x/reference/spicepod/runtime.md index 1bad679b9..e4d6329fc 100644 --- a/website/versioned_docs/version-2.3.x/reference/spicepod/runtime.md +++ b/website/versioned_docs/version-2.3.x/reference/spicepod/runtime.md @@ -735,6 +735,7 @@ Configures an [OpenTelemetry](https://opentelemetry.io/) metrics exporter to pus | `enabled` | Yes | `true` | Whether the OpenTelemetry exporter is enabled. | | `endpoint` | No | - | The OpenTelemetry collector endpoint. Protocol is inferred from the format (see examples below). | | `push_interval` | Yes | `60s` | How frequently metrics are pushed to the collector. Specify as a [duration](../duration). | +| `temporality` | Yes | `delta` | Aggregation temporality of exported metrics: `delta`, `cumulative`, or `low_memory` (delta for synchronous counters and histograms, cumulative for observable counters, up-down counters, and gauges). Datadog requires `delta`. Use `cumulative` for a collector that forwards to Prometheus. Applies to the OTLP exporter only; the Prometheus `/metrics` endpoint always reports cumulative values. | | `metrics` | Yes | `[]` | List of metric names to export. When empty (default), all metrics are exported. | | `headers` | Yes | `{}` | Map of headers to send with each export request. For HTTP these are sent as HTTP headers; for gRPC they are sent as metadata entries (keys must be lowercase ASCII). Values support the `${secrets:...}` [replacement syntax](../../components/secret-stores#using-secrets) for loading credentials from a [secret store](../../components/secret-stores). | @@ -859,12 +860,34 @@ runtime: flight: max_message_size: 16MiB do_put_rate_limit_enabled: true + batch_size: + mode: adaptive + max: 131072 + ipc_compression: zstd ``` | Parameter name | Optional | Default | Description | | --------------------------- | -------- | ------- | -------------------------------------------------------------------- | | `max_message_size` | Yes | - | Maximum size of a single Arrow Flight message. | | `do_put_rate_limit_enabled` | Yes | `true` | Whether rate limiting is applied to `DoPut` Arrow Flight operations. | +| `batch_size` | Yes | `mode: adaptive`, `max: 131072` | Record batch size of Arrow Flight and Flight SQL query responses. With `mode: adaptive`, Spice raises the batch size of a response whose planner estimate is large, up to `max` rows. With `mode: default`, every response uses the query engine's configured batch size. | +| `ipc_compression` | Yes | `none` | Compression of the Arrow IPC record batches in Arrow Flight and Flight SQL responses: `none`, `lz4_frame`, or `zstd`. The client must support the codec to read the response. | + +## `runtime.tracing` + +Exports task history spans to a [Zipkin](https://zipkin.io/) collector. See [Zipkin](../../monitoring/zipkin) for an example. + +```yaml +runtime: + tracing: + zipkin_enabled: true + zipkin_endpoint: http://localhost:9411/api/v2/spans +``` + +| Parameter name | Optional | Default | Description | +| ----------------- | -------- | ------- | ----------- | +| `zipkin_enabled` | No | - | Whether spans are exported to Zipkin. | +| `zipkin_endpoint` | Yes | - | The Zipkin spans endpoint. Required when `zipkin_enabled` is `true`; without it, tracing setup fails with `zipkin_endpoint is required when zipkin_enabled is true`. When the endpoint is not reachable at startup, Spice prints `Zipkin endpoint '' is not reachable. Skipping Zipkin exporter initialization.` and runs without the Zipkin exporter. | ## `runtime.mcp` diff --git a/website/versioned_docs/version-2.4.x/reference/spicepod/models.md b/website/versioned_docs/version-2.4.x/reference/spicepod/models.md index 2c38770be..03914465d 100644 --- a/website/versioned_docs/version-2.4.x/reference/spicepod/models.md +++ b/website/versioned_docs/version-2.4.x/reference/spicepod/models.md @@ -99,7 +99,7 @@ File types include: - Usually a `tokenizer.json` file - Defines how input text is converted into tokens for the model -- `tokenizer_config`: Tokenizer configuration +- `tokenizerConfig`: Tokenizer configuration - Usually a `tokenizer_config.json` file - Contains additional configuration for the tokenizer diff --git a/website/versioned_docs/version-2.4.x/reference/spicepod/runtime.md b/website/versioned_docs/version-2.4.x/reference/spicepod/runtime.md index ea6c16f72..9f32ad572 100644 --- a/website/versioned_docs/version-2.4.x/reference/spicepod/runtime.md +++ b/website/versioned_docs/version-2.4.x/reference/spicepod/runtime.md @@ -946,6 +946,7 @@ Configures an [OpenTelemetry](https://opentelemetry.io/) exporter that pushes me | `enabled` | Yes | `true` | Whether the OpenTelemetry exporter is enabled. | | `endpoint` | No | - | The OpenTelemetry collector endpoint. Protocol is inferred from the format (see examples below). | | `push_interval` | Yes | `60s` | How frequently metrics are pushed to the collector. Specify as a [duration](../duration). | +| `temporality` | Yes | `delta` | Aggregation temporality of exported metrics: `delta`, `cumulative`, or `low_memory` (delta for synchronous counters and histograms, cumulative for observable counters, up-down counters, and gauges). Datadog requires `delta`. Use `cumulative` for a collector that forwards to Prometheus. Applies to the OTLP exporter only; the Prometheus `/metrics` endpoint always reports cumulative values. | | `metrics` | Yes | `[]` | List of metric names to export. When empty (default), all metrics are exported. | | `signals` | Yes | `[metrics]` | What the exporter sends: `metrics`, `logs`, or both. See [Exporting logs](#exporting-logs). `push_interval` and `metrics` apply to metrics only. | | `headers` | Yes | `{}` | Map of headers to send with each export request. For HTTP these are sent as HTTP headers; for gRPC they are sent as metadata entries (keys must be lowercase ASCII). Values support the `${secrets:...}` [replacement syntax](../../components/secret-stores#using-secrets) for loading credentials from a [secret store](../../components/secret-stores). | @@ -1121,15 +1122,37 @@ runtime: flight: max_message_size: 16MiB do_put_rate_limit_enabled: true + batch_size: + mode: adaptive + max: 131072 + ipc_compression: zstd ``` | Parameter name | Optional | Default | Description | | --------------------------- | -------- | ------- | -------------------------------------------------------------------- | | `max_message_size` | Yes | - | Maximum size of a single Arrow Flight message. | | `do_put_rate_limit_enabled` | Yes | `true` | Whether rate limiting is applied to `DoPut` Arrow Flight operations. | +| `batch_size` | Yes | `mode: adaptive`, `max: 131072` | Record batch size of Arrow Flight and Flight SQL query responses. With `mode: adaptive`, Spice raises the batch size of a response whose planner estimate is large, up to `max` rows. With `mode: default`, every response uses the query engine's configured batch size. | +| `ipc_compression` | Yes | `none` | Compression of the Arrow IPC record batches in Arrow Flight and Flight SQL responses: `none`, `lz4_frame`, or `zstd`. The client must support the codec to read the response. | The `DoPut` rate limit admits 100 writes per minute, shared by all clients of the runtime. Arrow Flight data writes, Flight SQL bulk ingestion (`CommandStatementIngest`), and Flight SQL statement updates (`CommandStatementUpdate`, sent by a Flight SQL client's execute-update call) count against it. Prepared statement calls, including parameter binding, do not. A write over the limit fails with the gRPC status `RESOURCE_EXHAUSTED`. +## `runtime.tracing` + +Exports task history spans to a [Zipkin](https://zipkin.io/) collector. See [Zipkin](../../monitoring/zipkin) for an example. + +```yaml +runtime: + tracing: + zipkin_enabled: true + zipkin_endpoint: http://localhost:9411/api/v2/spans +``` + +| Parameter name | Optional | Default | Description | +| ----------------- | -------- | ------- | ----------- | +| `zipkin_enabled` | No | - | Whether spans are exported to Zipkin. | +| `zipkin_endpoint` | Yes | - | The Zipkin spans endpoint. Required when `zipkin_enabled` is `true`; without it, tracing setup fails with `zipkin_endpoint is required when zipkin_enabled is true`. When the endpoint is not reachable at startup, Spice prints `Zipkin endpoint '' is not reachable. Skipping Zipkin exporter initialization.` and runs without the Zipkin exporter. | + ## `runtime.mcp` Configures settings for the Spice MCP server endpoint (`/v1/mcp`).