Я интегрировал свое приложение Springboot с Dynatrace. И возможность отправлять метрики приложения и метрики базы данных Cassandra в хранилище данных Dynatrace. Возможность просмотра запросов к базе данных cassandra, времени ответа каждого вызова базы данных и т. д.
Как Dynatrace получает эту информацию? Я хочу получить аналогичную информацию в графане через Прометей. Итак, просто подумал проверить, как работает dynatrace внутри. Итак, я мог бы реализовать то же самое в графане.
Может ли кто-нибудь предложить мне то же самое?
Я считаю, что Dynatrace использует специальный агент для сбора показателей Cassandra, но вы не сможете использовать его для Prometheus.
Тем не менее, есть несколько проверенных и надежных решений, позволяющих предоставить метрики Cassandra для Prometheus:
Оба относительно просты в настройке и использовании, и для обоих в Grafana имеется множество общедоступных шаблонов информационной панели Cassandra.
Кроме этих двух, я слышал только об экспортере Cassandra от Instaclustr, но мне так и не удалось его попробовать.
Лично я чаще всего использовал JMX Exporter с Prometheus и Grafana и рекомендую его для большинства случаев использования. Пока вы предоставляете только то, что вам нужно для ваших информационных панелей (настроено в файле JMX Exporter yaml
) и настраиваете интервал очистки в конфигурации Prometheus, нагрузка на ЦП должна быть незначительной.
В частности, для трассировки запросов я не думаю, что ни один из предложенных мной вариантов не может этого сделать, поскольку они полагаются на MBeans для предоставления метрик, и, насколько мне известно, MBean для трассировки запросов не существует. В любом случае, я предполагаю, что раскрытие трассировок запросов обходится довольно дорого, особенно учитывая высокую пропускную способность запросов, которую может обрабатывать большинство кластеров Cassandra.
Как получить метрики Кассандры из приложения Springboot?
Я не знаю, как получить метрики Cassandra из приложения. Инструменты, которые я рекомендовал, получают метрики из узлов базы данных и предоставляют их Prometheus. Эта документация несколько устарела, но основные принципы все еще применимы - github.com/oleg-glushak/cassandra-prometheus-jmx
«Таварес… Большое спасибо за информацию. Можем ли мы получить IP-адрес вызывающего клиента и время ответа, необходимое для метрик запроса через приложение, используя возможность наблюдения Springboot cassandra?
Таварес.. Было бы полезно, если бы вы предоставили несколько примеров или примеров для интеграции Кассандры и Прометея в приложение Springboot.