Мы хотели бы иметь линейную диаграмму (или распределение) в нашей пользовательской панели мониторинга Stackdriver с временем ответа, возвращаемым журналами apache. Простая линейная диаграмма, время ответа или задержка, вызванная другими, приходящими из структурированных журналов.
Мы настроили нашего агента ведения журнала, добавили структурированные журналы в fluentd, как вы можете видеть на изображении, которое он работает на экране журнала.
в httpRequest у нас есть latency
.
httpRequest: {
latency: "0.081215s"
referer: "-"
requestMethod: "GET"
requestUrl: "/v1/call/match-in?q=spdif&fields=&limit=200&ra..."
responseSize: "636"
serverIp: "3.89.69.139"
status: 200
userAgent: "HTTPClient/1.0 (2.8.3, ruby 2.2.3 (2015-08-18))"
}
Мы попытались создать собственную метрику журнала, выбрав поле и установив выражение как ([0-9.]+)s
, чтобы исключить конечные «s». Наши значения в 79 мс 0.079800s
не уверены, нужно ли нам изменять конфигурацию сегмента.
Но график возвращается пустым:
Как мы можем отобразить его в виде линейной диаграммы на пользовательской панели инструментов в Stackdriver?
Есть ли способ построить извлеченное поле времени из журналов на экране?
Обновление 1:
Как мы можем на самом деле проверить, создали ли мы метрику, которая имеет слишком много временных рядов? В разделе Устранение неполадок есть три случая, но как мы можем их проверить?
Обновление 2:
Итак, мы обнаружили, что это не работает со значениями ниже 1. Как у нас был график, где у нас были числа меньше секунды, и, похоже, что в промежутке от 0 до 1 он не отображается.
На изображении ниже ясно видно, что, хотя задержка была ниже 1, она не отображалась в начале распределения, а когда она была больше 1, она строилась на правом графике.
Итак, на основании этих находок, что является реальной работой вокруг? Что мне не хватало?
вот наш конфиг: