Creates a new RedisPoolManager instance.
Configuration settings for the manager
ProtectedloggerProtectednameThe name of this manager instance.
Static ReadonlytypeIdentifier for the manager type.
Establishes the connection to Redis.
A promise that resolves to this manager instance for method chaining
Creates a repository for the given schema, allowing interaction with the corresponding Redis data.
A repository instance for the specified schema
Gets the underlying Redis client connection.
The Redis client instance
OptionalgetGet a model by name (optional)
The model instance or undefined if not found
Performs a comprehensive health check on the Redis connection. Tests connectivity by sending a PING command and gathering connection metrics.
A promise that resolves to a detailed health check result including:
Executes an asynchronous operation with the Redis connection, ensuring that the connection is open, and enforcing a command timeout.
Because node-redis' own command timeout stops once the command is written to the socket, so it does not protect against a frozen Redis.
This method adds an additional layer of protection by enforcing a command timeout at the application level.
The value of the command timeout is taken from the options provided during the client's initialization (commandOptions.timeout) or defaults to 5000 milliseconds if not specified.
The asynchronous operation to execute with the Redis connection
A promise that resolves to the result of the operation or rejects with an error if the operation fails or times out
Runs operations through an operation guard, which can enforce policies such as retries, circuit breaking, or fail-fast behavior.