В последнее время я был заинтересован в теме DevOps, поэтому я изучал проект с открытым исходным кодом, связанный с мониторингом и переключился на статью о Medium. В реальном проекте я видел коллег в группе DevOps, использующих аналогичный мониторинг, поэтому я хотел насладиться им и узнать о визуализации мониторинга.
Конфигурация службы
Существует проект Spring-Boot на месте, и он также опирается на Jolokia (в основном для выставки JMX MBEAN через HTTP)
Конфигурация проекта также необходима
Конечные точки: включено: true JMX: включен: True Jolokia: включено: TrueManagement: Security: включено: false
Посетите URL, чтобы узнать, в порядке ли все
http: // localhost: 8080/jolokia/read/org.springframework.boot: name = metricsendpoint, type = endpoint/data
Создать систему мониторинга
Если вы можете увидеть данные, это означает, что конфигурация на стороне сервера в порядке. Как построить Telegraf + Influxdb + Grafana? Эти три компонента работают вместе таким образом. Telegraf фактически собирает информацию. Например, посетите URL выше каждые 10 секунд, чтобы получить метрики, хранить собранные данные в InfluxDB, а затем Графана делает визуализацию данных.
Но если это слишком трудно установить его вручную, пожалуйста, помогите универсальному GitHub и найдите очень хороший проект (https://github.com/samuelebistoletti/docker-statsd-influxdb-grafana), непосредственно распадает и изменяет некоторые конфигурации для обслуживания вашего проекта. Если вы не понимаете соответствующую конфигурацию, сначала вы можете запустить ее напрямую, а затем пройти через SSH, чтобы узнать.
ssh root@localhost -p 22022
С точки зрения конфигурации, главное, чтобы изменить Telegraf, потому что он подключается к различным проектам. Какую информацию вам нужна, например, процессор, диск, сеть и т. Д., Должна быть оборудована в Telegraf. Для простоты я настраивал только три входа.
# /etc/telegraf/telegraf.conf= inputs.jolokia]] context = "/jolokia"цин. "org.springframework.boot: name = metricsendpoint, type = endpoint" attribute = "data" [[inputs.jolokia.metrics]] name = "tomcat_max_threads" mbean = "tomcat: name =/" http-nio-8080/", type = threadpool" "MaxThreads" [[[inputs.jolokia.metrics]] name = "tomcat_current_threads_busy" mbean = "tomcat: name =/" http-nio-8080/", type = treampool" attribute = "currentthreadsbusy"
На самом деле, это стандартные метрики пружины и нити Tomcat.
После завершения перезагрузите службу /etc/init.d/telegraf restart
Просмотреть данные мониторинга
Мы посещаем InfluxDB, чтобы увидеть, есть ли какие -либо данные http: // localhost: 3004/и переключаем базу данных на Telegraf. Введите следующую команду, чтобы попробовать
Покажите измерения, выберите * из JolokiaSelect * из Cpuselect * из Memsect * из Diskio
Например, если вы введете SELECT * FROM jolokia , вы можете увидеть, какие данные выставлены Spring-Boot. Из столбца времени также видно, что Telegraf собирается каждые 10 секунд. Если это слишком часто, это также будет давлением на сервер.
Вышеуказанное в основном охватывает некоторые показатели процессора, памяти и хранения.
Фактически, вы также можете настроить конфигурации, связанные с сетью. Если вы заинтересованы, вы можете увидеть официальный Telegraf.conf, который содержит примеры настройки [[inputs.net]].
Визуализация данных
Как только данные доступны, следующим шагом является визуализация.
Следуйте указанному выше GitHub, чтобы войти в http: // localhost: 3003/,
Using the wizard click on Add data sourceChoose a name for the source and flag it as DefaultChoose InfluxDB as typeChoose direct as accessFill remaining fields as follows and click on Add without altering other fieldsUrl: http://localhost:8086Database: telegrafUser: telegrafPassword: telegraf
После добавления InfluxDB создайте новую панель инструментов и быстро добавьте несколько графиков.
Для демонстрации я добавил три, используя следующие три набора операторов запросов для визуализации трех диаграмм
Выберите среднее значение (usage_system) + среднее значение (usage_user) как cpu_total из процессора, где $ timefilter Group по времени (интервал $) Выберите «Общее») как «общее» из «mem», где $ wimefilter Group по времени ($ Interval) Заполните (NULL) Select Select («Используется» в качестве «используемого» из «Мемориального», где $ vaterfilter group time vecplater) ($ atterval). Среднее («metrics_heap.used») как «heap_usage» из «jolokia», где $ a Timefilter Group по времени ($ vivd) заполняет (null)
Первый - использование процессора; Второй - использование памяти, зеленая линия общая, желтая линия используется; Третий - это использование кучи JVM, предоставленной Jolokia, и вы можете увидеть ситуацию GC.
Я также настраивал коллекцию Tomcat только сейчас, и она также идеально подходит для того, чтобы увидеть ситуацию с темой Tomcat.
Выберите Mean ("tomcat_max_threads") из "jolokia", где $ $ Группа по времени ($ интервал) заполняет (null) Select Mean ("Tomcat_current_threads_busy") из "jolokia", где $ $ Группа к временю ($ vedalal) (null)краткое содержание
Выше приведено мониторинг Spring Boot, представленный редактором. Я надеюсь, что это будет полезно для вас. Если у вас есть какие -либо вопросы, пожалуйста, оставьте мне сообщение, и редактор ответит вам вовремя. Большое спасибо за вашу поддержку сайту wulin.com!