mirror of
https://github.com/monitoring-mixins/website.git
synced 2024-12-14 11:37:31 +00:00
changed mixins.yaml to mixins.json; added command to copy mixins.json to hugo
This commit is contained in:
parent
282d2b97cd
commit
72033fda0a
7 changed files with 209 additions and 78 deletions
|
@ -3,7 +3,7 @@
|
|||
## Adding new mixin
|
||||
|
||||
0. Install [required software](#requirements)
|
||||
1. Add new mixin to [mixins.yaml](mixins.yaml) file
|
||||
1. Add new mixin to [mixins.json](mixins.json) file
|
||||
2. Run `make`
|
||||
|
||||
## Requirements
|
||||
|
|
|
@ -9,6 +9,7 @@ TMPDIR="${TOP}/tmp/repos"
|
|||
# Make sure to use project tooling
|
||||
PATH="${TOP}/tmp/bin:${PATH}"
|
||||
|
||||
|
||||
download_mixin() {
|
||||
local mixin="$1"
|
||||
local repo="$2"
|
||||
|
@ -79,12 +80,12 @@ find site/content/ ! -name '_index.md' -type f -exec rm -rf {} +
|
|||
mkdir -p "${TMPDIR}"
|
||||
|
||||
# Generate mixins
|
||||
CONFIG=$(gojsontoyaml -yamltojson < mixins.yaml)
|
||||
CONFIG="mixins.json"
|
||||
|
||||
for mixin in $(echo "$CONFIG" | jq -r '.mixins[].name'); do
|
||||
repo="$(echo "$CONFIG" | jq -r ".mixins[] | select(.name == \"$mixin\") | .source")"
|
||||
subdir="$(echo "$CONFIG" | jq -r ".mixins[] | select(.name == \"$mixin\") | .subdir")"
|
||||
text="$(echo "$CONFIG" | jq -r ".mixins[] | select(.name == \"$mixin\") | .description")"
|
||||
for mixin in $(cat "$CONFIG" | jq -r '.mixins[].name'); do
|
||||
repo="$(cat "$CONFIG" | jq -r ".mixins[] | select(.name == \"$mixin\") | .source")"
|
||||
subdir="$(cat "$CONFIG" | jq -r ".mixins[] | select(.name == \"$mixin\") | .subdir")"
|
||||
text="$(cat "$CONFIG" | jq -r ".mixins[] | select(.name == \"$mixin\") | .description")"
|
||||
if [ "$text" == "null" ]; then text=""; fi
|
||||
set +u
|
||||
download_mixin "$mixin" "$repo" "$subdir"
|
||||
|
@ -124,3 +125,7 @@ for mixin in $(echo "$CONFIG" | jq -r '.mixins[].name'); do
|
|||
done
|
||||
fi
|
||||
done
|
||||
|
||||
cd "${TOP}" || exit 1
|
||||
mkdir -p "site/static"
|
||||
cp -f "${CONFIG}" "site/static/"
|
||||
|
|
98
mixins.json
Normal file
98
mixins.json
Normal file
|
@ -0,0 +1,98 @@
|
|||
{
|
||||
"mixins": [
|
||||
{
|
||||
"name": "prometheus",
|
||||
"source": "https://github.com/prometheus/prometheus",
|
||||
"subdir": "documentation/prometheus-mixin",
|
||||
"description": "The Prometheus Mixin is a set of configurable, reusable, and extensible alerts and dashboards for Prometheus."
|
||||
},
|
||||
{
|
||||
"name": "node-exporter",
|
||||
"source": "https://github.com/prometheus/node_exporter",
|
||||
"subdir": "docs/node-mixin",
|
||||
"description": "The Node Mixin is a set of configurable, reusable, and extensible alerts and dashboards based on the metrics exported by the Node Exporter. The mixin creates recording and alerting rules for Prometheus and suitable dashboard descriptions for Grafana."
|
||||
},
|
||||
{
|
||||
"name": "kubernetes",
|
||||
"source": "https://github.com/kubernetes-monitoring/kubernetes-mixin",
|
||||
"subdir": "",
|
||||
"description": "A set of Grafana dashboards and Prometheus alerts for Kubernetes."
|
||||
},
|
||||
{
|
||||
"name": "kube-state-metrics",
|
||||
"source": "https://github.com/kubernetes/kube-state-metrics",
|
||||
"subdir": "jsonnet/kube-state-metrics-mixin"
|
||||
},
|
||||
{
|
||||
"name": "etcd",
|
||||
"source": "https://github.com/etcd-io/etcd",
|
||||
"subdir": "Documentation/etcd-mixin",
|
||||
"description": "A set of customisable Prometheus alerts for etcd."
|
||||
},
|
||||
{
|
||||
"name": "ceph",
|
||||
"source": "https://github.com/ceph/ceph-mixins",
|
||||
"subdir": "",
|
||||
"description": "A set of Prometheus alerts for Ceph.\n\nThe scope of this project is to provide Ceph specific Prometheus rule files using Prometheus Mixins.\n"
|
||||
},
|
||||
{
|
||||
"name": "gluster",
|
||||
"source": "https://github.com/gluster/gluster-mixins",
|
||||
"subdir": "",
|
||||
"description": "A set of Grafana dashboards and Prometheus alerts for Gluster.\n\nThe scope of this project is to provide Gluster specific Grafana dashboard configs and Prometheus rule files using Prometheus Mixins.\n"
|
||||
},
|
||||
{
|
||||
"name": "consul",
|
||||
"source": "https://github.com/grafana/jsonnet-libs",
|
||||
"subdir": "consul-mixin",
|
||||
"description": "Grafana dashboards and Prometheus alerts for operating Consul, in the form of a monitoring mixin."
|
||||
},
|
||||
{
|
||||
"name": "jaeger",
|
||||
"source": "https://github.com/grafana/jsonnet-libs",
|
||||
"subdir": "jaeger-mixin"
|
||||
},
|
||||
{
|
||||
"name": "memcached",
|
||||
"source": "https://github.com/grafana/jsonnet-libs",
|
||||
"subdir": "memcached-mixin",
|
||||
"description": "Grafana dashboard for operating Memcached, in the form of a monitoring mixin."
|
||||
},
|
||||
{
|
||||
"name": "sealed-secrets",
|
||||
"source": "https://github.com/bitnami-labs/sealed-secrets",
|
||||
"subdir": "contrib/prometheus-mixin"
|
||||
},
|
||||
{
|
||||
"name": "thanos",
|
||||
"source": "https://github.com/thanos-io/thanos",
|
||||
"subdir": "mixin"
|
||||
},
|
||||
{
|
||||
"name": "cortex",
|
||||
"source": "https://github.com/grafana/cortex-jsonnet",
|
||||
"subdir": "cortex-mixin"
|
||||
},
|
||||
{
|
||||
"name": "kube-cockroachdb",
|
||||
"source": "https://github.com/metalmatze/kube-cockroachdb",
|
||||
"subdir": "monitoring"
|
||||
},
|
||||
{
|
||||
"name": "coredns",
|
||||
"source": "https://github.com/povilasv/coredns-mixin",
|
||||
"subdir": "",
|
||||
"description": "CoreDNS mixin provides Grafana dashboard and Prometheus Alerts to monitor CoreDNS. The mixin was introduced in [Kubernetes Node Local DNS Cache blogpost](https://povilasv.me/kubernetes-node-local-dns-cache/) to better help users monitor CoreDNS in Kubernetes. Mixin can also be used to monitor standalone CoreDNS instance without any orchestrators.\n"
|
||||
},
|
||||
{
|
||||
"name": "prometheus-operator",
|
||||
"source": "https://github.com/prometheus-operator/prometheus-operator",
|
||||
"subdir": "jsonnet/mixin"
|
||||
},
|
||||
{
|
||||
"name": "cert-manager",
|
||||
"source": "https://gitlab.com/uneeq-oss/cert-manager-mixin.git",
|
||||
"subdir": ""
|
||||
}
|
||||
]
|
||||
}
|
70
mixins.yaml
70
mixins.yaml
|
@ -1,70 +0,0 @@
|
|||
---
|
||||
mixins:
|
||||
- name: "prometheus"
|
||||
source: "https://github.com/prometheus/prometheus"
|
||||
subdir: "documentation/prometheus-mixin"
|
||||
description: "The Prometheus Mixin is a set of configurable, reusable, and extensible alerts and dashboards for Prometheus."
|
||||
- name: node-exporter
|
||||
source: "https://github.com/prometheus/node_exporter"
|
||||
subdir: "docs/node-mixin"
|
||||
description: "The Node Mixin is a set of configurable, reusable, and extensible alerts and dashboards based on the metrics exported by the Node Exporter. The mixin creates recording and alerting rules for Prometheus and suitable dashboard descriptions for Grafana."
|
||||
- name: kubernetes
|
||||
source: "https://github.com/kubernetes-monitoring/kubernetes-mixin"
|
||||
subdir: ""
|
||||
description: "A set of Grafana dashboards and Prometheus alerts for Kubernetes."
|
||||
- name: kube-state-metrics
|
||||
source: "https://github.com/kubernetes/kube-state-metrics"
|
||||
subdir: "jsonnet/kube-state-metrics-mixin"
|
||||
- name: etcd
|
||||
source: "https://github.com/etcd-io/etcd"
|
||||
subdir: "Documentation/etcd-mixin"
|
||||
description: "A set of customisable Prometheus alerts for etcd."
|
||||
- name: ceph
|
||||
source: "https://github.com/ceph/ceph-mixins"
|
||||
subdir: ""
|
||||
description: |
|
||||
A set of Prometheus alerts for Ceph.
|
||||
|
||||
The scope of this project is to provide Ceph specific Prometheus rule files using Prometheus Mixins.
|
||||
- name: gluster
|
||||
source: "https://github.com/gluster/gluster-mixins"
|
||||
subdir: ""
|
||||
description: |
|
||||
A set of Grafana dashboards and Prometheus alerts for Gluster.
|
||||
|
||||
The scope of this project is to provide Gluster specific Grafana dashboard configs and Prometheus rule files using Prometheus Mixins.
|
||||
- name: consul
|
||||
source: "https://github.com/grafana/jsonnet-libs"
|
||||
subdir: "consul-mixin"
|
||||
description: "Grafana dashboards and Prometheus alerts for operating Consul, in the form of a monitoring mixin."
|
||||
- name: jaeger
|
||||
source: "https://github.com/grafana/jsonnet-libs"
|
||||
subdir: "jaeger-mixin"
|
||||
- name: memcached
|
||||
source: "https://github.com/grafana/jsonnet-libs"
|
||||
subdir: "memcached-mixin"
|
||||
description: "Grafana dashboard for operating Memcached, in the form of a monitoring mixin."
|
||||
- name: sealed-secrets
|
||||
source: "https://github.com/bitnami-labs/sealed-secrets"
|
||||
subdir: "contrib/prometheus-mixin"
|
||||
- name: thanos
|
||||
source: "https://github.com/thanos-io/thanos"
|
||||
subdir: "mixin"
|
||||
- name: cortex
|
||||
source: "https://github.com/grafana/cortex-jsonnet"
|
||||
subdir: "cortex-mixin"
|
||||
- name: kube-cockroachdb
|
||||
source: "https://github.com/metalmatze/kube-cockroachdb"
|
||||
subdir: "monitoring"
|
||||
- name: coredns
|
||||
source: "https://github.com/povilasv/coredns-mixin"
|
||||
subdir: ""
|
||||
description: |
|
||||
CoreDNS mixin provides Grafana dashboard and Prometheus Alerts to monitor CoreDNS. The mixin was introduced in [Kubernetes Node Local DNS Cache blogpost](https://povilasv.me/kubernetes-node-local-dns-cache/) to better help users monitor CoreDNS in Kubernetes. Mixin can also be used to monitor standalone CoreDNS instance without any orchestrators.
|
||||
- name: prometheus-operator
|
||||
source: "https://github.com/prometheus-operator/prometheus-operator"
|
||||
subdir: "jsonnet/mixin"
|
||||
- name: cert-manager
|
||||
source: "https://gitlab.com/uneeq-oss/cert-manager-mixin.git"
|
||||
subdir: ""
|
||||
|
|
@ -1772,8 +1772,8 @@ Following dashboards are generated from mixins and hosted on github:
|
|||
|
||||
- [cortex-blocks-vs-chunks](https://github.com/monitoring-mixins/website/blob/master/assets/cortex/dashboards/cortex-blocks-vs-chunks.json)
|
||||
- [cortex-chunks](https://github.com/monitoring-mixins/website/blob/master/assets/cortex/dashboards/cortex-chunks.json)
|
||||
- [cortex-compactor-resources](https://github.com/monitoring-mixins/website/blob/master/assets/cortex/dashboards/cortex-compactor-resources.json)
|
||||
- [cortex-compactor](https://github.com/monitoring-mixins/website/blob/master/assets/cortex/dashboards/cortex-compactor.json)
|
||||
- [cortex-compactor-resources](https://github.com/monitoring-mixins/website/blob/master/assets/cortex/dashboards/cortex-compactor-resources.json)
|
||||
- [cortex-config](https://github.com/monitoring-mixins/website/blob/master/assets/cortex/dashboards/cortex-config.json)
|
||||
- [cortex-object-store](https://github.com/monitoring-mixins/website/blob/master/assets/cortex/dashboards/cortex-object-store.json)
|
||||
- [cortex-queries](https://github.com/monitoring-mixins/website/blob/master/assets/cortex/dashboards/cortex-queries.json)
|
||||
|
|
|
@ -324,5 +324,5 @@ labels:
|
|||
Following dashboards are generated from mixins and hosted on github:
|
||||
|
||||
|
||||
- [prometheus-remote-write](https://github.com/monitoring-mixins/website/blob/master/assets/prometheus/dashboards/prometheus-remote-write.json)
|
||||
- [prometheus](https://github.com/monitoring-mixins/website/blob/master/assets/prometheus/dashboards/prometheus.json)
|
||||
- [prometheus-remote-write](https://github.com/monitoring-mixins/website/blob/master/assets/prometheus/dashboards/prometheus-remote-write.json)
|
||||
|
|
98
site/static/mixins.json
Normal file
98
site/static/mixins.json
Normal file
|
@ -0,0 +1,98 @@
|
|||
{
|
||||
"mixins": [
|
||||
{
|
||||
"name": "prometheus",
|
||||
"source": "https://github.com/prometheus/prometheus",
|
||||
"subdir": "documentation/prometheus-mixin",
|
||||
"description": "The Prometheus Mixin is a set of configurable, reusable, and extensible alerts and dashboards for Prometheus."
|
||||
},
|
||||
{
|
||||
"name": "node-exporter",
|
||||
"source": "https://github.com/prometheus/node_exporter",
|
||||
"subdir": "docs/node-mixin",
|
||||
"description": "The Node Mixin is a set of configurable, reusable, and extensible alerts and dashboards based on the metrics exported by the Node Exporter. The mixin creates recording and alerting rules for Prometheus and suitable dashboard descriptions for Grafana."
|
||||
},
|
||||
{
|
||||
"name": "kubernetes",
|
||||
"source": "https://github.com/kubernetes-monitoring/kubernetes-mixin",
|
||||
"subdir": "",
|
||||
"description": "A set of Grafana dashboards and Prometheus alerts for Kubernetes."
|
||||
},
|
||||
{
|
||||
"name": "kube-state-metrics",
|
||||
"source": "https://github.com/kubernetes/kube-state-metrics",
|
||||
"subdir": "jsonnet/kube-state-metrics-mixin"
|
||||
},
|
||||
{
|
||||
"name": "etcd",
|
||||
"source": "https://github.com/etcd-io/etcd",
|
||||
"subdir": "Documentation/etcd-mixin",
|
||||
"description": "A set of customisable Prometheus alerts for etcd."
|
||||
},
|
||||
{
|
||||
"name": "ceph",
|
||||
"source": "https://github.com/ceph/ceph-mixins",
|
||||
"subdir": "",
|
||||
"description": "A set of Prometheus alerts for Ceph.\n\nThe scope of this project is to provide Ceph specific Prometheus rule files using Prometheus Mixins.\n"
|
||||
},
|
||||
{
|
||||
"name": "gluster",
|
||||
"source": "https://github.com/gluster/gluster-mixins",
|
||||
"subdir": "",
|
||||
"description": "A set of Grafana dashboards and Prometheus alerts for Gluster.\n\nThe scope of this project is to provide Gluster specific Grafana dashboard configs and Prometheus rule files using Prometheus Mixins.\n"
|
||||
},
|
||||
{
|
||||
"name": "consul",
|
||||
"source": "https://github.com/grafana/jsonnet-libs",
|
||||
"subdir": "consul-mixin",
|
||||
"description": "Grafana dashboards and Prometheus alerts for operating Consul, in the form of a monitoring mixin."
|
||||
},
|
||||
{
|
||||
"name": "jaeger",
|
||||
"source": "https://github.com/grafana/jsonnet-libs",
|
||||
"subdir": "jaeger-mixin"
|
||||
},
|
||||
{
|
||||
"name": "memcached",
|
||||
"source": "https://github.com/grafana/jsonnet-libs",
|
||||
"subdir": "memcached-mixin",
|
||||
"description": "Grafana dashboard for operating Memcached, in the form of a monitoring mixin."
|
||||
},
|
||||
{
|
||||
"name": "sealed-secrets",
|
||||
"source": "https://github.com/bitnami-labs/sealed-secrets",
|
||||
"subdir": "contrib/prometheus-mixin"
|
||||
},
|
||||
{
|
||||
"name": "thanos",
|
||||
"source": "https://github.com/thanos-io/thanos",
|
||||
"subdir": "mixin"
|
||||
},
|
||||
{
|
||||
"name": "cortex",
|
||||
"source": "https://github.com/grafana/cortex-jsonnet",
|
||||
"subdir": "cortex-mixin"
|
||||
},
|
||||
{
|
||||
"name": "kube-cockroachdb",
|
||||
"source": "https://github.com/metalmatze/kube-cockroachdb",
|
||||
"subdir": "monitoring"
|
||||
},
|
||||
{
|
||||
"name": "coredns",
|
||||
"source": "https://github.com/povilasv/coredns-mixin",
|
||||
"subdir": "",
|
||||
"description": "CoreDNS mixin provides Grafana dashboard and Prometheus Alerts to monitor CoreDNS. The mixin was introduced in [Kubernetes Node Local DNS Cache blogpost](https://povilasv.me/kubernetes-node-local-dns-cache/) to better help users monitor CoreDNS in Kubernetes. Mixin can also be used to monitor standalone CoreDNS instance without any orchestrators.\n"
|
||||
},
|
||||
{
|
||||
"name": "prometheus-operator",
|
||||
"source": "https://github.com/prometheus-operator/prometheus-operator",
|
||||
"subdir": "jsonnet/mixin"
|
||||
},
|
||||
{
|
||||
"name": "cert-manager",
|
||||
"source": "https://gitlab.com/uneeq-oss/cert-manager-mixin.git",
|
||||
"subdir": ""
|
||||
}
|
||||
]
|
||||
}
|
Loading…
Reference in a new issue