function buildMetrics()

in src/poller/poller-core/index.js [186:250]


function buildMetrics(cluster) {
  const metricsPrefix =
    cluster.engine === AutoscalerEngine.REDIS
      ? 'redis.googleapis.com/cluster'
      : 'memorystore.googleapis.com/instance';
  const metrics = [
    {
      name: 'cpu_maximum_utilization',
      filter:
        createBaseFilter(cluster) +
        `metric.type="${metricsPrefix}/cpu/maximum_utilization" ` +
        'AND metric.labels.role="primary"', // Only present for CPU metrics
      reducer: 'REDUCE_MEAN',
      aligner: 'ALIGN_MAX',
      period: 60,
    },
    {
      name: 'cpu_average_utilization',
      filter:
        createBaseFilter(cluster) +
        `metric.type="${metricsPrefix}/cpu/average_utilization" ` +
        'AND metric.labels.role="primary"', // Only present for CPU metrics
      reducer: 'REDUCE_MEAN',
      aligner: 'ALIGN_MAX',
      period: 60,
    },
    {
      name: 'memory_maximum_utilization',
      filter:
        createBaseFilter(cluster) +
        `metric.type="${metricsPrefix}/memory/maximum_utilization"`,
      reducer: 'REDUCE_MEAN',
      aligner: 'ALIGN_MAX',
      period: 60,
    },
    {
      name: 'memory_average_utilization',
      filter:
        createBaseFilter(cluster) +
        `metric.type="${metricsPrefix}/memory/average_utilization"`,
      reducer: 'REDUCE_MEAN',
      aligner: 'ALIGN_MAX',
      period: 60,
    },
    {
      name: 'maximum_evicted_keys',
      filter:
        createBaseFilter(cluster) +
        `metric.type="${metricsPrefix}/stats/maximum_evicted_keys"`,
      reducer: 'REDUCE_MEAN',
      aligner: 'ALIGN_MAX',
      period: 60,
    },
    {
      name: 'average_evicted_keys',
      filter:
        createBaseFilter(cluster) +
        `metric.type="${metricsPrefix}/stats/average_evicted_keys"`,
      reducer: 'REDUCE_MEAN',
      aligner: 'ALIGN_MAX',
      period: 60,
    },
  ];
  return metrics;
}