Build Observability and Reporting
Discussion: https://github.com/support-and-care/maven-support-and-care/discussions/168
Original Items: - "Reporting / Observability (Olivier)" - "Metrics (Goal Execution Timing, ...) (Gerd)"
Problem Statement
Modern software development requires insight into build performance, test results, and quality metrics. Commercial tools like Gradle Enterprise/Develocity provide these capabilities, but there is no open-source equivalent for Maven users. Teams lack visibility into build performance trends, test flakiness, cache effectiveness, and quality gate results across projects and time.
Current State / Starting Point
- Maven provides basic console output and XML reports from plugins
- Surefire/Failsafe generate XML reports but no aggregated dashboards
- No built-in build performance tracking or trend analysis
- Quality plugins (JaCoCo, SpotBugs) produce separate reports without a unified presentation
- No standardized way to collect and visualize build metrics over time
- Commercial solutions (Develocity) exist but are not accessible to all projects
Expected Outcomes / Benefits
- Build Reporting Dashboard: Develocity-like capabilities for Maven including:
- Build performance metrics and trends
- Test result aggregation and flakiness detection
- Build cache hit/miss statistics
-
Goal execution timing breakdown
-
Rich Plugin Reporting: Enhanced reporting for key plugins with a unified presentation:
- HTML/PDF report generation
- Graphical visualizations
-
Support for Surefire, JaCoCo, SpotBugs, and other quality plugins
-
Metrics Collection: Standardized approach to collect build metrics for:
- Historical trend analysis
- CI/CD integration
-
Team dashboards (e.g., Grafana integration)
-
Open Source Alternative: Provide the Maven community with an open-source alternative to commercial build insight tools
Discussion Summary
The community suggested splitting this into separate concerns: test flakiness (user code quality) vs. build performance and cache effectiveness (Maven internals), as they serve very different audiences. There were concerns that some aspects (especially performance) may require deep Maven changes beyond a single funding round. Several existing tools were noted: takari/maven-timeline, takari/maven-profiler, and the OpenTelemetry Java contrib maven-extension, which should be evaluated before building new solutions.
Final Discussion (2026-02-24)
- This only about measurements and reporting (not solving found issues)
- Request a rather large budget to address the different scopes/audiences
- Decision: Request Funding