df8ec22662
Previously the `quotesEscape` function was escaping only double quotes. This wasn't enough, since the input string could contain other special chars, which must be escaped when put inside JSON string. For example, carriage return and line feed chars (\n\r), backslash char, etc. This led to the following issues, which were improperly fixed: - https://github.com/VictoriaMetrics/VictoriaMetrics/issues/890 - this issue was "fixed" by introducing the `crlfEscape` function, which led to unnecessary complications in user templates, while not fixing various corner cases such as backslash chars in the input string. See |
||
---|---|---|
.. | ||
base | ||
builder | ||
provisioning | ||
alertmanager.yml | ||
alerts.yml | ||
docker-compose.yml | ||
Makefile | ||
prometheus.yml | ||
README.md |
Docker compose environment for VictoriaMetrics
To spin-up VictoriaMetrics cluster, vmagent, vmalert, Alertmanager and Grafana run the following command:
docker-compose up
For single version check docker compose in master branch.
VictoriaMetrics
VictoriaMetrics cluster in this environment consists of
vminsert, vmstorage and vmselect components. Only vmselect
has exposed port :8481
and the rest of components are available
only inside of environment.
The communication scheme between components is the following:
- vmagent sends scraped metrics to vminsert;
- vminsert forwards data to vmstorage;
- vmselect is connected to vmstorage for querying data;
- grafana is configured with datasource pointing to vmselect;
- vmalert is configured to query vmselect and send alerts state and recording rules to vminsert;
- alertmanager is configured to receive notifications from vmalert.
vmagent
vmagent is used for scraping and pushing timeseries to
VictoriaMetrics instance. It accepts Prometheus-compatible
configuration prometheus.yml
with listed targets for scraping.
vmalert
vmalert evaluates alerting rules (alerts.yml
) to track VictoriaMetrics
health state. It is connected with AlertManager for firing alerts,
and with VictoriaMetrics for executing queries and storing alert's state.
alertmanager
AlertManager accepts notifications from vmalert
and fires alerts.
All notifications are blackholed according to alertmanager.yml
config.
Grafana
To access service open following link.
Default creds:
- login -
admin
- password -
admin
Grafana is provisioned by default with following entities:
- VictoriaMetrics datasource
- Prometheus datasource
- VictoriaMetrics overview dashboard