From 176564f133e5d687449291ef3018dd86b57052ff Mon Sep 17 00:00:00 2001 From: jianxiaoguo <842666271@qq.com> Date: Mon, 7 Nov 2022 10:30:31 +0800 Subject: [PATCH] chore(grafana): remove panel when component off-cluster --- charts/monitor/templates/_helpers.tmpl | 18 ++ charts/monitor/values.yaml | 20 +- grafana/rootfs/Dockerfile | 4 +- .../dashboards/drycc_component_health.json | 306 +++--------------- .../usr/share/grafana/api/dashboards/pd.json | 12 +- .../share/grafana/api/dashboards/redis.json | 4 +- .../share/grafana/api/dashboards/tikv.json | 135 +------- .../rootfs/usr/share/grafana/start-grafana | 47 +++ 8 files changed, 117 insertions(+), 429 deletions(-) diff --git a/charts/monitor/templates/_helpers.tmpl b/charts/monitor/templates/_helpers.tmpl index af245ef..190b783 100644 --- a/charts/monitor/templates/_helpers.tmpl +++ b/charts/monitor/templates/_helpers.tmpl @@ -1,6 +1,10 @@ {{/* Generate monitor grafana envs */}} {{- define "grafana.envs" }} env: +- name: NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace {{- if eq .Values.global.influxdbLocation "off-cluster" }} - name: "INFLUXDB_URL" valueFrom: @@ -73,4 +77,18 @@ env: - name: DRYCC_PASSPORT_SECRET value: "{{ .Values.grafana.passportSecret }}" {{- end }} +- name: "INFLUXDB_LOCATION" + value: {{ .Values.global.influxdbLocation }} +- name: "REDIS_LOCATION" + value: {{ .Values.global.redisLocation }} +- name: "RABBITMQ_LOCATION" + value: {{ .Values.global.rabbitmqLocation }} +- name: "STORAGE_LOCATION" + value: {{ .Values.global.storageLocation }} +- name: "DATABASE_LOCATION" + value: {{ .Values.global.databaseLocation }} +- name: "PASSPORT_LOCATION" + value: {{ .Values.global.passportLocation }} +- name: "REGISTRY_LOCATION" + value: {{ .Values.global.registryLocation }} {{- end }} diff --git a/charts/monitor/values.yaml b/charts/monitor/values.yaml index fbce570..4289558 100644 --- a/charts/monitor/values.yaml +++ b/charts/monitor/values.yaml @@ -72,25 +72,19 @@ redis: port: "6379" global: - # Set the location of Workflow's influxdb cluster + # Set the location of Workflow's component cluster # # Valid values are: - # - on-cluster: Run Influxdb within the Kubernetes cluster - # - off-cluster: Influxdb is running outside of the cluster and credentials and connection information will be provided. + # - on-cluster: Run component within the Kubernetes cluster + # - off-cluster: component is running outside of the cluster and credentials and connection information will be provided. influxdbLocation: "on-cluster" - # Set the location of Workflow's grafana instance - # - # Valid values are: - # - on-cluster: Run Grafana within the Kubernetes cluster - # - off-cluster: Grafana is running outside of the cluster grafanaLocation: "on-cluster" - # Set the location of Workflow's redis instance - # - # Valid values are: - # - on-cluster: Run Redis within the Kubernetes cluster - # - off-cluster: Run Redis outside the Kubernetes cluster (configure in redis section) redisLocation: "on-cluster" + rabbitmqLocation: "on-cluster" storageLocation: "on-cluster" + databaseLocation: "on-cluster" + passportLocation: "on-cluster" + registryLocation: "on-cluster" # Role-Based Access Control for Kubernetes >= 1.5 rbac: false ingressClass: "" diff --git a/grafana/rootfs/Dockerfile b/grafana/rootfs/Dockerfile index 951d8ed..bfc7c0a 100644 --- a/grafana/rootfs/Dockerfile +++ b/grafana/rootfs/Dockerfile @@ -4,7 +4,8 @@ ENV DRYCC_UID=1001 \ DRYCC_GID=1001 \ DRYCC_HOME_DIR=/usr/share/grafana \ GRAFANA_VERSION="9.1.1" \ - ENVTPL_VERSION="1.0.0" + ENVTPL_VERSION="1.0.0" \ + JQ_VERSION="1.6" RUN groupadd drycc --gid ${DRYCC_GID} \ && useradd drycc -u ${DRYCC_UID} -g ${DRYCC_GID} -s /bin/bash -m -d ${DRYCC_HOME_DIR} @@ -14,6 +15,7 @@ COPY . / RUN install-packages fontconfig curl \ && install-stack grafana ${GRAFANA_VERSION} \ && install-stack envtpl ${ENVTPL_VERSION} \ + && install-stack jq ${JQ_VERSION} \ && rm -rf \ /usr/share/doc \ /usr/share/man \ diff --git a/grafana/rootfs/usr/share/grafana/api/dashboards/drycc_component_health.json b/grafana/rootfs/usr/share/grafana/api/dashboards/drycc_component_health.json index cd65592..d7f3371 100644 --- a/grafana/rootfs/usr/share/grafana/api/dashboards/drycc_component_health.json +++ b/grafana/rootfs/usr/share/grafana/api/dashboards/drycc_component_health.json @@ -61,7 +61,7 @@ "current": false, "max": false, "min": false, - "show": true, + "show": false, "total": false, "values": false }, @@ -169,7 +169,7 @@ "current": false, "max": false, "min": false, - "show": true, + "show": false, "total": false, "values": false }, @@ -340,7 +340,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-passport\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-passport\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -450,7 +450,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-passport\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-passport\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -574,7 +574,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-controller/)\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-controller/)\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -684,7 +684,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-controller/)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-controller/)\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -724,240 +724,6 @@ "title": "CONTROLLER", "type": "row" }, - { - "collapsed": true, - "gridPos": { - "h": 1, - "w": 24, - "x": 0, - "y": 3 - }, - "id": 58, - "panels": [ - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "editable": true, - "error": false, - "fill": 1, - "fillGradient": 0, - "grid": {}, - "gridPos": { - "h": 7, - "w": 12, - "x": 0, - "y": 3 - }, - "hiddenSeries": false, - "id": 60, - "interval": "", - "isNew": true, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": false, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "8.4.5", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "alias": "$tag_pod_name", - "datasource": null, - "dsType": "influxdb", - "groupBy": [ - { - "params": [ - "$interval" - ], - "type": "time" - }, - { - "params": [ - "pod_name" - ], - "type": "tag" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], - "hide": false, - "measurement": "kubernetes_pod_container", - "orderByTime": "ASC", - "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-helmbroker/)\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", - "refId": "A", - "resultFormat": "time_series" - } - ], - "thresholds": [], - "timeRegions": [], - "title": "CPU", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 0, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": "Millicores", - "logBase": 1, - "show": true - }, - { - "format": "short", - "logBase": 1, - "show": true - } - ], - "yaxis": { - "align": false - } - }, - { - "aliasColors": {}, - "bars": false, - "dashLength": 10, - "dashes": false, - "editable": true, - "error": false, - "fill": 1, - "fillGradient": 0, - "grid": {}, - "gridPos": { - "h": 7, - "w": 12, - "x": 12, - "y": 3 - }, - "hiddenSeries": false, - "id": 62, - "interval": "", - "isNew": true, - "legend": { - "avg": false, - "current": false, - "max": false, - "min": false, - "show": false, - "total": false, - "values": false - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "options": { - "alertThreshold": true - }, - "percentage": false, - "pluginVersion": "8.4.5", - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "spaceLength": 10, - "stack": false, - "steppedLine": false, - "targets": [ - { - "alias": "$tag_pod_name", - "datasource": null, - "dsType": "influxdb", - "groupBy": [ - { - "params": [ - "$interval" - ], - "type": "time" - }, - { - "params": [ - "pod_name" - ], - "type": "tag" - }, - { - "params": [ - "null" - ], - "type": "fill" - } - ], - "measurement": "kubernetes_pod_container", - "orderByTime": "ASC", - "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-helmbroker/)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", - "refId": "A", - "resultFormat": "time_series" - } - ], - "thresholds": [], - "timeRegions": [], - "title": "Memory", - "tooltip": { - "msResolution": true, - "shared": true, - "sort": 0, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "bytes", - "logBase": 1, - "show": true - }, - { - "format": "short", - "logBase": 1, - "show": true - } - ], - "yaxis": { - "align": false - } - } - ], - "title": "HELM-BROKER", - "type": "row" - }, { "collapsed": true, "gridPos": { @@ -1040,7 +806,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-builder\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-builder\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -1149,7 +915,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-builder\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-builder\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -1272,7 +1038,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-database\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-database\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -1381,7 +1147,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-database\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-database\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -1503,7 +1269,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-logger-fluentd\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-logger-fluentd\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -1611,7 +1377,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-logger-fluentd\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-logger-fluentd\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -1733,7 +1499,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-monitor-grafana\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-monitor-grafana\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -1841,7 +1607,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-monitor-grafana\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-monitor-grafana\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -1964,7 +1730,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-influxdb/)\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-influxdb/)\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -2073,7 +1839,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-influxdb/)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] =~ /drycc-influxdb/)\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -2195,7 +1961,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-logger\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-logger\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -2256,7 +2022,7 @@ "current": false, "max": false, "min": false, - "show": true, + "show": false, "total": false, "values": false }, @@ -2303,7 +2069,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-logger\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-logger\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -2426,7 +2192,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-minio\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-minio\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -2487,7 +2253,7 @@ "current": false, "max": false, "min": false, - "show": true, + "show": false, "total": false, "values": false }, @@ -2535,7 +2301,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-minio\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-minio\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -2659,7 +2425,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-meta-pd\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-meta-pd\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -2769,7 +2535,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-meta-pd\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-meta-pd\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -2893,7 +2659,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-meta-tikv\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-meta-tikv\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3003,7 +2769,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-meta-tikv\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-storage-meta-tikv\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3125,7 +2891,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-rabbitmq\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-rabbitmq\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3233,7 +2999,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-rabbitmq\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-rabbitmq\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3355,7 +3121,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-redis\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-redis\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3462,7 +3228,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-redis\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-redis\")\n |> keep(columns: [\"_time\", \"namespace\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3584,7 +3350,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-registry\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-registry\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3692,7 +3458,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-registry\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-registry\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3814,7 +3580,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-registry-proxy\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-registry-proxy\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -3922,7 +3688,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-registry-proxy\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-registry-proxy\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -4044,7 +3810,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-monitor-telegraf\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-monitor-telegraf\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -4152,7 +3918,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-monitor-telegraf\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-monitor-telegraf\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } diff --git a/grafana/rootfs/usr/share/grafana/api/dashboards/pd.json b/grafana/rootfs/usr/share/grafana/api/dashboards/pd.json index 837f888..016a68a 100644 --- a/grafana/rootfs/usr/share/grafana/api/dashboards/pd.json +++ b/grafana/rootfs/usr/share/grafana/api/dashboards/pd.json @@ -25,7 +25,7 @@ "editable": true, "fiscalYearStartMonth": 0, "graphTooltip": 0, - "id": 5, + "id": null, "links": [], "liveNow": false, "panels": [ @@ -1059,10 +1059,7 @@ }, "targets": [ { - "datasource": { - "type": "influxdb", - "uid": "6fcv2jV4z" - }, + "datasource": null, "query": "from(bucket: \"kubernetes\")\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_measurement\"] == \"process_cpu_seconds_total\")\n |> filter(fn: (r) => r[\"url\"] =~ /pd/)\n |> toInt()\n |> map(fn: (r) => ({ r with _value: r._value / 1000 }))\n |> keep(columns: [\"_time\", \"_value\", \"url\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")\n ", "refId": "A" } @@ -1162,11 +1159,6 @@ "templating": { "list": [ { - "current": { - "selected": false, - "text": "http://drycc-storage-meta-pd-0.drycc-storage-meta-pd.drycc.svc.cluster.local:2379/metrics", - "value": "http://drycc-storage-meta-pd-0.drycc-storage-meta-pd.drycc.svc.cluster.local:2379/metrics" - }, "datasource": null, "definition": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_measurement\"] == \"pd_cluster_status\")\n |> duplicate(column: \"url\", as: \"_value\")\n |> aggregateWindow(every: v.windowPeriod, fn: last, createEmpty: false)\n |> yield(name: \"last\")", "description": "pd_cluster_status url", diff --git a/grafana/rootfs/usr/share/grafana/api/dashboards/redis.json b/grafana/rootfs/usr/share/grafana/api/dashboards/redis.json index 35b8eff..5db018f 100644 --- a/grafana/rootfs/usr/share/grafana/api/dashboards/redis.json +++ b/grafana/rootfs/usr/share/grafana/api/dashboards/redis.json @@ -100,7 +100,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-redis\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_field\"] == \"cpu_usage_nanocores\")\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-redis\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> movingAverage(n: 10)\n |> map(fn: (r) => ({\n r with\n _value: r._value / 1000000.0\n })\n )\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } @@ -209,7 +209,7 @@ "measurement": "kubernetes_pod_container", "orderByTime": "ASC", "policy": "default", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-redis\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", + "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"namespace\"] == \"drycc\")\n |> filter(fn: (r) => r[\"container_name\"] == \"drycc-redis\")\n |> filter(fn: (r) => r[\"_field\"] == \"memory_usage_bytes\")\n |> keep(columns: [\"_time\", \"node_name\", \"namespace\", \"pod_name\", \"container_name\", \"_value\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")", "refId": "A", "resultFormat": "time_series" } diff --git a/grafana/rootfs/usr/share/grafana/api/dashboards/tikv.json b/grafana/rootfs/usr/share/grafana/api/dashboards/tikv.json index c0159d9..49ea36f 100644 --- a/grafana/rootfs/usr/share/grafana/api/dashboards/tikv.json +++ b/grafana/rootfs/usr/share/grafana/api/dashboards/tikv.json @@ -25,7 +25,7 @@ "editable": true, "fiscalYearStartMonth": 0, "graphTooltip": 0, - "id": 6, + "id": null, "links": [], "liveNow": false, "panels": [ @@ -881,7 +881,7 @@ "gridPos": { "h": 7, "w": 12, - "x": 0, + "x": 12, "y": 15 }, "id": 2781, @@ -947,132 +947,6 @@ ], "title": "Memory", "type": "timeseries" - }, - { - "datasource": null, - "description": "", - "fieldConfig": { - "defaults": { - "color": { - "mode": "palette-classic" - }, - "custom": { - "axisCenteredZero": false, - "axisColorMode": "text", - "axisLabel": "", - "axisPlacement": "auto", - "barAlignment": 0, - "drawStyle": "line", - "fillOpacity": 0, - "gradientMode": "none", - "hideFrom": { - "legend": false, - "tooltip": false, - "viz": false - }, - "lineInterpolation": "linear", - "lineWidth": 1, - "pointSize": 5, - "scaleDistribution": { - "type": "linear" - }, - "showPoints": "auto", - "spanNulls": false, - "stacking": { - "group": "A", - "mode": "none" - }, - "thresholdsStyle": { - "mode": "off" - } - }, - "mappings": [], - "thresholds": { - "mode": "absolute", - "steps": [ - { - "color": "green", - "value": null - }, - { - "color": "red", - "value": 80 - } - ] - }, - "unit": "milli-cores" - }, - "overrides": [] - }, - "gridPos": { - "h": 7, - "w": 12, - "x": 12, - "y": 15 - }, - "id": 2788, - "links": [], - "options": { - "legend": { - "calcs": [], - "displayMode": "list", - "placement": "right", - "showLegend": true - }, - "tooltip": { - "mode": "multi", - "sort": "none" - } - }, - "pluginVersion": "9.1.1", - "targets": [ - { - "datasource": null, - "editorMode": "code", - "format": "time_series", - "intervalFactor": 2, - "legendFormat": "scheduler-{{instance}}", - "metric": "", - "query": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_measurement\"] == \"process_cpu_seconds_total\")\n |> filter(fn: (r) => r[\"url\"] =~ /tikv/)\n |> toInt()\n |> map(fn: (r) => ({ r with _value: r._value / 1000 }))\n |> keep(columns: [\"_time\", \"_value\", \"url\"])\n |> aggregateWindow(every: v.windowPeriod, fn: mean, createEmpty: false)\n |> yield(name: \"mean\")\n ", - "range": true, - "refId": "A", - "step": 4 - }, - { - "datasource": null, - "editorMode": "code", - "format": "time_series", - "intervalFactor": 2, - "legendFormat": "channelfull-{{instance}}-{{type}}", - "metric": "", - "query": "", - "range": true, - "refId": "B", - "step": 4 - }, - { - "datasource": null, - "editorMode": "code", - "format": "time_series", - "intervalFactor": 2, - "legendFormat": "coprocessor-{{instance}}", - "metric": "", - "range": true, - "refId": "C", - "step": 4 - }, - { - "datasource": null, - "editorMode": "code", - "format": "time_series", - "intervalFactor": 2, - "legendFormat": "stall-{{instance}}", - "range": true, - "refId": "D" - } - ], - "title": "CPU", - "type": "timeseries" } ], "schemaVersion": 37, @@ -1082,11 +956,6 @@ "list": [ { "allValue": "", - "current": { - "selected": false, - "text": "http://drycc-storage-meta-tikv-0.drycc-storage-meta-tikv.drycc.svc.cluster.local:20180/metrics", - "value": "http://drycc-storage-meta-tikv-0.drycc-storage-meta-tikv.drycc.svc.cluster.local:20180/metrics" - }, "datasource": null, "definition": "from(bucket: v.bucket)\n |> range(start: v.timeRangeStart, stop: v.timeRangeStop)\n |> filter(fn: (r) => r[\"_measurement\"] == \"tikv_engine_size_bytes\")\n |> filter(fn: (r) => r[\"_field\"] == \"gauge\")\n |> keyValues(keyColumns: [\"_value\"])\n |> duplicate(column: \"url\", as: \"_value\")\n |> group() \n |> keep(columns: [\"_value\"])\n ", "hide": 0, diff --git a/grafana/rootfs/usr/share/grafana/start-grafana b/grafana/rootfs/usr/share/grafana/start-grafana index 4987128..c23415c 100755 --- a/grafana/rootfs/usr/share/grafana/start-grafana +++ b/grafana/rootfs/usr/share/grafana/start-grafana @@ -4,6 +4,7 @@ HEADER_CONTENT_TYPE="Content-Type: application/json" HEADER_ACCEPT="Accept: application/json" +NAMESPACE=${NAMESPACE:-drycc} GRAFANA_USER=${DEFAULT_USER:-admin} GRAFANA_PASSWD=${DEFAULT_USER_PASSWORD:-admin} GRAFANA_PORT=${BIND_PORT:-3000} @@ -102,6 +103,52 @@ curl -i -XPOST -H "${HEADER_ACCEPT}" -H "${HEADER_CONTENT_TYPE}" "http://${GRAFA echo "" echo "Importing default dashboards..." +# replace namespace +# shellcheck disable=SC1003 +# shellcheck disable=SC2046 +sed -i 's@r\[\\"namespace\\\"\] == \\"drycc\\"@r\[\\"namespace\\"\] == \\"\'"${NAMESPACE}"'\\"@g' $(grep -F 'r[\"namespace\"] == \"drycc\"' -rl --include="*.json" "${DASHBOARD_LOCATION}") +# drycc component dashboard +DCD="${DASHBOARD_LOCATION}"/drycc_component_health.json + +# remove off-cluster component panel +if [ "on-cluster" != "${INFLUXDB_LOCATION}" ]; then + rm -rf "${DASHBOARD_LOCATION}"/influx.json + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "INFLUXDB"))')" > "${DCD}" +fi +if [ "on-cluster" != "${REDIS_LOCATION}" ]; then + rm -rf "${DASHBOARD_LOCATION}"/redis.json + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "REDIS"))')" > "${DCD}" +fi +if [ "on-cluster" != "${RABBITMQ_LOCATION}" ]; then + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "RABBITMQ"))')" > "${DCD}" +fi +if [ "on-cluster" != "${DATABASE_LOCATION}" ]; then + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "DATABASE"))')" > "${DCD}" +fi +if [ "on-cluster" != "${PASSPORT_LOCATION}" ]; then + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "PASSPORT"))')" > "${DCD}" +fi +if [ "on-cluster" != "${REGISTRY_LOCATION}" ]; then + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "REGISTRY"))')" > "${DCD}" + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "REGISTRY-PROXY"))')" > "${DCD}" +fi +if [ "on-cluster" != "${STORAGE_LOCATION}" ]; then + rm -rf "${DASHBOARD_LOCATION}"/pd.json "${DASHBOARD_LOCATION}"/tikv.json + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "STORAGE-MINIO"))')" > "${DCD}" + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "STORAGE-META-PD"))')" > "${DCD}" + # shellcheck disable=SC2005 + echo "$(<"${DCD}" jq 'del(.dashboard.panels[] | select(.title == "STORAGE-META-TIKV"))')" > "${DCD}" +fi + for filename in "${DASHBOARD_LOCATION}"/*.json; do echo "Importing ${filename} ..." curl -i -XPOST --data "@${filename}" -H "${HEADER_ACCEPT}" -H "${HEADER_CONTENT_TYPE}" "http://${GRAFANA_USER}:${GRAFANA_PASSWD}@localhost:${GRAFANA_PORT}/api/dashboards/db"