Skip to content

Fix updateConfig to overwrite monitor epic config options #225

@ravjotbrar

Description

@ravjotbrar

Currently, the updateConfig endpoint appends monitoring settings to the config instead of overwriting them:

  valkey: {},
  server: {
    port: 0,
    data_dir: '/Users/Ravjot.Brar/Library/Application Support/Valkey Admin/metrics-data/localhost-6380'
  },
  collector: { batch_ms: 60000, batch_max: 500 },
  epics: [
    {
      name: 'memory',
      type: 'memory_stats',
      poll_ms: 5000,
      file_prefix: 'memory'
    },
    {
      name: 'cpu',
      type: 'info_cpu',
      poll_ms: 5000,
      file_prefix: 'cpu'
    },
    {
      name: 'commandlog_large_reply',
      type: 'commandlog_large_reply',
      poll_ms: 10000,
      file_prefix: 'commandlog_large_reply'
    },
    {
      name: 'commandlog_large_request',
      type: 'commandlog_large_request',
      poll_ms: 10000,
      file_prefix: 'commandlog_large_request'
    },
    {
      name: 'commandlog_slow',
      type: 'commandlog_slow',
      poll_ms: 10000,
      file_prefix: 'commandlog_slow'
    },
    {
      name: 'slowlog_len',
      type: 'slowlog_len',
      poll_ms: 60000,
      file_prefix: 'slowlog_len'
    },
    {
      name: 'monitor',
      type: 'monitor',
      monitoringDuration: 10000,
      monitoringInterval: 10000,
      maxCommandsPerRun: 1000000,
      file_prefix: 'monitor'
    }
  ],
  monitoring: { monitorEnabled: true, monitorDuration: 1000 }
}

The expected result overwrites monitoringDuration and uses monitorEnabled in the metrics server instead of the frontend (this is related to refactoring ownership of config options like lfuEnabled to the metrics server).

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions