{"id":15798,"library":"redis-info","title":"Redis INFO Output Parser","description":"redis-info is a focused JavaScript utility designed to accurately parse the raw string output of the Redis `INFO` command into a structured JavaScript object. This library provides a programmatic way to access detailed Redis server statistics, configuration parameters, and operational metrics. The current stable version, 3.1.0, was published approximately 4-5 years ago, indicating a maintenance-oriented release cadence primarily driven by critical bug fixes or significant changes to the Redis `INFO` command's format itself. Its primary differentiation lies in its single-purpose design, offering a direct and unopinionated conversion of the `INFO` string without coupling to a full Redis client library.","status":"maintenance","version":"3.1.0","language":"javascript","source_language":"en","source_url":"https://github.com/FGRibreau/node-redis-info","tags":["javascript"],"install":[{"cmd":"npm install redis-info","lang":"bash","label":"npm"},{"cmd":"yarn add redis-info","lang":"bash","label":"yarn"},{"cmd":"pnpm add redis-info","lang":"bash","label":"pnpm"}],"dependencies":[],"imports":[{"note":"This package primarily supports CommonJS `require` syntax. Native ES Module `import` is not officially supported in v3.x and may lead to issues.","wrong":"import { parse } from 'redis-info';","symbol":"parse","correct":"const { parse } = require('redis-info');"}],"quickstart":{"code":"const { parse } = require('redis-info');\n\nconst redisInfoString = `\n# Server\nredis_version:2.4.10\nredis_git_sha1:00000000\nredis_git_dirty:0\nredis_build_id:9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d9d\nredis_mode:standalone\nos:Linux 5.15.0-78-generic x86_64\narch_bits:64\nmultiplexing_api:epoll\ngcc_version:9.4.0\nprocess_id:1234\nprocess_supervised:no\nrun_id:54321deadbeef0987654321deadbeef098765\ntcp_port:6379\nserver_time_usec:1678886400000000\nuptime_in_seconds:3600\nuptime_in_days:0\nhz:10\nlru_clock:123456789\nexecutable:/usr/local/bin/redis-server\nconfig_file:/etc/redis/redis.conf\n\n# Clients\nconnected_clients:1\nclient_recent_max_input_buffer:2\nclient_recent_max_output_buffer:0\nblocked_clients:0\n\n# Memory\nused_memory:1048576\nused_memory_human:1.00M\nused_memory_rss:2097152\nused_memory_rss_human:2.00M\nused_memory_peak:1048576\nused_memory_peak_human:1.00M\n`;\n\nconst info = parse(redisInfoString);\n\nconsole.log('Redis Version:', info.redis_version);\nconsole.log('OS:', info.os);\nconsole.log('Connected Clients:', info.connected_clients);\nconsole.log('Memory Used Human:', info.used_memory_human);\n\n// Example of accessing a non-existent property (returns undefined)\nconsole.log('Replication Role (may not exist in old Redis versions):', info.role);","lang":"javascript","description":"Demonstrates parsing a multi-section Redis INFO string and accessing specific properties from the resulting object."},"warnings":[{"fix":"Manually inspect the parsed output to ensure accuracy. If critical fields are missing or incorrect, consider implementing custom parsing logic or using a more actively maintained Redis client library that integrates up-to-date `INFO` parsing.","message":"Redis `INFO` command output varies significantly across different Redis server versions (e.g., Redis 2.x, 3.x, 4.x, 5.x, 6.x, 7.x, 8.x). The `redis-info` parser (v3.1.0, published 4-5 years ago) may not fully or correctly parse `INFO` output from newer Redis versions, leading to missing or incorrectly interpreted fields.","severity":"gotcha","affected_versions":"all versions of `redis-info` when used with Redis server versions released after `redis-info` v3.1.0's publication."},{"fix":"Use CommonJS `require` syntax: `const { parse } = require('redis-info');`. If you must use ES Modules, consider dynamic `import()` or ensure your build tooling handles CJS interoperability.","message":"The `redis-info` package, especially version 3.1.0, is built as a CommonJS module. Direct ES Module `import` syntax might not work as expected without a transpilation step or specific Node.js configuration, leading to `TypeError` or `SyntaxError`.","severity":"gotcha","affected_versions":">=3.0.0"}],"env_vars":null,"last_verified":"2026-04-21T00:00:00.000Z","next_check":"2026-07-20T00:00:00.000Z","problems":[{"fix":"Use CommonJS `require` syntax: `const { parse } = require('redis-info');`.","cause":"Attempting to import the CommonJS `redis-info` package using incorrect ES Module syntax like `import { parse } from 'redis-info';`.","error":"TypeError: (0 , redis_info_1.parse) is not a function"},{"fix":"Verify the Redis server version and compare its `INFO` output with the `redis-info` parser's behavior. Manually inspect the raw `INFO` string and the parsed object. Consider reporting an issue to the library maintainer or implementing a custom parser for missing fields if using a very recent Redis version.","cause":"The `redis INFO` command output format evolves with new Redis server versions. `redis-info` v3.1.0 might not be updated to handle fields introduced in newer Redis server versions (e.g., Redis 6.x, 7.x, 8.x) or correctly interpret changed field structures.","error":"Output from `redis-info.parse()` is missing expected fields or shows incorrect values for recent Redis versions."}],"ecosystem":"npm"}