RediStack 1.0.0 Alpha 7
Pre-release
Pre-release
API Docs are always available at docs.redistack.info
All changes made in this tag were from Merge Request !92.
Logging is now more dynamic - as RedisClient loggers can be changed, rather than being static at initialization.
This is particularly useful for attaching metadata from a logger you already have, so you can correlate the logs generated by RediStack.
For example:
let connection = RedisConnection.connect(...)
let response = connection
.logging(to: myRequestLogger) // this logger has a `requestID` metadata element
.ping() // logs from RedisConnection while fulfilling this command will also include the `requestID` metadata
.wait()Major
RedisClienthas 2 new requirements:logger: Logging.Loggerreadonly propertysetLogging(to: Logging.Logger)method
RedisCommandHandlerno longer supports logging- The init method has been changed to no longer accept a
Logger
- The init method has been changed to no longer accept a
RedisMessageEncoderno longer supports logging- The init method has been changed to just an empty init
- The exact timing of when certain logs and metrics has been tweaked slightly in the
RedisConnection.initmethod
Minor
RedisClienthas a default extension methodlogging(to:)that is chainable and callssetLogging(to:)RedisConnectionnow has a publicid: UUIDpropertyRedisConnectionhas moretracelogs- Some
RedisConnectiondebuglogs re-adjusted totrace - Some
RedisConnectionlogs had their level increased to account for being the sole source of logs now
Patch
- The
RedisConnectionmetadata id value is now correctly stable. - Corrected some code documentation, specifically around logging.