Skip to content

Releases: TheBlackBush/bambulab_metrics_exporter

v0.1.40

Choose a tag to compare

@TheBlackBush TheBlackBush released this 22 Mar 19:51
2b47502

What's New

Added

  • bambulab_xcam_halt_print_sensitivity_info metric: exposes the print.xcam.halt_print_sensitivity MQTT field as a labeled Prometheus gauge.
    • The level label takes one of three values: low, medium, or high, set to 1 for the currently active level.
    • Cleared on each update cycle; missing or invalid MQTT values produce no metric.
    • New xcam_halt_print_sensitivity property on PrinterSnapshot (normalises to lowercase; returns None for missing/invalid values).
    • 17 new unit tests across test_models.py and test_metrics.py.
    • Existing bambulab_xcam_feature_enabled metric is unchanged.

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.40
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.39

Choose a tag to compare

@TheBlackBush TheBlackBush released this 22 Mar 18:38
3984f55

Added

  • Automatic cloud token refresh (cloud_auth.py, startup.py): When the cloud access token is invalid at startup, the exporter now silently refreshes it via BAMBULAB_CLOUD_REFRESH_TOKEN before falling back to email/2FA re-authentication.
    • refresh_access_token() uses the existing multi-base request pattern and returns an updated LoginResult with new access_token + refresh_token.
    • CloudAuthInvalidError — credentials definitively rejected (HTTP 401/403 or error body); triggers 2FA fallback.
    • CloudAuthTransientError — network/server issue (connection error, 5xx); does not force 2FA, surfaces a clear transient error instead.
    • On successful refresh, updated credentials are persisted to the encrypted store (when BAMBULAB_SECRET_KEY is set) and synced to .env.

Tests

  • 9 new unit tests covering the full refresh-token decision tree: happy-path bypass, invalid refresh → 2FA fallback, transient error → no forced 2FA, credential persistence, and HTTP 4xx/5xx classification.
  • Coverage raised to 97.22% (401 tests, threshold: 90%).

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.39
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.38

Choose a tag to compare

@TheBlackBush TheBlackBush released this 22 Mar 15:42
78f32a2

Fixed

  • Unraid template WebUI URL now opens the exporter landing page root () instead of .

Changed

  • Simplified and clarified Unraid template Overview copy for faster setup/operations.
  • Centered landing page status-card health/readiness content for cleaner visual alignment.
  • Added landing page footer credit: Created by TheBlackBush.
  • removed from repository tracking and kept local-only.

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.38
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.37

Choose a tag to compare

@TheBlackBush TheBlackBush released this 21 Mar 16:45
aa9cf31

What's Changed

Wiki & Documentation

  • Added Quick-Start.md and Prometheus-Setup.md for faster operator onboarding
  • Removed Release-Process.md from wiki (internal process, not operator-facing)
  • Updated _Sidebar.md navigation order for logical operator flow (install → configure → metrics → dashboards → troubleshoot)
  • Improved BAMBULAB_SECRET_KEY docs: generation command (openssl rand -hex 32), purpose explanation, and safety notes
  • Removed pip/venv install paths — Docker is the only supported deployment method
  • Updated cloud auth guidance to use Docker-based bambulab-cloud-auth CLI (no local Python tooling required)
  • GHCR pre-built image is now the recommended first installation option

Automation

  • Automated wiki sync via .github/workflows/wiki-sync.yml (triggers on push to main for docs/wiki/** changes, plus workflow_dispatch)
  • Sync uses rsync --checksum for markdown files only — no-ops gracefully when nothing changed
  • Validates target remote ends with .wiki.git before proceeding
  • Commit messages include short source SHA for traceability

README

  • Updated to reflect Docker-only deployment model

No breaking changes. Existing configuration, metrics, and dashboard content is preserved and extended.

Post-merge action: Trigger workflow_dispatch on wiki-sync.yml once to seed the GitHub Wiki with the new docs.

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.37
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.36

Choose a tag to compare

@TheBlackBush TheBlackBush released this 20 Mar 14:48

What's Changed

✨ Improvements

  • Refreshed Grafana sample dashboard with updated layout and panels for improved visibility and usability.

Full Changelog: v0.1.35...v0.1.36

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.36
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.35

Choose a tag to compare

@TheBlackBush TheBlackBush released this 19 Mar 23:11

[0.1.35] - 2026-03-20

Fixed

  • bambulab_ams_status_name label now correctly decodes the firmware-encoded ams_status field.
    The raw value packs the status category in bits 15–8; decoding now extracts (raw >> 8) & 0xFF
    before mapping. Single-byte map keys (0x000xFF) replace the previous multi-byte keys.
  • bambulab_ams_rfid_status_name mapping extended with code 6 → reading_stop.

Added

  • AMS_DRY_HEATER_STATE_NAMES and AMS_DRY_SUB_STATUS_NAMES reference tables in models.py
    for human-readable AMS Gen2 drying state and sub-status codes.

Migration note

Any Grafana/PromQL queries filtering on status="filament_change" etc. that relied on the old single-digit raw values (e.g., ams_status=1) will now correctly decode multi-byte firmware values. Verify your actual printer firmware sends multi-byte values (expected) or single-byte values.

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.35
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.34

Choose a tag to compare

@TheBlackBush TheBlackBush released this 18 Mar 18:33

See CHANGELOG.md for full details.

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.34
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.33

Choose a tag to compare

@TheBlackBush TheBlackBush released this 18 Mar 10:09

See CHANGELOG.md for full details.

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.33
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.32

Choose a tag to compare

@TheBlackBush TheBlackBush released this 17 Mar 21:27
6d9ebfa

What's Changed

Fixed

  • tray_color label values in bambulab_ams_slot_tray_info and bambulab_external_spool_info now include a # prefix, making them valid CSS hex color codes (e.g. #F98C36FF). Empty or missing values remain "unknown".

Internal

  • Added shared _format_color() static helper method used by both metrics.

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.32
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest

v0.1.31

Choose a tag to compare

@TheBlackBush TheBlackBush released this 17 Mar 20:19
e6ee765

What's Changed

Breaking Changes

  • Merged bambulab_ams_slot_tray_type_info and bambulab_ams_slot_tray_color_info into a single bambulab_ams_slot_tray_info metric with both tray_type and tray_color labels.

Users with custom Grafana dashboards referencing the old metric names will need to update their queries to use bambulab_ams_slot_tray_info with both labels.

Docker image

  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:0.1.31
  • ghcr.io/TheBlackBush/bambulab_metrics_exporter:latest