Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Configurable log level for AggregateFuture #5393

Closed
anjor opened this issue Jan 28, 2021 · 1 comment
Closed

Configurable log level for AggregateFuture #5393

anjor opened this issue Jan 28, 2021 · 1 comment

Comments

@anjor
Copy link

anjor commented Jan 28, 2021

Context
We use the whenAllSucceed method in Futures to combine futures when batching requests. This is done for the "fast failing" that AggregateFuture provides.

When more than one future throws an exception, one of the exceptions gets propagated, but the others get logged here at SEVERE level. For our specific use case, the exceptions don't matter as much because we have retry logic on the server side to handle them.

Problem
We have monitoring in place for logging at the SEVERE level. As a result of the above behaviour, our monitors keep firing despite the server handling the retry logic correctly.

Proposed Solution
Could we make the logging level configurable?

It will need to be passed from AggregateFuture to CombinedFuture up to Futures#whenAllSucceed. It could be made optional, and if it isn't set then it falls back to SEVERE to preserve backwards compatibility.

@cpovirk
Copy link
Member

cpovirk commented Jan 28, 2021

I have felt bad about this for years, but util.concurrent has remained not a priority for us for years, so I'm not sure when that will change.

You can follow along on #2134. I recently suggested a workaround that I haven't tested but that I am hopeful would work.

@cpovirk cpovirk closed this as completed Jan 28, 2021
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

No branches or pull requests

2 participants