Skip to content

Conversation

@jranson
Copy link
Member

@jranson jranson commented Dec 16, 2025

This PR makes improvements to the ALB for performance and un-dry:

  • Adds Pool() and HealthyTargets() functions to ALB Mechanism interface
  • Exports consts for mechanism names and utilizes throughout
  • Removes ResponseGate and ResponderClaim types in favor of a generic CaptureResponseWriter
  • Refactors/simplifies all mechanisms to use CaptureResponseWriter

Also:

  • Added bonus, revives the caller log entry field from trickster 1.x and earlier versions of trickster 2.x that had disappeared, like:
    time=2025-12-16T23:46:50.587335Z app=trickster level=warn event="configuration reload starting now" caller=pkg/daemon/daemon.go:132 source=sighup
  • Updates the default HTTP/TCP backend timeouts as follows:
    • keep_alive_timeout: 300s -> 120s
    • timeout: 180s -> 60s
  • Sets backend http clients' IdleConnTimeout value based on o.KeepAliveTimeout to close stale goroutines, and adds a max 10s TCP/HTTP/TLS connect/handshake timeout.

Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
@coveralls
Copy link

coveralls commented Dec 16, 2025

Pull Request Test Coverage Report for Build 20318367811

Warning: This coverage report may be inaccurate.

This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

Details

  • 366 of 591 (61.93%) changed or added relevant lines in 37 files are covered.
  • 12 unchanged lines in 6 files lost coverage.
  • Overall coverage decreased (-0.4%) to 72.142%

Changes Missing Coverage Covered Lines Changed/Added Lines %
pkg/backends/alb/mech/ur/user_router.go 0 1 0.0%
pkg/backends/prometheus/model/alerts.go 23 24 95.83%
pkg/backends/prometheus/model/series.go 16 17 94.12%
pkg/backends/prometheus/model/vector.go 10 11 90.91%
pkg/daemon/setup/setup.go 0 1 0.0%
pkg/testutil/albpool/albpool.go 0 1 0.0%
pkg/backends/prometheus/model/labels.go 11 13 84.62%
pkg/proxy/paths/options/options.go 1 3 33.33%
pkg/backends/alb/mech/rr/round_robin.go 1 4 25.0%
pkg/backends/options/options.go 0 3 0.0%
Files with Coverage Reduction New Missed Lines %
pkg/backends/prometheus/model/alerts.go 1 96.49%
pkg/backends/prometheus/model/series.go 1 93.33%
pkg/backends/prometheus/model/vector.go 1 85.71%
pkg/proxy/response/merge/timeseries.go 1 0.0%
pkg/backends/alb/mech/tsm/time_series_merge.go 2 56.2%
pkg/proxy/response/merge/merge.go 6 0.0%
Totals Coverage Status
Change from base Build 20284111388: -0.4%
Covered Lines: 14932
Relevant Lines: 20698

💛 - Coveralls

Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
@jranson jranson marked this pull request as ready for review December 17, 2025 20:15
@jranson jranson requested a review from a team as a code owner December 17, 2025 20:15
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
Signed-off-by: James Ranson <james@ranson.org>
@jranson jranson merged commit 86de912 into trickstercache:main Dec 17, 2025
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants