Графит суммирует данные
Я использую graphite для сбора данных, и я хотел бы получить общее количество определенных событий за период время. Скажем, количество логинов в неделю.
Однако мне просто нужно общее число, и вам не нужно видеть, как он развивается с течением времени.
Когда я использую что-то вроде from=-1w&target=summarize(stats.events.login.success,"1w")&format=json
, я получаю два datapoints, а не один.
Есть ли способ получить один datapoint из функции summarize
? или использовать другую функцию для возврата одного значения datapoint?
Ответы
Ответ 1
Проблема заключается в том, что суммирование не выравнивается по полю from по умолчанию.
summarize(seriesList, intervalString, func='sum', alignToFrom=False)
Если вы делаете
from=-1w&target=summarize(stats.events.login.success,"1w","sum",true)&format=json
вы должны получить только один datapoint. Сейчас он делает выравнивание ваших ведер до дат, которые не соответствуют диапазону недели, начиная с вашего параметра, поэтому вы получаете 2 ведра. Из графических документов:
По умолчанию ведра калибруются округлением до ближайшего интервала. Это хорошо работает с интервалами, меньшими, чем один день. Например, 22:32 закончится в ковше 22: 00-23: 00, когда интервал = 1 час.
Передача alignToFrom = true вместо этого создаст ведра, начиная с от времени. В этом случае ведро для 22:32 зависит от время. Если от = 6: 30, то 1-часовое ведро для 22:32 равно 22: 30-23: 30.
Ответ 2
Итак, для меня он делит неделю на среду и на месяц 15, 16 или 17. Кроме того, мое, похоже, игнорирует значение alignToFrom. Сотрудник предположил, что, возможно, он основан на дате установки или когда сначала создается экземпляр whispher. Где я могу поверить, что это может быть в случае дня недели, я сомневаюсь, что мы оба установили вещи в середине месяца.