Forwarder configuration
The Forwarder collects workload metrics and forwards them to StormForge. This topic covers the additional configuration parameters available.
Applying these settings
These are Helm values for the stormforge chart. Add them to a YAML values file (for example, values.yaml) and pass it to your Helm command.
At install time:
helm install stormforge oci://registry.stormforge.io/library/stormforge \
--namespace stormforge-system \
-f values.yaml
To apply changes after installation:
helm upgrade stormforge oci://registry.stormforge.io/library/stormforge \
--namespace stormforge-system \
--reset-then-reuse-values \
-f values.yaml
Forwarder parameters:
- Private container registry
- Additional scrape configs
- Scrape interval and timeout
- Storage volume size
- Pod priority and scheduling
Private container registry
Override the Forwarder image repository for environments that use a private container registry.
| Helm parameter | Default value |
|---|---|
forwarder.image.repository |
quay.io/prometheus/prometheus |
forwarder.image.tag |
(pinned to a tested Prometheus version) |
Description
The Forwarder uses the Prometheus container image, separate from the StormForge Agent image. When using a private registry, you must push the Prometheus image to your registry and set forwarder.image.repository accordingly.
For the full setup procedure, see If you have a private container registry.
Example
forwarder:
image:
repository: my-registry.example.com/prometheus/prometheus
Additional scrape configs
Extend the Forwarder’s Prometheus scrape configuration with custom scrape jobs.
| Helm parameter | Default value |
|---|---|
forwarder.additionalScrapeConfigs |
[] |
Description
forwarder.additionalScrapeConfigs accepts a list of Prometheus scrape config objects appended to the default scrape configuration. Use this to collect metrics from custom endpoints or JVM exporters.
Valid values
An array of Prometheus scrape config objects.
Example
forwarder:
additionalScrapeConfigs:
- job_name: custom-metrics
static_configs:
- targets:
- myservice.mynamespace.svc.cluster.local:9090
Scrape interval and timeout
Controls how frequently the Forwarder scrapes metrics and when a scrape times out.
| Helm parameter | Default value |
|---|---|
forwarder.scrapeInterval |
30s |
forwarder.scrapeTimeout |
16s |
Description
The default values are appropriate for most environments. Increase scrapeInterval only if the Forwarder pod is resource-constrained; decrease it only if you need more frequent metrics.
Valid values
A Prometheus duration string (for example, 30s, 1m). scrapeTimeout must be less than scrapeInterval.
Storage volume size
Controls the size of the Forwarder’s local metrics storage volume.
| Helm parameter | Default value |
|---|---|
forwarder.storageVolumeSize |
2G |
Description
The Forwarder buffers scraped metrics locally before forwarding them to StormForge. Increase this value if you observe dropped metrics due to write-ahead log overflow in high-cardinality environments.
Valid values
A Kubernetes resource quantity string (for example, 2G, 4Gi).
Pod priority and scheduling
Enables scheduling and priority configurations on StormForge Forwarder pods.
| Helm parameter | Default value | Scope |
|---|---|---|
priorityClassName |
"" |
Top-level |
forwarder.priorityClassName |
"" |
Forwarder only (override) |
Description
The top-level priorityClassName applies to all StormForge components. Set forwarder.priorityClassName to override it for the Forwarder only. A non-empty per-component value replaces the top-level default.
forwarder.priorityClassName assigns an existing Pod PriorityClass to the stormforge-forwarder pod.
Valid values
A string that matches the .metadata.name of a PriorityClass defined in your cluster.
Example
To apply a priority class to all StormForge components:
priorityClassName: "high-priority"
To override for the Forwarder only:
forwarder:
priorityClassName: "high-priority"
The exporter parameter group is deprecated and will be removed in a future
major version; use forwarder instead. Until then, exporter.* values
still work and override equivalent forwarder.* values.
Related topics
- Kubernetes official documentation: