You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+59-14Lines changed: 59 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -54,10 +54,17 @@ Refer to dashboard [documentation page](https://www.tarantool.io/en/doc/latest/b
54
54
55
55
For guide on setting up your monitoring stack refer to [documentation page](https://www.tarantool.io/en/doc/latest/book/monitoring/grafana_dashboard/).
56
56
57
-
This repository provides preconfigured monitoring cluster with example Tarantool app and load generatior for local development and tests. You can use them to build a monitoring cluster for your own app.
57
+
### Example app
58
58
59
-
`docker-compose up -d` will start 6 containers: Tarantool App, Tarantool Load Generator, Telegraf, InfluxDB, Prometheus and Grafana, which build cluster with two fully operational metrics datasources (InfluxDB and Prometheus), extracting metrics from Tarantool App example project.
59
+
This repository provides preconfigured monitoring cluster with example Tarantool app and load generatior for local dashboard development and tests.
60
+
61
+
```bash
62
+
docker-compose up -d
63
+
```
64
+
will start 6 containers: Tarantool App, Tarantool Load Generator, Telegraf, InfluxDB, Prometheus and Grafana, which build cluster with two fully operational metrics datasources (InfluxDB and Prometheus), extracting metrics from Tarantool App example project.
60
65
We recommend using the exact versions we use in experimental cluster (e.g. Grafana v6.6.0).
66
+
After start, Grafana UI will be available at [localhost:3000](http://localhost:3000/).
67
+
You can also interact with Prometheus at [localhost:9090](http://localhost:9090/) and InfluxDB at [localhost:8086](http://localhost:8086/).
61
68
62
69
To set up an InfluxDB dashboard for monitoring example app, use the following variables:
63
70
@@ -69,12 +76,35 @@ To set up an Prometheus dashboard for monitoring example app, use the following
69
76
-`Job`: `tarantool_app`;
70
77
-`Rate time range`: `2m`.
71
78
79
+
### Monitoring local app
80
+
81
+
If you want to monitor Tarantool cluster deployed on your local host, you can use monitoring cluster similar to example app one.
82
+
83
+
Configure Telegraf/Prometheus to monitor your own app in `example/telegraf/telegraf.localapp.conf` and `example/prometheus/prometheus.localapp.yml`.
84
+
Use `host.docker.internal` as your machine host in configuration and set cluster instances ports as targets and correct metrics HTTP path.
85
+
See more setup tips in [documentation](https://www.tarantool.io/en/doc/latest/book/monitoring/grafana_dashboard/).
86
+
87
+
Start cluster with
88
+
```bash
89
+
docker-compose -f docker-compose.localapp.yml -p localapp-monitoring up -d
90
+
```
91
+
After start, Grafana UI will be available at [localhost:3000](http://localhost:3000/).
92
+
You can also interact with Prometheus at [localhost:9090](http://localhost:9090/) and InfluxDB at [localhost:8086](http://localhost:8086/).
72
93
73
94
## Manual build
74
95
75
96
`go` v.1.14 or greater is required to install build and test dependencies.
76
-
Run `make build-deps` to install dependencies that are required to build dashboards.
77
-
Run `make test-deps` to install build dependencies and dependencies that are required to run tests locally.
97
+
Run
98
+
```bash
99
+
make build-deps
100
+
```
101
+
to install dependencies that are required to build dashboards.
102
+
103
+
Run
104
+
```bash
105
+
make test-deps
106
+
```
107
+
to install build dependencies and dependencies that are required to run tests locally.
78
108
79
109
You can compile Prometheus dashboard template with
80
110
```bash
@@ -94,8 +124,15 @@ and to save output into clipboard, use
Compiled dashboard test files can be updated with `make update-tests` command.
127
+
You can run tests with
128
+
```bash
129
+
make run-tests
130
+
```
131
+
132
+
Compiled dashboard test files can be updated with
133
+
```bash
134
+
make update-tests
135
+
```
99
136
It also formats all source files with `jsonnetfmt`.
100
137
101
138
@@ -104,7 +141,11 @@ It also formats all source files with `jsonnetfmt`.
104
141
You can add your own custom panels to the bottom of the template dashboard.
105
142
106
143
1. Add tarantool/grafana-dashboard as a dependency in your project with jsonnet-bundler.
107
-
Run `jb init` to initialize `jsonnetfile.json` and add this repo as a dependency:
144
+
Run
145
+
```bash
146
+
jb init
147
+
```
148
+
to initialize `jsonnetfile.json` and add this repo as a dependency:
108
149
```json
109
150
# jsonnetfile.json
110
151
{
@@ -122,7 +163,11 @@ You can add your own custom panels to the bottom of the template dashboard.
122
163
"legacyImports": true
123
164
}
124
165
```
125
-
Run `jb install` to install dependencies. [`grafonnet`](https://github.com/grafana/grafonnet-lib) library will also be installed as a transitive dependency.
166
+
Run
167
+
```bash
168
+
jb install
169
+
```
170
+
to install dependencies. [`grafonnet`](https://github.com/grafana/grafonnet-lib) library will also be installed as a transitive dependency.
126
171
127
172
128
173
2. There are two main templates: `grafana-dashboard/dashboard/prometheus_dashboard.libsonnet` and `grafana-dashboard/dashboard/influxdb_dashboard.libsonnet`.
@@ -210,17 +255,17 @@ You can add your own custom panels to the bottom of the template dashboard.
0 commit comments