mirror of
https://github.com/rfmoz/grafana-dashboards.git
synced 2025-03-05 20:51:45 -08:00
Add Makefile and README
This commit is contained in:
parent
9e6bb75a2a
commit
5e83738d1d
34
prometheus/apache-http-mixin/Makefile
Normal file
34
prometheus/apache-http-mixin/Makefile
Normal file
|
@ -0,0 +1,34 @@
|
|||
JSONNET_FMT := jsonnetfmt -n 2 --max-blank-lines 1 --string-style s --comment-style s
|
||||
|
||||
.PHONY: all
|
||||
all: build dashboards_out prometheus_alerts.yaml
|
||||
|
||||
vendor: jsonnetfile.json
|
||||
jb install
|
||||
|
||||
.PHONY: build
|
||||
build: vendor
|
||||
|
||||
.PHONY: fmt
|
||||
fmt:
|
||||
find . -name 'vendor' -prune -o -name '*.libsonnet' -print -o -name '*.jsonnet' -print | \
|
||||
xargs -n 1 -- $(JSONNET_FMT) -i
|
||||
|
||||
.PHONY: lint
|
||||
lint: build
|
||||
find . -name 'vendor' -prune -o -name '*.libsonnet' -print -o -name '*.jsonnet' -print | \
|
||||
while read f; do \
|
||||
$(JSONNET_FMT) "$$f" | diff -u "$$f" -; \
|
||||
done
|
||||
mixtool lint mixin.libsonnet
|
||||
|
||||
dashboards_out: mixin.libsonnet config.libsonnet $(wildcard dashboards/*)
|
||||
@mkdir -p dashboards_out
|
||||
mixtool generate dashboards mixin.libsonnet -d dashboards_out
|
||||
|
||||
prometheus_alerts.yaml: mixin.libsonnet alerts/*.libsonnet
|
||||
mixtool generate alerts mixin.libsonnet -a prometheus_alerts.yaml
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
rm -rf dashboards_out prometheus_alerts.yaml
|
33
prometheus/apache-http-mixin/README.md
Normal file
33
prometheus/apache-http-mixin/README.md
Normal file
|
@ -0,0 +1,33 @@
|
|||
# Apache HTTP server mixin
|
||||
|
||||
Apache HTTP mixin is a set of configurable Grafana dashboards and alerts based on the metrics exported by the [Apache exporter](https://github.com/Lusitaniae/apache_exporter).
|
||||
|
||||

|
||||
|
||||
Install tools before generating dashboards and alerts:
|
||||
|
||||
```bash
|
||||
go install github.com/jsonnet-bundler/jsonnet-bundler/cmd/jb@latest
|
||||
go install github.com/monitoring-mixins/mixtool/cmd/mixtool@latest
|
||||
```
|
||||
|
||||
For linting and formatting, you would also need `mixtool` and `jsonnetfmt` installed. If you
|
||||
have a working Go development environment, it's easiest to run the following:
|
||||
|
||||
```bash
|
||||
go install github.com/google/go-jsonnet/cmd/jsonnetfmt@latest
|
||||
```
|
||||
|
||||
The files in `dashboards_out` need to be imported
|
||||
into your Grafana server. The exact details will be depending on your environment.
|
||||
|
||||
`prometheus_alerts.yaml` needs to be imported into Prometheus.
|
||||
|
||||
Edit `config.libsonnet` if required and then build JSON dashboard files for Grafana:
|
||||
|
||||
```bash
|
||||
make
|
||||
```
|
||||
|
||||
For more advanced uses of mixins, see
|
||||
https://github.com/monitoring-mixins/docs.
|
Loading…
Reference in a new issue