From 80233124601eb0765eeaef5b104824e9ad226610 Mon Sep 17 00:00:00 2001 From: ldpliu Date: Wed, 7 Jun 2023 14:17:06 +0800 Subject: [PATCH] fix policy compliancy overview Signed-off-by: ldpliu --- ...bal-cluster-group-compliancy-overview.yaml | 12 +++---- .../acm-global-offending-clusters.yaml | 28 ++++++--------- .../acm-global-offending-policies.yaml | 36 +++++++------------ ...obal-policy-group-compliancy-overview.yaml | 16 ++++----- .../grafana/acm-global-whats-changed.yaml | 6 ++-- 5 files changed, 39 insertions(+), 59 deletions(-) diff --git a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-cluster-group-compliancy-overview.yaml b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-cluster-group-compliancy-overview.yaml index 78b2ede92f..4caef4f92c 100644 --- a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-cluster-group-compliancy-overview.yaml +++ b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-cluster-group-compliancy-overview.yaml @@ -24,7 +24,7 @@ data: "editable": true, "gnetId": null, "graphTooltip": 0, - "iteration": 1685724016420, + "iteration": 1686202244314, "links": [ { "asDropdown": false, @@ -126,7 +126,7 @@ data: "group": [], "metricColumn": "none", "rawQuery": true, - "rawSql": "WITH data as (\n WITH all_managed_clusters as(\n SELECT * FROM status.managed_clusters\n UNION \n SELECT * FROM history.managed_clusters\n )\n SELECT\n ch.compliance_date as \"time\",\n payload -> 'metadata' -> 'labels' ->> '$label' AS \"$label\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'unknown' THEN 1 END) AS \"unknown\"\n FROM\n all_managed_clusters mc\n JOIN\n history.local_compliance ch ON mc.cluster_id = ch.cluster_id\n WHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IN ($value)\n GROUP BY (ch.compliance_date, mc.payload -> 'metadata' -> 'labels' ->> '$label')\n ORDER BY (ch.compliance_date)\n)\nSELECT\n time,\n $label as \"metric\",\n compliant::float / NULLIF((compliant::float + non_compliant + unknown), 0) as \"value\"\nFROM\n data\nORDER BY (time)", + "rawSql": "WITH data as (\n WITH all_managed_clusters as(\n SELECT * FROM status.managed_clusters\n UNION \n SELECT * FROM history.managed_clusters\n )\n SELECT\n ch.compliance_date as \"time\",\n payload -> 'metadata' -> 'labels' ->> '$label' AS \"$label\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'unknown' THEN 1 END) AS \"unknown\"\n FROM\n all_managed_clusters mc\n JOIN\n history.local_compliance ch ON mc.cluster_id = ch.cluster_id\n WHERE\n $__timeFilter(ch.compliance_date)\n AND\n payload -> 'metadata' -> 'labels' ->> '$label' IN ($value)\n GROUP BY (ch.compliance_date, mc.payload -> 'metadata' -> 'labels' ->> '$label')\n ORDER BY (ch.compliance_date)\n)\nSELECT\n time,\n $label as \"metric\",\n compliant::float / NULLIF((compliant::float + non_compliant + unknown), 0) as \"value\"\nFROM\n data\nORDER BY (time)", "refId": "A", "select": [ [ @@ -187,7 +187,7 @@ data: "value": "vendor" }, "datasource": "${datasource}", - "definition": "SELECT\n DISTINCT jsonb_object_keys(payload -> 'metadata' -> 'labels')\nFROM\n status.managed_clusters", + "definition": "SELECT\n DISTINCT jsonb_object_keys(payload -> 'metadata' -> 'labels')\nFROM\n status.managed_clusters mc \nJOIN\n history.local_compliance ch \nON\n mc.cluster_id = ch.cluster_id", "description": "Managed cluster labels", "error": null, "hide": 0, @@ -196,7 +196,7 @@ data: "multi": false, "name": "label", "options": [], - "query": "SELECT\n DISTINCT jsonb_object_keys(payload -> 'metadata' -> 'labels')\nFROM\n status.managed_clusters", + "query": "SELECT\n DISTINCT jsonb_object_keys(payload -> 'metadata' -> 'labels')\nFROM\n status.managed_clusters mc \nJOIN\n history.local_compliance ch \nON\n mc.cluster_id = ch.cluster_id", "refresh": 1, "regex": "/^[a-z]+$/", "skipUrlSync": false, @@ -215,7 +215,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n payload -> 'metadata' -> 'labels' ->> '$label'\nFROM\n status.managed_clusters\nWHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IS NOT NULL", + "definition": "SELECT\n payload -> 'metadata' -> 'labels' ->> '$label'\nFROM\n status.managed_clusters mc\nJOIN\n history.local_compliance ch \nON\n mc.cluster_id = ch.cluster_id\nWHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IS NOT NULL", "description": "Managed clusters label values", "error": null, "hide": 0, @@ -224,7 +224,7 @@ data: "multi": true, "name": "value", "options": [], - "query": "SELECT\n payload -> 'metadata' -> 'labels' ->> '$label'\nFROM\n status.managed_clusters\nWHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IS NOT NULL", + "query": "SELECT\n payload -> 'metadata' -> 'labels' ->> '$label'\nFROM\n status.managed_clusters mc\nJOIN\n history.local_compliance ch \nON\n mc.cluster_id = ch.cluster_id\nWHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IS NOT NULL", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-offending-clusters.yaml b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-offending-clusters.yaml index 320ce2b44b..8730e9faa5 100644 --- a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-offending-clusters.yaml +++ b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-offending-clusters.yaml @@ -24,7 +24,7 @@ data: "editable": true, "gnetId": null, "graphTooltip": 0, - "iteration": 1685728160463, + "iteration": 1686213056442, "links": [ { "asDropdown": false, @@ -400,17 +400,9 @@ data: "thresholds": { "mode": "absolute", "steps": [ - { - "color": "dark-yellow", - "value": null - }, - { - "color": "green", - "value": 0 - }, { "color": "red", - "value": 0.01 + "value": null } ] }, @@ -467,7 +459,7 @@ data: "group": [], "metricColumn": "none", "rawQuery": true, - "rawSql": "WITH data AS (\n WITH all_managed_clusters as(\n SELECT * FROM status.managed_clusters\n UNION \n SELECT * FROM history.managed_clusters\n )\n SELECT\n $__timeGroupAlias(ch.compliance_date, $__interval),\n mc.cluster_name as \"cluster\",\n mc.leaf_hub_name as \"hub\",\n mc.payload -> 'metadata' -> 'labels' ->> '$label' AS \"$label\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\"\n FROM\n all_managed_clusters mc\n JOIN\n history.local_compliance ch ON mc.cluster_id = ch.cluster_id\n WHERE\n $__timeFilter(ch.compliance_date)\n AND\n mc.payload -> 'metadata' -> 'labels' ->> '$label' IN ($value) \n GROUP BY (ch.compliance_date, mc.cluster_name, mc.leaf_hub_name, mc.payload)\n ORDER BY (ch.compliance_date) DESC\n),\nres AS (\n SELECT\n time,\n cluster,\n hub,\n $label,\n non_compliant::float / NULLIF((compliant::float + non_compliant), 0) as \"value\" \n FROM\n data\n)\nSELECT\n *\nFROM\n res\nWHERE\n value > 0\nORDER BY (time, \"value\") DESC", + "rawSql": "WITH data AS (\n WITH all_managed_clusters as(\n SELECT * FROM status.managed_clusters\n UNION \n SELECT * FROM history.managed_clusters\n )\n SELECT\n $__timeGroupAlias(ch.compliance_date, $__interval),\n mc.cluster_name as \"cluster\",\n mc.leaf_hub_name as \"hub\",\n mc.payload -> 'metadata' -> 'labels' ->> '$label' AS \"$label\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'unknown' THEN 1 END) AS \"unknown\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\"\n FROM\n all_managed_clusters mc\n JOIN\n history.local_compliance ch ON mc.cluster_id = ch.cluster_id\n WHERE\n $__timeFilter(ch.compliance_date)\n AND\n mc.payload -> 'metadata' -> 'labels' ->> '$label' IN ($value)\n GROUP BY (ch.compliance_date, mc.cluster_name, mc.leaf_hub_name, mc.payload)\n ORDER BY (ch.compliance_date) DESC\n),\nres AS (\n SELECT\n time,\n cluster,\n hub,\n $label,\n non_compliant::float / NULLIF((compliant::float + unknown + non_compliant), 0) as \"value\" \n FROM\n data\n WHERE\n non_compliant > 0\n)\nSELECT\n *\nFROM\n res\nORDER BY (time, value) DESC", "refId": "A", "select": [ [ @@ -539,7 +531,7 @@ data: "mode": "absolute", "steps": [ { - "color": "dark-yellow", + "color": "yellow", "value": null } ] @@ -582,7 +574,7 @@ data: "options": { "match": "null+nan", "result": { - "color": "dark-yellow", + "color": "yellow", "index": 0, "text": "Unknown" } @@ -613,7 +605,7 @@ data: "group": [], "metricColumn": "none", "rawQuery": true, - "rawSql": "WITH data AS (\n WITH all_managed_clusters as(\n SELECT * FROM status.managed_clusters\n UNION \n SELECT * FROM history.managed_clusters\n )\n SELECT\n $__timeGroupAlias(ch.compliance_date, $__interval),\n mc.cluster_name as \"cluster\",\n mc.leaf_hub_name as \"hub\",\n mc.payload -> 'metadata' -> 'labels' ->> '$label' AS \"$label\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\"\n FROM\n all_managed_clusters mc\n JOIN\n history.local_compliance ch ON mc.cluster_id = ch.cluster_id\n WHERE\n $__timeFilter(ch.compliance_date)\n AND\n mc.payload -> 'metadata' -> 'labels' ->> '$label' IN ($value) \n GROUP BY (ch.compliance_date, mc.cluster_name, mc.leaf_hub_name, mc.payload)\n ORDER BY (ch.compliance_date) DESC\n),\nres AS (\n SELECT\n time,\n cluster,\n hub,\n $label,\n non_compliant::float / NULLIF((compliant::float + non_compliant), 0) as \"value\" \n FROM\n data\n)\nSELECT\n *\nFROM\n res\nWHERE\n value IS NULL\nORDER BY (\"value\") DESC", + "rawSql": "WITH data AS (\n WITH all_managed_clusters as(\n SELECT * FROM status.managed_clusters\n UNION \n SELECT * FROM history.managed_clusters\n )\n SELECT\n $__timeGroupAlias(ch.compliance_date, $__interval),\n mc.cluster_name as \"cluster\",\n mc.leaf_hub_name as \"hub\",\n mc.payload -> 'metadata' -> 'labels' ->> '$label' AS \"$label\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'unknown' THEN 1 END) AS \"unknown\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\"\n FROM\n all_managed_clusters mc\n JOIN\n history.local_compliance ch ON mc.cluster_id = ch.cluster_id\n WHERE\n $__timeFilter(ch.compliance_date)\n AND\n mc.payload -> 'metadata' -> 'labels' ->> '$label' IN ($value) \n GROUP BY (ch.compliance_date, mc.cluster_name, mc.leaf_hub_name, mc.payload)\n ORDER BY (ch.compliance_date) DESC\n),\nres AS (\n SELECT\n time,\n cluster,\n hub,\n $label,\n unknown::float / NULLIF((compliant::float + unknown + non_compliant), 0) as \"value\" \n FROM\n data\n WHERE\n non_compliant = 0\n AND\n unknown > 0\n)\nSELECT\n *\nFROM\n res\nORDER BY (value) DESC", "refId": "A", "select": [ [ @@ -695,7 +687,7 @@ data: "value": "vendor" }, "datasource": "${datasource}", - "definition": "SELECT\n DISTINCT jsonb_object_keys(payload -> 'metadata' -> 'labels')\nFROM\n status.managed_clusters", + "definition": "SELECT\n DISTINCT jsonb_object_keys(payload -> 'metadata' -> 'labels')\nFROM\n status.managed_clusters mc\nJOIN\n history.local_compliance ch \nON\n mc.cluster_id = ch.cluster_id", "description": "Managed cluster labels", "error": null, "hide": 0, @@ -704,7 +696,7 @@ data: "multi": false, "name": "label", "options": [], - "query": "SELECT\n DISTINCT jsonb_object_keys(payload -> 'metadata' -> 'labels')\nFROM\n status.managed_clusters", + "query": "SELECT\n DISTINCT jsonb_object_keys(payload -> 'metadata' -> 'labels')\nFROM\n status.managed_clusters mc\nJOIN\n history.local_compliance ch \nON\n mc.cluster_id = ch.cluster_id", "refresh": 1, "regex": "/^[a-z]+$/", "skipUrlSync": false, @@ -723,7 +715,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n payload -> 'metadata' -> 'labels' ->> '$label'\nFROM\n status.managed_clusters\nWHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IS NOT NULL", + "definition": "SELECT\n payload -> 'metadata' -> 'labels' ->> '$label'\nFROM\n status.managed_clusters mc \nJOIN\n history.local_compliance ch \nON\n mc.cluster_id = ch.cluster_id\nWHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IS NOT NULL", "description": "Managed cluster label values", "error": null, "hide": 0, @@ -732,7 +724,7 @@ data: "multi": true, "name": "value", "options": [], - "query": "SELECT\n payload -> 'metadata' -> 'labels' ->> '$label'\nFROM\n status.managed_clusters\nWHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IS NOT NULL", + "query": "SELECT\n payload -> 'metadata' -> 'labels' ->> '$label'\nFROM\n status.managed_clusters mc \nJOIN\n history.local_compliance ch \nON\n mc.cluster_id = ch.cluster_id\nWHERE\n payload -> 'metadata' -> 'labels' ->> '$label' IS NOT NULL", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-offending-policies.yaml b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-offending-policies.yaml index 812a4861f1..afc0cceecc 100644 --- a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-offending-policies.yaml +++ b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-offending-policies.yaml @@ -24,7 +24,7 @@ data: "editable": true, "gnetId": null, "graphTooltip": 0, - "iteration": 1685728831686, + "iteration": 1686215172874, "links": [ { "asDropdown": false, @@ -403,13 +403,9 @@ data: "thresholds": { "mode": "absolute", "steps": [ - { - "color": "green", - "value": null - }, { "color": "red", - "value": 0.01 + "value": null } ] }, @@ -478,7 +474,7 @@ data: "group": [], "metricColumn": "none", "rawQuery": true, - "rawSql": "WITH data AS (\n SELECT\n ch.compliance_date as \"time\",\n p.policy_name as \"name\",\n p.leaf_hub_name as \"hub\",\n p.policy_standard as \"standard\",\n p.policy_category as \"category\",\n p.policy_control as \"control\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\"\n FROM\n local_spec.policies p\n JOIN\n history.local_compliance ch ON p.policy_id = ch.policy_id\n WHERE\n p.policy_standard IN ($standard) AND p.policy_category IN ($category) AND p.policy_control IN ($control)\n GROUP BY (ch.compliance_date, p.policy_name, p.policy_standard, p.policy_category, p.policy_control, p.leaf_hub_name)\n)\nSELECT\n $__timeGroupAlias(time, $__interval),\n name,\n hub,\n standard,\n category,\n control,\n non_compliant::float / NULLIF((compliant::float + non_compliant), 0) as \"value\"\nFROM\n data\nWHERE\n $__timeFilter(time)\nAND\n non_compliant::float / NULLIF((compliant::float + non_compliant), 0) > 0\nORDER BY (time, non_compliant) DESC", + "rawSql": "WITH data AS (\n WITH all_policies as(\n SELECT policy_name,policy_id,leaf_hub_name,policy_standard,policy_category,policy_control FROM local_spec.policies\n UNION \n SELECT policy_name,policy_id,leaf_hub_name,policy_standard,policy_category,policy_control FROM history.local_policies\n )\n SELECT\n ch.compliance_date as \"time\",\n p.policy_name as \"name\",\n p.leaf_hub_name as \"hub\",\n p.policy_standard as \"standard\",\n p.policy_category as \"category\",\n p.policy_control as \"control\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'unknown' THEN 1 END) AS \"unknown\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\"\n FROM\n all_policies p\n JOIN\n history.local_compliance ch ON p.policy_id = ch.policy_id\n WHERE\n $__timeFilter(ch.compliance_date)\n AND\n p.policy_standard IN ($standard) AND p.policy_category IN ($category) AND p.policy_control IN ($control)\n GROUP BY (ch.compliance_date, p.policy_name, p.policy_standard, p.policy_category, p.policy_control, p.leaf_hub_name)\n),\nres as (\n SELECT\n $__timeGroupAlias(time, $__interval),\n name,\n hub,\n standard,\n category,\n control,\n non_compliant::float / NULLIF((compliant::float + unknown + non_compliant), 0) as \"value\"\n FROM\n data\n WHERE\n non_compliant > 0\n)\nSELECT\n *\nFROM\n res\nORDER BY (time, value) DESC\n", "refId": "A", "select": [ [ @@ -553,16 +549,8 @@ data: "mode": "absolute", "steps": [ { - "color": "dark-yellow", + "color": "yellow", "value": null - }, - { - "color": "green", - "value": 0 - }, - { - "color": "red", - "value": 0.01 } ] }, @@ -604,7 +592,7 @@ data: "options": { "match": "null+nan", "result": { - "color": "dark-yellow", + "color": "yellow", "index": 0, "text": "Unknown" } @@ -634,7 +622,7 @@ data: "group": [], "metricColumn": "none", "rawQuery": true, - "rawSql": "WITH data AS (\n SELECT\n ch.compliance_date as \"time\",\n p.policy_name as \"name\",\n p.leaf_hub_name as \"hub\",\n p.policy_standard as \"standard\",\n p.policy_category as \"category\",\n p.policy_control as \"control\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\"\n FROM\n local_spec.policies p\n JOIN\n history.local_compliance ch ON p.policy_id = ch.policy_id\n WHERE\n p.policy_standard IN ($standard) AND p.policy_category IN ($category) AND p.policy_control IN ($control)\n GROUP BY (ch.compliance_date, p.policy_name, p.policy_standard, p.policy_category, p.policy_control, p.leaf_hub_name)\n)\nSELECT\n $__timeGroupAlias(time, $__interval),\n name,\n hub,\n standard,\n category,\n control,\n non_compliant::float / NULLIF((compliant::float + non_compliant), 0) as \"value\"\nFROM\n data\nWHERE\n $__timeFilter(time)\nAND\n non_compliant::float / NULLIF((compliant::float + non_compliant), 0) IS NULL\nORDER BY (time, non_compliant) DESC", + "rawSql": "WITH data AS (\n WITH all_policies as(\n SELECT policy_name,policy_id,leaf_hub_name,policy_standard,policy_category,policy_control FROM local_spec.policies\n UNION \n SELECT policy_name,policy_id,leaf_hub_name,policy_standard,policy_category,policy_control FROM history.local_policies\n )\n SELECT\n ch.compliance_date as \"time\",\n p.policy_name as \"name\",\n p.leaf_hub_name as \"hub\",\n p.policy_standard as \"standard\",\n p.policy_category as \"category\",\n p.policy_control as \"control\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'unknown' THEN 1 END) AS \"unknown\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\"\n FROM\n all_policies p\n JOIN\n history.local_compliance ch ON p.policy_id = ch.policy_id\n WHERE\n $__timeFilter(ch.compliance_date)\n AND\n p.policy_standard IN ($standard) AND p.policy_category IN ($category) AND p.policy_control IN ($control)\n GROUP BY (ch.compliance_date, p.policy_name, p.policy_standard, p.policy_category, p.policy_control, p.leaf_hub_name)\n),\nres as (\n SELECT\n $__timeGroupAlias(time, $__interval),\n name,\n hub,\n standard,\n category,\n control,\n unknown::float / NULLIF((compliant::float + unknown + non_compliant), 0) as \"value\"\n FROM\n data\n WHERE\n non_compliant = 0 \n AND\n unknown > 0\n)\nSELECT\n *\nFROM\n res\nORDER BY (time, value) DESC\n", "refId": "A", "select": [ [ @@ -722,7 +710,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n policy_standard\nFROM\n local_spec.policies", + "definition": "SELECT\n policy_standard\nFROM\n local_spec.policies\nWHERE\npolicy_standard IS NOT NULL", "description": "Managed cluster policy standards", "error": null, "hide": 0, @@ -731,7 +719,7 @@ data: "multi": true, "name": "standard", "options": [], - "query": "SELECT\n policy_standard\nFROM\n local_spec.policies", + "query": "SELECT\n policy_standard\nFROM\n local_spec.policies\nWHERE\npolicy_standard IS NOT NULL", "refresh": 1, "regex": "", "skipUrlSync": false, @@ -750,7 +738,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n policy_category\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)", + "definition": "SELECT\n policy_category\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard) \nAND\n policy_category IS NOT NULL", "description": "Managed cluster policy categories", "error": null, "hide": 0, @@ -759,7 +747,7 @@ data: "multi": true, "name": "category", "options": [], - "query": "SELECT\n policy_category\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)", + "query": "SELECT\n policy_category\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard) \nAND\n policy_category IS NOT NULL", "refresh": 1, "regex": "", "skipUrlSync": false, @@ -778,7 +766,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n policy_control\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\n policy_category IN ($category)", + "definition": "SELECT\n policy_control\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\n policy_category IN ($category)\nAND\n policy_control IS NOT NULL", "description": "Managed cluster labels policy controls", "error": null, "hide": 0, @@ -787,7 +775,7 @@ data: "multi": true, "name": "control", "options": [], - "query": "SELECT\n policy_control\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\n policy_category IN ($category)", + "query": "SELECT\n policy_control\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\n policy_category IN ($category)\nAND\n policy_control IS NOT NULL", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-policy-group-compliancy-overview.yaml b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-policy-group-compliancy-overview.yaml index cf6fbd0117..a164b7dfdb 100644 --- a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-policy-group-compliancy-overview.yaml +++ b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-policy-group-compliancy-overview.yaml @@ -24,7 +24,7 @@ data: "editable": true, "gnetId": null, "graphTooltip": 0, - "iteration": 1685724017670, + "iteration": 1686214749136, "links": [ { "asDropdown": false, @@ -126,7 +126,7 @@ data: "group": [], "metricColumn": "none", "rawQuery": true, - "rawSql": "WITH data as (\n SELECT\n ch.compliance_date AS \"time\",\n p.policy_standard AS \"standard\",\n p.policy_category AS \"category\",\n p.policy_control AS \"control\",\n COUNT(CASE WHEN ch.compliance = 'compliant' THEN 1 END) AS \"compliant\",\n COUNT(CASE WHEN ch.compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN ch.compliance = 'unknown' THEN 1 END) AS \"unknown\"\n FROM\n local_spec.policies p\n INNER JOIN\n history.local_compliance ch ON p.policy_id = ch.policy_id\n WHERE\n p.policy_standard IN ($standard) AND p.policy_category IN ($category) AND p.policy_control IN ($control)\n GROUP BY (time, p.policy_standard, p.policy_category, p.policy_control)\n ORDER BY (time)\n)\nSELECT\n time,\n $group as \"metric\",\n compliant::float / NULLIF((compliant::float + non_compliant + unknown), 0) as \"value\"\nFROM\n data\nORDER BY\n time", + "rawSql": "WITH data as(\n WITH renamedata as (\n WITH all_policies as(\n SELECT policy_name,policy_id,leaf_hub_name,policy_standard,policy_category,policy_control FROM local_spec.policies\n UNION \n SELECT policy_name,policy_id,leaf_hub_name,policy_standard,policy_category,policy_control FROM history.local_policies\n )\n SELECT\n ch.compliance_date AS \"time\",\n p.policy_standard AS \"standard\",\n p.policy_category AS \"category\",\n p.policy_control AS \"control\",\n ch.compliance\n FROM\n all_policies p\n INNER JOIN\n history.local_compliance ch ON p.policy_id = ch.policy_id\n WHERE\n $__timeFilter(ch.compliance_date)\n AND\n p.policy_standard IN ($standard) AND p.policy_category IN ($category) AND p.policy_control IN ($control)\n )\n SELECT \n time,\n $group,\n COUNT(CASE WHEN compliance = 'compliant' THEN 1 END) AS \"compliant\",\n COUNT(CASE WHEN compliance = 'non_compliant' THEN 1 END) AS \"non_compliant\",\n COUNT(CASE WHEN compliance = 'unknown' THEN 1 END) AS \"unknown\"\n FROM\n renamedata\n GROUP BY (time, $group)\n)\nSELECT\n time,\n $group as \"metric\",\n compliant::float / NULLIF((compliant::float + non_compliant + unknown), 0) as \"value\"\nFROM\n data\nORDER BY\n time", "refId": "A", "select": [ [ @@ -191,7 +191,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n policy_standard\nFROM\n local_spec.policies", + "definition": "SELECT\n policy_standard\nFROM\n local_spec.policies\nWHERE\npolicy_standard IS NOT NULL", "description": "Cluster policy standards", "error": null, "hide": 0, @@ -200,7 +200,7 @@ data: "multi": true, "name": "standard", "options": [], - "query": "SELECT\n policy_standard\nFROM\n local_spec.policies", + "query": "SELECT\n policy_standard\nFROM\n local_spec.policies\nWHERE\npolicy_standard IS NOT NULL", "refresh": 1, "regex": "", "skipUrlSync": false, @@ -219,7 +219,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n policy_category\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)", + "definition": "SELECT\n policy_category\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\npolicy_category IS NOT NULL", "description": "Cluster policy categories", "error": null, "hide": 0, @@ -228,7 +228,7 @@ data: "multi": true, "name": "category", "options": [], - "query": "SELECT\n policy_category\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)", + "query": "SELECT\n policy_category\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\npolicy_category IS NOT NULL", "refresh": 1, "regex": "", "skipUrlSync": false, @@ -247,7 +247,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n policy_control\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\n policy_category IN ($category)", + "definition": "SELECT\n policy_control\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\n policy_category IN ($category)\nAND\npolicy_control IS NOT NULL", "description": "Cluster policy controls", "error": null, "hide": 0, @@ -256,7 +256,7 @@ data: "multi": true, "name": "control", "options": [], - "query": "SELECT\n policy_control\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\n policy_category IN ($category)", + "query": "SELECT\n policy_control\nFROM\n local_spec.policies\nWHERE\n policy_standard IN ($standard)\nAND\n policy_category IN ($category)\nAND\npolicy_control IS NOT NULL", "refresh": 1, "regex": "", "skipUrlSync": false, diff --git a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-whats-changed.yaml b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-whats-changed.yaml index 0ad444d1e0..ede0f4188a 100644 --- a/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-whats-changed.yaml +++ b/operator/pkg/controllers/hubofhubs/manifests/grafana/acm-global-whats-changed.yaml @@ -24,7 +24,7 @@ data: "editable": true, "gnetId": null, "graphTooltip": 0, - "iteration": 1685628888333, + "iteration": 1686203349679, "links": [ { "asDropdown": false, @@ -352,7 +352,7 @@ data: ] }, "datasource": "${datasource}", - "definition": "SELECT\n policy_name\nFROM\n local_spec.policies p\nINNER JOIN\n history.local_compliance ch ON p.policy_id = ch.id\nINNER JOIN\n status.managed_clusters mc ON ch.cluster_id = mc.cluster_id\nWHERE\n cluster_name IN ($cluster)", + "definition": "SELECT\n policy_name\nFROM\n local_spec.policies p\nINNER JOIN\n history.local_compliance ch ON p.policy_id = ch.policy_id\nINNER JOIN\n status.managed_clusters mc ON ch.cluster_id = mc.cluster_id\nWHERE\n cluster_name IN ($cluster)", "description": null, "error": null, "hide": 0, @@ -361,7 +361,7 @@ data: "multi": true, "name": "policy", "options": [], - "query": "SELECT\n policy_name\nFROM\n local_spec.policies p\nINNER JOIN\n history.local_compliance ch ON p.policy_id = ch.id\nINNER JOIN\n status.managed_clusters mc ON ch.cluster_id = mc.cluster_id\nWHERE\n cluster_name IN ($cluster)", + "query": "SELECT\n policy_name\nFROM\n local_spec.policies p\nINNER JOIN\n history.local_compliance ch ON p.policy_id = ch.policy_id\nINNER JOIN\n status.managed_clusters mc ON ch.cluster_id = mc.cluster_id\nWHERE\n cluster_name IN ($cluster)", "refresh": 1, "regex": "", "skipUrlSync": false,