Grafana Monitoring Stack 1.7.0 - External Changelog
Released 2026-10-06.
ACS and JMX dashboards show the ACS JVM on every installation type
The ACS dashboard (Extended/ACS) and the JMX dashboard now work on bare-metal
ACS 6.4 (WildFly) and on container installations (Kubernetes, Docker). On
container installations the ACS dashboard used to list the Hazelcast and other
Java services instead of the ACS, and its panels showed their heap, threads and
garbage collection.
-
Every ACS panel reads the ACS JVM only. Hazelcast and other Java services are excluded.
-
New canonical metrics: per-pool memory, committed memory, started threads, unloaded classes, and garbage collection for ACS exporters that use JMX names.
-
Time in GCshows the share of time spent in garbage collection, per collector. -
On ACS 6.4 hosts, Req/Sec and Active Sessions are empty by design: WildFly does not export these metrics. Before this release those panels showed other services.
-
Physical memoryis available from the JMX exporter only.
SNMPv3 traps are authenticated and encrypted as configured
With SNMP_VERSION=V3, snmp-notifier sent every trap as noAuthNoPriv, in
plaintext, whatever authentication and privacy settings were configured. When
the NMS did not answer snmp-notifier’s engine-ID discovery request, no trap was
sent at all (error while opening SNMP connection … i/o timeout, HTTP 502 to
Alertmanager).
SNMPv3 traps now go out as authPriv (or authNoPriv when no privacy password is set), from a fixed engine ID, with no discovery round trip.
Action needed on upgrade for SNMPv3 installs:
-
Re-create the SNMPv3 user on the NMS with snmp-notifier’s engine ID — net-snmp:
createUser -e 0x<engine id> <user> SHA <auth password> AES <priv password>. The ID is in the installer’s final summary (with thecreateUserline), under the Engine ID field of the Config UI and indocker logs snmp-notifier; it can be pinned withSNMP_ENGINE_IDin.env. By default it is derived from the host name. -
SNMP_VERSION=V3now requiresSNMP_AUTH_USERNAMEandSNMP_AUTH_PASSWORD: without them snmp-notifier refuses to start instead of sending unauthenticated traps. -
SNMPv3 passwords no longer appear in
docker logs snmp-notifier.
The bundled Trap Catcher now decodes this stack’s SNMPv3 traps as well (authPriv, authNoPriv, SHA/AES and MD5/DES); before, it dropped every SNMPv3 trap from snmp-notifier.
After an update, the installer restarts any container still running the
previous copy of a bind-mounted file — before, docker compose up -d left
such containers on the old entrypoint/config until someone restarted them.
SNMPv2c installs need no action.
Added
-
feat(release): publish release notes as AsciiDoc pages and release.json (DEV-3006)
-
feat(release): publish release notes as AsciiDoc pages and release.json (DEV-3006)
-
feat(release): add a build subcommand and make cut/tag resumable
-
feat(bootstrap): expose full build-metadata version post-install
-
feat(release): implement Git Flow multi-version release workflow
-
feat(release): generate CHANGELOG.md from commits and fragments
-
feat(version): add BUILD counter and full version-string generator
-
feat(ci): enforce Conventional Commits via commit-msg hook
-
feat(grafana): Active Alerts Details keeps its columns when nothing is firing
-
feat(grafana): the details table carries its own Warning / Alarm / Total counts
-
feat(grafana): the Basic board follows the Figma board’s layout and wording
-
feat(grafana): a second Alerts board in the common board style (DEV-2962)
Fixed
-
fix(ui): a prompt exits when its terminal is gone instead of spinning
-
fix(bootstrap): the SNMP test polls the Trap Catcher on its default port
-
fix(bootstrap): alert-channel test reads the stack .env it is given
-
fix(clickhouse): leave a container that already serves :9363 alone
-
fix(bootstrap): Apply keeps an unchanged certificate; a failed issue keeps a working one
-
fix(snmp): re-editing SNMPv3 keeps the privacy password
-
fix(bootstrap): replace the VERSION_FULL directory docker leaves behind
-
fix(ci): image scans fetch the trivy DB from ghcr first
-
fix(snmp): SNMPv3 traps authenticated and encrypted; release image pins (DEV-3178)
-
fix(snmp): SNMPv3 traps authenticated and encrypted, release image pins — 1.7.0 (DEV-3178)
-
fix(release): resume-safe merge-back dry run, and a recipe that works (DEV-3006)
-
fix(release): finish tag without a half-done merge-back; one docs ref per version (DEV-3006)
-
fix(release): resume-safe merge-back dry run, and a recipe that works (DEV-3006)
-
fix(release): finish tag without a half-done merge-back; one docs ref per version (DEV-3006)
-
fix(prometheus): PrometheusSlowScrapes threshold per configured scrape interval
-
fix(bootstrap): --branch with a release tag works on an existing checkout
-
fix(docs): drop stale --branch 1.7.0 examples from misc/README.md
-
fix(docs): remove the fabricated Jenkins/qa/*-vN QA pipeline
-
fix(tests): skip branch-resolution check in origin-less sandboxes
-
fix(testing): make check-doc-commands.sh branch-aware for Git Flow
-
fix(bootstrap): an explicit --branch deploys that branch on an existing checkout
-
fix(snmp): clear traps carry severity "clear" instead of "info"
-
fix(grafana): ACS threads panel description states the current behaviour, without a date
-
fix(grafana): the JMX dashboard fills on every producer, not only where it was written
-
fix(prometheus): JVMGCOverhead fires at the GC share it names
-
fix(grafana): ACS dashboard review fixes - CamelCase GC source, GC rate, K8s refresh
-
fix(grafana): on Kubernetes the ACS dashboard also skips Hazelcast and the Spring services
-
fix(grafana): the ACS dashboard selects the ACS JVM only, never the Hazelcast one beside it
-
fix(grafana): ACS TCP/UDP panels dedupe kube-state-metrics before the node join
-
fix(grafana): ACS HTTP panels read Micrometer on every host, and find the node on Kubernetes
-
fix(grafana): the ACS heap panel’s max-heap series plots the maximum, not used heap again
-
fix(nginx): serve gzip, negotiate HTTP/2, and listen on IPv6 when the host supports it
-
fix(grafana): the ACS Threads panel plots thread churn, not a counter in the millions
-
fix(grafana): the ACS and JMX dashboards read every producer, not only the JMX exporter
-
fix(prometheus): canonical names for per-pool memory, committed memory and two JVM counters
-
fix(grafana): actually wire the Alertmanager datasource
-
fix(install): stop printing a hardcoded stale version on --version
-
fix(docs): drop stale --branch 1.7.0 examples from misc/README.md
-
fix(docs): remove the fabricated Jenkins/qa/*-vN QA pipeline
-
fix(tests): skip branch-resolution check in origin-less sandboxes
-
fix(testing): make check-doc-commands.sh branch-aware for Git Flow
-
fix(testing): retarget 092b’s mutation at the actual develop-push line
-
fix(release): look up the previous production tag on main, not on the branch
-
fix(release): point the new stabilization branch’s REPO_BRANCH at main too
-
fix(release): point REPO_BRANCH at refs Git Flow actually creates
-
fix(release): stop generate.sh republishing fragments and dumping full history
-
fix(ci): stop commit-lint.yml silently passing single-commit PRs
-
fix(release): carry REPO_BRANCH through every VERSION bump cut and tag make
-
fix(release): stop generate.sh silently dropping the oldest commit in range
-
fix(release): sync misc/hub/install.sh’s REPO_BRANCH on an LTS patch
-
fix(release): use a valid commit type for the develop merge-back
-
fix(ci): restore the pull_request trigger for branch-sync-gate
-
fix(ci): replace gh pr create with the REST API (gh isn’t installed on ft-ci runners)
-
fix(bootstrap): mount VERSION_FULL into the nginx container so /version actually works
-
fix(ci): run commit-lint on a self-hosted runner, not ubuntu-latest
-
fix(testing): retarget validate-all.sh tests 91-93 for the Git Flow rewrite
-
fix(release): restore docs-pdf force-regeneration trigger
-
fix(ci): correct inverted prompt logic in install-hooks.sh pre-commit handler
-
fix(deployment): preflight.listen_ports are host ports, not the container’s (#82)
-
fix(grafana): the injected stylesheet stops fetching a font from Google
-
fix(grafana): the details table shows ten columns, not twelve
-
fix(tests): the suite measures the repository, not copies of it
-
fix(grafana): the Basic board reads in FRD order and fits without scrolling
-
fix(release): the dev branch must really be marked as a prerelease
-
fix(release): carry the version into the documented install command too
-
fix(release): bump the installer’s default branch with the rest of the version