Connection
CLIENT SETINFO
Set client library name and version information.
The CLIENT SETINFO command sets client library name and version information that will be shown in CLIENT LIST and CLIENT INFO commands. This helps identify which client library is being used and is useful for debugging and monitoring.
Arguments
attributebodyLiteral['LIB-NAME', 'LIB-VER']required
The attribute to set (case-insensitive):
"LIB-NAME"or"lib-name": Library name"LIB-VER"or"lib-ver": Library version
valuebodystrrequired
The value to set for the attribute.
Response
strrequired
Returns "OK" if the attribute was successfully set.
Set Library Name
# Set the library nameresult = redis.client_setinfo("LIB-NAME", "redis-py")assert result == "OK"Set Library Version
# Set the library versionresult = redis.client_setinfo("LIB-VER", "1.0.0")assert result == "OK"Lowercase Attributes
# Attributes are case-insensitiveredis.client_setinfo("lib-name", "redis-py")redis.client_setinfo("lib-ver", "2.0.0")With Custom Suffix
# Common pattern: include wrapper or framework inforedis.client_setinfo("LIB-NAME", "redis-py(upstash_v1.0.0)")redis.client_setinfo("LIB-VER", "1.0.0")Complete Setup
# Set both library name and versionredis.client_setinfo("LIB-NAME", "my-redis-wrapper")redis.client_setinfo("LIB-VER", "3.2.1")# Now this information will appear in CLIENT LIST outputUse Cases
- Debugging: Identify which client library version is being used
- Monitoring: Track different client libraries connecting to Redis
- Analytics: Understand client library distribution across connections
- Support: Quickly identify client versions when troubleshooting issues
Viewing Client Information
After setting client info, you can view it using the CLIENT LIST command:
# Set client informationredis.client_setinfo("LIB-NAME", "redis-py")redis.client_setinfo("LIB-VER", "1.0.0")# View all clients (if you have access to CLIENT LIST)# The output will include lib-name and lib-ver fieldsBest Practices
- Set on Connection: Set client info immediately after establishing a connection
- Include Version: Always set both library name and version
- Use Descriptive Names: Make library names easily identifiable
- Version Format: Use semantic versioning (e.g., "1.2.3")
- Include Context: Add wrapper or framework info if applicable
This command is available in Redis 7.2.0 and later. The attribute names are case-insensitive and will be normalized to uppercase.