github robintra/perf-sentinel chart-v0.26.2
perf-sentinel chart v0.26.2

4 hours ago

What's new in chart-v0.26.2

A metadata-only bump. appVersion moves to 0.26.2 and image.tag follows it to :0.26.2. No template, values.yaml key or schema changes. Under the default values the rendered perf-sentinel.toml is byte-for-byte what chart-v0.26.1 rendered, same 5036 bytes and the same digest. The other manifest changes are the image, the version labels and checksum/config.

What moves inside the pod

The daemon's outputs no longer change from one restart to the next on the same traffic. The order of /api/findings, /api/correlations, /api/acks and /api/export/report, the trace and signature a tied cross-trace slow finding names, the pair of calls a chatty suggestion names, and the source endpoints kept past max_events_per_trace all followed hash maps that change at every restart. The ack JSONL file the daemon rewrites at startup keeps its acknowledgment order, so its bytes stay the same across restarts.

Avoidable I/O now counts every grouping of a trace and adds up the redundant findings of one query called with several parameter sets, where it kept one of them. Traffic that spans several grouping_attributes values or repeats a query with different parameters sees perf_sentinel_avoidable_io_ops, perf_sentinel_service_avoidable_io_ops_total and the periodic disclosures rise.

A config or fragments entry whose [green.service_regions], or a [green.electricity_maps] region_map that a token enables, holds two keys that differ only in case and map to different values is rejected at load. The 0.26.1 daemon picked one of the two values at random, and the service's CO2 figures moved with it.

The v0.26.2 binary notes describe the changes and the measurements.

Upgrade impact

  • Pods roll on the image. helm upgrade replaces them because appVersion and image.tag move together.
  • The avoidable I/O counters step up for traffic that spans several groupings or repeats one query with several parameter sets, so a Grafana panel on perf_sentinel_avoidable_io_ops or perf_sentinel_service_avoidable_io_ops_total shows a step, and the figures are not comparable across the upgrade.
  • A daemon whose region keys differ only in case and map to different values does not start. Keep one of the two keys in config or fragments before upgrading. Keys that agree on the value still load.
  • A tied cross-trace slow finding may settle on another signature once, in which case its acknowledgment needs renewing.
  • checksum/config moves, and not because your configuration changed. The rendered perf-sentinel.toml is identical, but the ConfigMap carries helm.sh/chart and app.kubernetes.io/version labels that bump with the chart.
  • No values.yaml key is added or removed, no template changes, and the shipped PrometheusRule is untouched.

Install

The chart is published as an OCI artifact on GHCR, install it directly with no helm repo add step:

helm install perf-sentinel oci://ghcr.io/robintra/charts/perf-sentinel --version 0.26.2

Upgrade an existing release:

helm upgrade perf-sentinel oci://ghcr.io/robintra/charts/perf-sentinel --version 0.26.2

Read docs/HELM-DEPLOYMENT.md for the ServiceMonitor section, sizing and Ingress postures.

If you are upgrading from chart-v0.23.0 or earlier, read the chart-v0.24.0 notes first: that release raises the default workload.statefulset.persistence.size to 2Gi, which an existing StatefulSet does not pick up on its own. From chart-v0.18.0 or earlier, read the chart-v0.19.0 notes as well: that release adds a grouping label to five metrics and is breaking for an unaggregated alert on any of them. From chart-v0.16.0 or earlier, the chart-v0.17.0 notes change the shipped PrometheusRule.

Full Changelog: chart-v0.26.1...chart-v0.26.2

Don't miss a new perf-sentinel release

NewReleases is sending notifications on new releases.