packages/client/lib/commands/LATENCY_GRAPH.ts
import { CommandParser } from '../client/parser';
import { BlobStringReply, Command } from '../RESP/types';
export const LATENCY_EVENTS = {
ACTIVE_DEFRAG_CYCLE: 'active-defrag-cycle',
AOF_FSYNC_ALWAYS: 'aof-fsync-always',
AOF_STAT: 'aof-stat',
AOF_REWRITE_DIFF_WRITE: 'aof-rewrite-diff-write',
AOF_RENAME: 'aof-rename',
AOF_WRITE: 'aof-write',
AOF_WRITE_ACTIVE_CHILD: 'aof-write-active-child',
AOF_WRITE_ALONE: 'aof-write-alone',
AOF_WRITE_PENDING_FSYNC: 'aof-write-pending-fsync',
COMMAND: 'command',
EXPIRE_CYCLE: 'expire-cycle',
EVICTION_CYCLE: 'eviction-cycle',
EVICTION_DEL: 'eviction-del',
FAST_COMMAND: 'fast-command',
FORK: 'fork',
RDB_UNLINK_TEMP_FILE: 'rdb-unlink-temp-file'
} as const;
export type LatencyEvent = typeof LATENCY_EVENTS[keyof typeof LATENCY_EVENTS];
export default {
NOT_KEYED_COMMAND: true,
IS_READ_ONLY: true,
parseCommand(parser: CommandParser, event: LatencyEvent) {
parser.push('LATENCY', 'GRAPH', event);
},
transformReply: undefined as unknown as () => BlobStringReply
} as const satisfies Command;