Skip to content

feat(logs): cluster-wide log file download#34811

Open
wezell wants to merge 5 commits intomainfrom
issue-34806-cluster-log-download
Open

feat(logs): cluster-wide log file download#34811
wezell wants to merge 5 commits intomainfrom
issue-34806-cluster-log-download

Conversation

@wezell
Copy link
Contributor

@wezell wezell commented Feb 28, 2026

Summary

  • Adds new _downloadClusterLog REST endpoint that downloads a log file from all cluster nodes and returns them as a single ZIP archive
  • Each node's log is prefixed with a short server ID and hostname for easy identification
  • Inter-node communication supports HTTPS with fall back to HTTP
  • Adds a Dojo dialog to the log viewer UI letting users choose between downloading from this server or all cluster nodes
  • Makes the log viewer panel fill the full viewport height

Changes

  • ClusterLogCollector.java (new): Parallel HTTP/HTTPS fetcher that collects logs from peer servers, assembles them into a ZIP with an _errors.txt for any failures
  • MaintenanceResource.java: New _downloadClusterLog/{fileName} endpoint with short-lived JWT token for peer authentication
  • tail_log.jsp: Download button now opens a dialog with "This Server" / "All Cluster Nodes" options; log viewer fills viewport
  • Language.properties: New i18n keys for the download dialog
  • ClusterLogCollectorTest.java (new): Integration tests covering ZIP assembly, label formatting, error handling, and peer skip logic

Test plan

  • Integration tests pass: ClusterLogCollectorTest (6 tests)
  • Manual test: single-node download still works via dialog
  • Manual test: cluster download returns ZIP with logs from all nodes
  • Manual test: cluster download with unreachable node includes _errors.txt
  • Manual test: log viewer fills full viewport height

🤖 Generated with Claude Code

This PR fixes: #34806

@wezell wezell marked this pull request as ready for review February 28, 2026 21:15
@wezell wezell requested review from dsilvam and yolabingo February 28, 2026 21:25
@wezell wezell requested a review from sfreudenthaler March 1, 2026 16:41
@wezell wezell enabled auto-merge March 2, 2026 01:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Area : Backend PR changes Java/Maven backend code

Projects

Status: No status

Development

Successfully merging this pull request may close these issues.

Add cluster-wide log file download endpoint

1 participant