Инструменты Введение
1. Statsd узел используется для разработки сетевого демона, который характеризуется UDP (производительность, не влияет на первичном оперативно трубку обслуживание), или для мониторинга различных данных TCP, и передает агрегированные данные на серверную службу для обработки , Общая поддержка «Графит», «ElasticaSearch», «InfluxDB» и так далее, он интегрирует конечных потребителей в различных языках API, здесь мы используем jsocol / pystatsd: клиент Python для statsd для сбора данных.
2. Графит представляет собой набор Python написано на открытом интерфейсе программирования источника, он используется в основном для сбора своевременного состояния сервера, в котором данные в основном используются в качестве задней части statsd. Он разделен на три суб-проектов
- углеродистая демон, который получает необработанные статистические данные StatsD пересылаются по.
- Шепот в базу данных временных рядов для хранения статистических данных.
- графит WebApp используется для графического отображения статистики веб-проектов
3. Развитие использования графана Go, дизайн может скорректировать свои статистические диаграммы на интерфейсе, поддерживает несколько тревоги, могут быть настроены.
устанавливать
Здесь я использую [синтезировать (https://github.com/obfuscurity/synthesize) для быстрой установки и упаковок Statsd графита, то необходимо обратить внимание, чтобы установить следующие данные ** / Opt / графит ** каталог. То, что мы начали установку
После службы углерода-кэш старт # statsd обработка данных будет ввести транзитную
службу Memcached начать # тайник
службу collectd начать # сбор нагрузку обслуживания дополнительного
запуск службы apache2 # Это может быть заменено с помощью Nginx
Service statsite Start # statsd серверных услуг
这里面需要单独启动graphite-web应用,端口启动:0.0.0.0:8080,后面配置数据源需要使用。
cd /opt/graphite/
sudo ./run-graphite-devel-server.py /opt/graphite/
Grafana数据包可以通过手动下载安装也可以通过apt-get 安装
- sudo apt-get install grafana
启动之后访问3000端口就能看到这样一个页面,默认的账号密码:admin,admin可以通过配置github或者google登录。
login
数据收集
Python端我们使用statsd进行数据统一打点到到监控服务器收集
>>> import statsd
>>> c = statsd.StatsClient('localhost', 8125)
>>> c.incr('foo') # Increment the 'foo' counter.
>>> c.timing('stats.timed', 320) # Record a 320ms 'stats.timed'.
这里面我们通过Python把数据收集到statsite,通过Graphite Web服务来进行展示。
配置Graphite
进入Grafana后台,进行配置点击 「Data Sources」进行配置Graphite的数据(来自前端statsd收集)
data_source
接下来配置对应的数据展示:
add-graph
到此基本的数据配置就完了,恭喜你拥有了一个完整的监控系统。
Для облегчения понимания здесь следует добавить, данные из приложения, добавить агент, приложение исполнительские данные времени отправляются на сервер через statsd, собранной с помощью статистики углерода, шепота сохраняет последнее шоу в графите, в котором мы графана заменить UI графитового родной дисплей, который является следствием нашей топической карты.