cluster

Infrastructure files for Nordgedanken and Midnightthoughts.
git clone git://archive.git.mtrnord.blog/MTRNord/cluster.git
Log | Files | Refs | README

global-ratelimit.json (17253B)


      1 {
      2     "annotations": {
      3         "list": [
      4             {
      5                 "builtIn": 1,
      6                 "datasource": {
      7                     "type": "grafana",
      8                     "uid": "-- Grafana --"
      9                 },
     10                 "enable": true,
     11                 "hide": true,
     12                 "iconColor": "rgba(0, 211, 255, 1)",
     13                 "name": "Annotations & Alerts",
     14                 "type": "dashboard"
     15             }
     16         ]
     17     },
     18     "description": "Envoy Gateway monitoring Dashboard with exported metrics.",
     19     "editable": true,
     20     "fiscalYearStartMonth": 0,
     21     "graphTooltip": 0,
     22     "id": 37,
     23     "links": [],
     24     "panels": [
     25         {
     26             "collapsed": false,
     27             "gridPos": {
     28                 "h": 1,
     29                 "w": 24,
     30                 "x": 0,
     31                 "y": 0
     32             },
     33             "id": 273,
     34             "panels": [],
     35             "title": "Global Ratelimit",
     36             "type": "row"
     37         },
     38         {
     39             "datasource": {
     40                 "type": "prometheus",
     41                 "uid": "${datasource}"
     42             },
     43             "description": "Resident memory size",
     44             "fieldConfig": {
     45                 "defaults": {
     46                     "color": {
     47                         "mode": "thresholds"
     48                     },
     49                     "mappings": [],
     50                     "thresholds": {
     51                         "mode": "absolute",
     52                         "steps": [
     53                             {
     54                                 "color": "green",
     55                                 "value": null
     56                             }
     57                         ]
     58                     },
     59                     "unit": "decmbytes"
     60                 },
     61                 "overrides": []
     62             },
     63             "gridPos": {
     64                 "h": 7,
     65                 "w": 7,
     66                 "x": 9,
     67                 "y": 1
     68             },
     69             "id": 291,
     70             "options": {
     71                 "minVizHeight": 75,
     72                 "minVizWidth": 75,
     73                 "orientation": "auto",
     74                 "reduceOptions": {
     75                     "calcs": [
     76                         "lastNotNull"
     77                     ],
     78                     "fields": "",
     79                     "values": false
     80                 },
     81                 "showThresholdLabels": false,
     82                 "showThresholdMarkers": false,
     83                 "sizing": "auto"
     84             },
     85             "pluginVersion": "11.3.1",
     86             "targets": [
     87                 {
     88                     "datasource": {
     89                         "type": "prometheus",
     90                         "uid": "${datasource}"
     91                     },
     92                     "disableTextWrap": false,
     93                     "editorMode": "code",
     94                     "exemplar": false,
     95                     "expr": "(process_resident_memory_bytes{app_kubernetes_io_component=\"ratelimit\"})/1000000",
     96                     "fullMetaSearch": false,
     97                     "includeNullMetadata": true,
     98                     "instant": false,
     99                     "legendFormat": "__auto",
    100                     "range": true,
    101                     "refId": "A",
    102                     "useBackend": false
    103                 }
    104             ],
    105             "title": "Resident Memory",
    106             "transparent": true,
    107             "type": "gauge"
    108         },
    109         {
    110             "datasource": {
    111                 "type": "prometheus",
    112                 "uid": "${datasource}"
    113             },
    114             "description": "Virtual memory size",
    115             "fieldConfig": {
    116                 "defaults": {
    117                     "color": {
    118                         "mode": "thresholds"
    119                     },
    120                     "mappings": [],
    121                     "min": 0,
    122                     "thresholds": {
    123                         "mode": "percentage",
    124                         "steps": [
    125                             {
    126                                 "color": "green",
    127                                 "value": null
    128                             }
    129                         ]
    130                     },
    131                     "unit": "decmbytes"
    132                 },
    133                 "overrides": []
    134             },
    135             "gridPos": {
    136                 "h": 7,
    137                 "w": 7,
    138                 "x": 16,
    139                 "y": 1
    140             },
    141             "id": 325,
    142             "options": {
    143                 "minVizHeight": 75,
    144                 "minVizWidth": 75,
    145                 "orientation": "auto",
    146                 "reduceOptions": {
    147                     "calcs": [
    148                         "lastNotNull"
    149                     ],
    150                     "fields": "",
    151                     "values": false
    152                 },
    153                 "showThresholdLabels": false,
    154                 "showThresholdMarkers": false,
    155                 "sizing": "auto"
    156             },
    157             "pluginVersion": "11.3.1",
    158             "targets": [
    159                 {
    160                     "datasource": {
    161                         "type": "prometheus",
    162                         "uid": "${datasource}"
    163                     },
    164                     "disableTextWrap": false,
    165                     "editorMode": "code",
    166                     "exemplar": false,
    167                     "expr": "(process_virtual_memory_bytes{app_kubernetes_io_component=\"ratelimit\"})/1000000",
    168                     "fullMetaSearch": false,
    169                     "includeNullMetadata": true,
    170                     "instant": false,
    171                     "legendFormat": "__auto",
    172                     "range": true,
    173                     "refId": "A",
    174                     "useBackend": false
    175                 }
    176             ],
    177             "title": "Virtual Memory",
    178             "transparent": true,
    179             "type": "gauge"
    180         },
    181         {
    182             "datasource": {
    183                 "type": "prometheus",
    184                 "uid": "${datasource}"
    185             },
    186             "description": "Number of ratelimit rule hits in total",
    187             "fieldConfig": {
    188                 "defaults": {
    189                     "color": {
    190                         "fixedColor": "light-blue",
    191                         "mode": "shades"
    192                     },
    193                     "fieldMinMax": false,
    194                     "mappings": [],
    195                     "noValue": "0",
    196                     "thresholds": {
    197                         "mode": "absolute",
    198                         "steps": [
    199                             {
    200                                 "color": "green",
    201                                 "value": null
    202                             }
    203                         ]
    204                     },
    205                     "unit": "none"
    206                 },
    207                 "overrides": []
    208             },
    209             "gridPos": {
    210                 "h": 7,
    211                 "w": 6,
    212                 "x": 0,
    213                 "y": 8
    214             },
    215             "id": 308,
    216             "options": {
    217                 "colorMode": "value",
    218                 "graphMode": "none",
    219                 "justifyMode": "center",
    220                 "orientation": "auto",
    221                 "percentChangeColorMode": "standard",
    222                 "reduceOptions": {
    223                     "calcs": [
    224                         "lastNotNull"
    225                     ],
    226                     "fields": "",
    227                     "values": false
    228                 },
    229                 "showPercentChange": false,
    230                 "textMode": "value",
    231                 "wideLayout": false
    232             },
    233             "pluginVersion": "11.3.1",
    234             "targets": [
    235                 {
    236                     "datasource": {
    237                         "type": "prometheus",
    238                         "uid": "${datasource}"
    239                     },
    240                     "disableTextWrap": false,
    241                     "editorMode": "builder",
    242                     "exemplar": false,
    243                     "expr": "ratelimit_service_rate_limit_total_hits{domain=\"$DefaultDomain\", key1=\"httproute/default/http-ratelimit/rule/0/match/0/ratelimit_example_httproute/default/http-ratelimit/rule/0/match/0/ratelimit_example\", key2=\"rule-0-match-0_rule-0-match-0\"}",
    244                     "fullMetaSearch": false,
    245                     "includeNullMetadata": true,
    246                     "instant": false,
    247                     "interval": "",
    248                     "legendFormat": "__auto",
    249                     "range": true,
    250                     "refId": "A",
    251                     "useBackend": false
    252                 }
    253             ],
    254             "title": "Total Hits",
    255             "type": "stat"
    256         },
    257         {
    258             "datasource": {
    259                 "type": "prometheus",
    260                 "uid": "${datasource}"
    261             },
    262             "description": "Number of rule hits over the NearLimit ratio threshold (currently 80%) but under the threshold rate.",
    263             "fieldConfig": {
    264                 "defaults": {
    265                     "color": {
    266                         "fixedColor": "light-blue",
    267                         "mode": "shades"
    268                     },
    269                     "fieldMinMax": false,
    270                     "mappings": [],
    271                     "noValue": "0",
    272                     "thresholds": {
    273                         "mode": "absolute",
    274                         "steps": [
    275                             {
    276                                 "color": "green",
    277                                 "value": null
    278                             }
    279                         ]
    280                     },
    281                     "unit": "none"
    282                 },
    283                 "overrides": []
    284             },
    285             "gridPos": {
    286                 "h": 7,
    287                 "w": 6,
    288                 "x": 6,
    289                 "y": 8
    290             },
    291             "id": 326,
    292             "options": {
    293                 "colorMode": "value",
    294                 "graphMode": "none",
    295                 "justifyMode": "center",
    296                 "orientation": "auto",
    297                 "percentChangeColorMode": "standard",
    298                 "reduceOptions": {
    299                     "calcs": [
    300                         "lastNotNull"
    301                     ],
    302                     "fields": "",
    303                     "values": false
    304                 },
    305                 "showPercentChange": false,
    306                 "textMode": "value",
    307                 "wideLayout": false
    308             },
    309             "pluginVersion": "11.3.1",
    310             "targets": [
    311                 {
    312                     "datasource": {
    313                         "type": "prometheus",
    314                         "uid": "${datasource}"
    315                     },
    316                     "disableTextWrap": false,
    317                     "editorMode": "builder",
    318                     "exemplar": false,
    319                     "expr": "ratelimit_service_rate_limit_near_limit{domain=\"$DefaultDomain\", key1=\"httproute/default/http-ratelimit/rule/0/match/0/ratelimit_example_httproute/default/http-ratelimit/rule/0/match/0/ratelimit_example\", key2=\"rule-0-match-0_rule-0-match-0\"}",
    320                     "fullMetaSearch": false,
    321                     "includeNullMetadata": true,
    322                     "instant": false,
    323                     "interval": "",
    324                     "legendFormat": "__auto",
    325                     "range": true,
    326                     "refId": "A",
    327                     "useBackend": false
    328                 }
    329             ],
    330             "title": "Near Limit",
    331             "type": "stat"
    332         },
    333         {
    334             "datasource": {
    335                 "type": "prometheus",
    336                 "uid": "${datasource}"
    337             },
    338             "description": "Number of rule hits exceeding the threshold rate",
    339             "fieldConfig": {
    340                 "defaults": {
    341                     "color": {
    342                         "fixedColor": "light-blue",
    343                         "mode": "shades"
    344                     },
    345                     "fieldMinMax": false,
    346                     "mappings": [],
    347                     "noValue": "0",
    348                     "thresholds": {
    349                         "mode": "absolute",
    350                         "steps": [
    351                             {
    352                                 "color": "green",
    353                                 "value": null
    354                             }
    355                         ]
    356                     },
    357                     "unit": "none"
    358                 },
    359                 "overrides": []
    360             },
    361             "gridPos": {
    362                 "h": 7,
    363                 "w": 6,
    364                 "x": 12,
    365                 "y": 8
    366             },
    367             "id": 327,
    368             "options": {
    369                 "colorMode": "value",
    370                 "graphMode": "none",
    371                 "justifyMode": "center",
    372                 "orientation": "auto",
    373                 "percentChangeColorMode": "standard",
    374                 "reduceOptions": {
    375                     "calcs": [
    376                         "lastNotNull"
    377                     ],
    378                     "fields": "",
    379                     "values": false
    380                 },
    381                 "showPercentChange": false,
    382                 "textMode": "value",
    383                 "wideLayout": false
    384             },
    385             "pluginVersion": "11.3.1",
    386             "targets": [
    387                 {
    388                     "datasource": {
    389                         "type": "prometheus",
    390                         "uid": "${datasource}"
    391                     },
    392                     "disableTextWrap": false,
    393                     "editorMode": "builder",
    394                     "exemplar": false,
    395                     "expr": "ratelimit_service_rate_limit_over_limit{domain=\"$DefaultDomain\", key1=\"httproute/default/http-ratelimit/rule/0/match/0/ratelimit_example_httproute/default/http-ratelimit/rule/0/match/0/ratelimit_example\", key2=\"rule-0-match-0_rule-0-match-0\"}",
    396                     "fullMetaSearch": false,
    397                     "includeNullMetadata": true,
    398                     "instant": false,
    399                     "interval": "",
    400                     "legendFormat": "__auto",
    401                     "range": true,
    402                     "refId": "A",
    403                     "useBackend": false
    404                 }
    405             ],
    406             "title": "Over Limit",
    407             "type": "stat"
    408         }
    409     ],
    410     "preload": false,
    411     "refresh": "",
    412     "schemaVersion": 40,
    413     "tags": [
    414         "Control Plane"
    415     ],
    416     "templating": {
    417         "list": [
    418             {
    419                 "current": {
    420                     "text": "Prometheus",
    421                     "value": "PBFA97CFB590B2093"
    422                 },
    423                 "includeAll": false,
    424                 "name": "datasource",
    425                 "options": [],
    426                 "query": "prometheus",
    427                 "refresh": 1,
    428                 "regex": "",
    429                 "type": "datasource"
    430             },
    431             {
    432                 "allValue": ".*",
    433                 "current": {
    434                     "text": "envoy-gateway-system",
    435                     "value": "envoy-gateway-system"
    436                 },
    437                 "datasource": {
    438                     "type": "prometheus",
    439                     "uid": "$datasource"
    440                 },
    441                 "definition": "label_values(watchable_depth,namespace)",
    442                 "includeAll": false,
    443                 "name": "Namespace",
    444                 "options": [],
    445                 "query": {
    446                     "qryType": 1,
    447                     "query": "label_values(watchable_depth,namespace)",
    448                     "refId": "PrometheusVariableQueryEditor-VariableQuery"
    449                 },
    450                 "refresh": 1,
    451                 "regex": "",
    452                 "type": "query"
    453             },
    454             {
    455                 "allValue": ".*",
    456                 "current": {
    457                     "text": [
    458                         "All"
    459                     ],
    460                     "value": [
    461                         "$__all"
    462                     ]
    463                 },
    464                 "datasource": {
    465                     "type": "prometheus",
    466                     "uid": "$datasource"
    467                 },
    468                 "definition": "label_values(watchable_depth,runner)",
    469                 "includeAll": true,
    470                 "multi": true,
    471                 "name": "Runner",
    472                 "options": [],
    473                 "query": {
    474                     "qryType": 1,
    475                     "query": "label_values(watchable_depth,runner)",
    476                     "refId": "PrometheusVariableQueryEditor-VariableQuery"
    477                 },
    478                 "refresh": 2,
    479                 "regex": "",
    480                 "type": "query"
    481             },
    482             {
    483                 "current": {
    484                     "text": "default/eg/http",
    485                     "value": "default/eg/http"
    486                 },
    487                 "description": "DefaultDomain is set to default/eg/http",
    488                 "includeAll": false,
    489                 "name": "DefaultDomain",
    490                 "options": [
    491                     {
    492                         "selected": true,
    493                         "text": "default/eg/http",
    494                         "value": "default/eg/http"
    495                     }
    496                 ],
    497                 "query": "default/eg/http",
    498                 "type": "custom"
    499             }
    500         ]
    501     },
    502     "time": {
    503         "from": "now-6h",
    504         "to": "now"
    505     },
    506     "timepicker": {},
    507     "timezone": "browser",
    508     "title": "Global Ratelimit",
    509     "uid": "R2xvYmFsIFJhdGVsaW1pdAo",
    510     "version": 1,
    511     "weekStart": ""
    512 }