Logging improvements for write-only connections #197
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
While trying to emit from the standalone, write-only
KombuManager(using the example from the docs), I kept running into this exception:It looks like logging inside all of the client managers depends on the logger created when the server was instantiated, but that is
Nonewhen the manager is used by itself in write-only mode. The test for write-only sets a mock server (and thus a default logger), so it doesn't fail in the tests.This code should address that, creating a new option to set the logger for write-only managers, using the server logger if it exists, and falling back to the same default logger as the server. It also fixes what looks like a bug where
KombuManagerwas not passingwrite_onlyup to thePubSubManagerand adds a test to ensure loggers are being set. Logging inAsyncRedisManagerwas done a little differently; I'm not sure if that was intentional (no option, always default logger), but I made it consistent with the others.