Агрегировать данные из разных экземпляров

У меня есть вопрос, касающийся Graphite, который я использую с statsD в node.js.

У меня есть сервер, на котором я собираюсь запустить несколько экземпляров, и я хотел бы объединить статистику, подобную следующей, для всех экземпляров:

  • Среднее время ответа
  • Количество активных клиентов

Прямо сейчас каждый экземпляр получит свою собственную папку, поскольку он начинается со своих собственных графиков, потому что код:

stats.gauge('requestsPerSecond', reqCounter);

Могу ли я сделать что-то вроде stats('/myServ/aggregates', reqCounter); а также, чтобы каждый экземпляр отправлял свои данные на тот же граф в графите, кроме того, чтобы отслеживать свои собственные графы, используя stats.gauge('requestsPerSecond', reqCounter);?

1 ответ

Я не уверен на 100%, что вы пытаетесь сделать. Но в целом вы не можете отправить один и тот же показатель из нескольких экземпляров StatsD на один и тот же сервер Graphite. В графите хранится только последний, прибывший во временное окно для архива с наивысшей точностью. Таким образом, несколько экземпляров StatsD будут перезаписывать друг друга. Однако вы можете установить префикс для конкретного сервера ( https://github.com/etsy/statsd/blob/master/exampleConfig.js#L67) в конфигурации StatsD, который будет добавлен перед строкой метрик.

Другие вопросы по тегам