github.com/munnerz/test-infra@v0.0.0-20190108210205-ce3d181dc989/velodrome/grafana-stack/dashboards/bigquery-metrics.json (about)

     1  {
     2    "__inputs": [
     3      {
     4        "name": "DS_METRICS-BIGQUERY",
     5        "label": "metrics-bigquery",
     6        "description": "",
     7        "type": "datasource",
     8        "pluginId": "influxdb",
     9        "pluginName": "InfluxDB"
    10      }
    11    ],
    12    "__requires": [
    13      {
    14        "type": "grafana",
    15        "id": "grafana",
    16        "name": "Grafana",
    17        "version": "4.4.2"
    18      },
    19      {
    20        "type": "panel",
    21        "id": "graph",
    22        "name": "Graph",
    23        "version": ""
    24      },
    25      {
    26        "type": "datasource",
    27        "id": "influxdb",
    28        "name": "InfluxDB",
    29        "version": "1.0.0"
    30      },
    31      {
    32        "type": "panel",
    33        "id": "table",
    34        "name": "Table",
    35        "version": ""
    36      }
    37    ],
    38    "annotations": {
    39      "list": []
    40    },
    41    "editable": true,
    42    "gnetId": null,
    43    "graphTooltip": 0,
    44    "hideControls": false,
    45    "id": null,
    46    "links": [],
    47    "refresh": false,
    48    "rows": [
    49      {
    50        "collapse": false,
    51        "height": 269,
    52        "panels": [
    53          {
    54            "aliasColors": {},
    55            "bars": false,
    56            "dashLength": 10,
    57            "dashes": false,
    58            "datasource": "${DS_METRICS-BIGQUERY}",
    59            "decimals": 1,
    60            "description": "Commit flakiness is the percentage of commits that encountered a flake from a blocking job.\nRun flakiness is the percentage of PR job runs that failed where the job also passed on the same commit.",
    61            "fill": 1,
    62            "grid": {},
    63            "height": "300",
    64            "id": 4,
    65            "legend": {
    66              "avg": false,
    67              "current": true,
    68              "max": false,
    69              "min": false,
    70              "show": true,
    71              "total": false,
    72              "values": true
    73            },
    74            "lines": true,
    75            "linewidth": 1,
    76            "links": [],
    77            "nullPointMode": "null",
    78            "percentage": false,
    79            "pointradius": 5,
    80            "points": false,
    81            "renderer": "flot",
    82            "seriesOverrides": [],
    83            "spaceLength": 10,
    84            "span": 6,
    85            "stack": false,
    86            "steppedLine": false,
    87            "targets": [
    88              {
    89                "alias": "$col",
    90                "dsType": "influxdb",
    91                "groupBy": [
    92                  {
    93                    "params": [
    94                      "7d"
    95                    ],
    96                    "type": "time"
    97                  },
    98                  {
    99                    "params": [
   100                      "week"
   101                    ],
   102                    "type": "tag"
   103                  }
   104                ],
   105                "hide": false,
   106                "measurement": "weekly_consistency",
   107                "orderByTime": "ASC",
   108                "policy": "default",
   109                "query": "SELECT 1-(sum(\"consistent_commits\")/sum(\"commits\")) as \"Commit\", 1-(sum(\"consistent_runs\")/sum(\"runs\")) as \"Run of a single blocking job\" FROM \"pr_consistency\" WHERE $timeFilter group by time($__interval) fill(previous)",
   110                "rawQuery": true,
   111                "refId": "A",
   112                "resultFormat": "time_series",
   113                "select": [
   114                  [
   115                    {
   116                      "params": [
   117                        "consistency"
   118                      ],
   119                      "type": "field"
   120                    },
   121                    {
   122                      "params": [],
   123                      "type": "last"
   124                    },
   125                    {
   126                      "params": [
   127                        "Mean Commit Consistency"
   128                      ],
   129                      "type": "alias"
   130                    }
   131                  ]
   132                ],
   133                "tags": []
   134              }
   135            ],
   136            "thresholds": [],
   137            "timeFrom": null,
   138            "timeShift": null,
   139            "title": "PR Flakiness",
   140            "tooltip": {
   141              "msResolution": false,
   142              "shared": true,
   143              "sort": 0,
   144              "value_type": "individual"
   145            },
   146            "type": "graph",
   147            "xaxis": {
   148              "buckets": null,
   149              "mode": "time",
   150              "name": null,
   151              "show": true,
   152              "values": []
   153            },
   154            "yaxes": [
   155              {
   156                "format": "percentunit",
   157                "label": "Flake Chance",
   158                "logBase": 1,
   159                "max": "0.4",
   160                "min": "0",
   161                "show": true
   162              },
   163              {
   164                "format": "short",
   165                "label": null,
   166                "logBase": 1,
   167                "max": null,
   168                "min": null,
   169                "show": false
   170              }
   171            ]
   172          },
   173          {
   174            "columns": [],
   175            "datasource": "${DS_METRICS-BIGQUERY}",
   176            "fontSize": "100%",
   177            "height": "300",
   178            "id": 6,
   179            "interval": "",
   180            "links": [],
   181            "pageSize": null,
   182            "scroll": true,
   183            "showHeader": true,
   184            "sort": {
   185              "col": 2,
   186              "desc": true
   187            },
   188            "span": 6,
   189            "styles": [
   190              {
   191                "alias": "Time",
   192                "dateFormat": "MM/DD/YYYY",
   193                "pattern": "Time",
   194                "type": "hidden"
   195              },
   196              {
   197                "alias": "",
   198                "colorMode": "cell",
   199                "colors": [
   200                  "rgba(180, 171, 32, 0.97)",
   201                  "rgba(237, 129, 40, 0.89)",
   202                  "rgba(245, 54, 54, 0.9)"
   203                ],
   204                "dateFormat": "YYYY-MM-DD HH:mm:ss",
   205                "decimals": 0,
   206                "pattern": "Failing Days",
   207                "thresholds": [
   208                  "30",
   209                  "90"
   210                ],
   211                "type": "number",
   212                "unit": "short"
   213              },
   214              {
   215                "alias": "Job",
   216                "colorMode": null,
   217                "colors": [
   218                  "rgba(245, 54, 54, 0.9)",
   219                  "rgba(237, 129, 40, 0.89)",
   220                  "rgba(50, 172, 45, 0.97)"
   221                ],
   222                "dateFormat": "YYYY-MM-DD HH:mm:ss",
   223                "decimals": 2,
   224                "pattern": "job",
   225                "thresholds": [],
   226                "type": "string",
   227                "unit": "short"
   228              },
   229              {
   230                "alias": "",
   231                "colorMode": null,
   232                "colors": [
   233                  "rgba(245, 54, 54, 0.9)",
   234                  "rgba(237, 129, 40, 0.89)",
   235                  "rgba(50, 172, 45, 0.97)"
   236                ],
   237                "decimals": 2,
   238                "pattern": "/.*/",
   239                "thresholds": [],
   240                "type": "number",
   241                "unit": "short"
   242              }
   243            ],
   244            "targets": [
   245              {
   246                "alias": "",
   247                "dsType": "influxdb",
   248                "groupBy": [
   249                  {
   250                    "params": [
   251                      "job"
   252                    ],
   253                    "type": "tag"
   254                  }
   255                ],
   256                "hide": false,
   257                "measurement": "failures",
   258                "orderByTime": "DESC",
   259                "policy": "default",
   260                "query": "SELECT \"job\" as \"Job\", \"failing_days\" as \"Failing Days\" FROM (SELECT last(\"failing_days\") as \"failing_days\" FROM \"failures\" WHERE time > now() - 2d AND \"job\" =~ /^pr:/ GROUP BY \"job\")  WHERE \"failing_days\" > 0",
   261                "rawQuery": true,
   262                "refId": "A",
   263                "resultFormat": "table",
   264                "select": [
   265                  [
   266                    {
   267                      "params": [
   268                        "failing_days"
   269                      ],
   270                      "type": "field"
   271                    },
   272                    {
   273                      "params": [],
   274                      "type": "last"
   275                    },
   276                    {
   277                      "params": [
   278                        "Failing Days"
   279                      ],
   280                      "type": "alias"
   281                    }
   282                  ]
   283                ],
   284                "tags": []
   285              }
   286            ],
   287            "title": "Longest Failing PR Jobs",
   288            "transform": "table",
   289            "type": "table"
   290          }
   291        ],
   292        "repeat": null,
   293        "repeatIteration": null,
   294        "repeatRowId": null,
   295        "showTitle": false,
   296        "title": "Dashboard Row",
   297        "titleSize": "h6"
   298      },
   299      {
   300        "collapse": false,
   301        "height": 250,
   302        "panels": [
   303          {
   304            "columns": [],
   305            "datasource": "${DS_METRICS-BIGQUERY}",
   306            "fontSize": "100%",
   307            "height": "350",
   308            "id": 7,
   309            "links": [],
   310            "pageSize": null,
   311            "scroll": true,
   312            "showHeader": true,
   313            "sort": {
   314              "col": 2,
   315              "desc": true
   316            },
   317            "span": 12,
   318            "styles": [
   319              {
   320                "alias": "Time",
   321                "dateFormat": "YYYY-MM-DD HH:mm:ss",
   322                "pattern": "Time",
   323                "type": "hidden"
   324              },
   325              {
   326                "alias": "",
   327                "colorMode": "cell",
   328                "colors": [
   329                  "rgba(174, 157, 0, 0.97)",
   330                  "rgba(222, 89, 0, 0.89)",
   331                  "rgba(201, 0, 0, 0.9)"
   332                ],
   333                "dateFormat": "YYYY-MM-DD HH:mm:ss",
   334                "decimals": 0,
   335                "pattern": "Flakes",
   336                "thresholds": [
   337                  "10",
   338                  " 50"
   339                ],
   340                "type": "number",
   341                "unit": "short"
   342              },
   343              {
   344                "alias": "Job",
   345                "colorMode": null,
   346                "colors": [
   347                  "rgba(245, 54, 54, 0.9)",
   348                  "rgba(237, 129, 40, 0.89)",
   349                  "rgba(50, 172, 45, 0.97)"
   350                ],
   351                "dateFormat": "YYYY-MM-DD HH:mm:ss",
   352                "decimals": 2,
   353                "pattern": "job",
   354                "preserveFormat": true,
   355                "thresholds": [],
   356                "type": "string",
   357                "unit": "short"
   358              },
   359              {
   360                "alias": "",
   361                "colorMode": null,
   362                "colors": [
   363                  "rgba(245, 54, 54, 0.9)",
   364                  "rgba(237, 129, 40, 0.89)",
   365                  "rgba(50, 172, 45, 0.97)"
   366                ],
   367                "decimals": 2,
   368                "pattern": "/.*/",
   369                "preserveFormat": false,
   370                "thresholds": [],
   371                "type": "string",
   372                "unit": "short"
   373              }
   374            ],
   375            "targets": [
   376              {
   377                "dsType": "influxdb",
   378                "groupBy": [
   379                  {
   380                    "params": [
   381                      "job"
   382                    ],
   383                    "type": "tag"
   384                  }
   385                ],
   386                "measurement": "flakes",
   387                "orderByTime": "ASC",
   388                "policy": "default",
   389                "query": "SELECT last(\"flakes\") as \"Flakes\", last(\"flakiest\") as \"Flakiest Test\", last(\"flakier\") as \"2nd Flakiest Test\" FROM \"flakes\" WHERE $timeFilter and time > now() - 2d and \"job\" =~ /pr:.*/ GROUP BY \"job\"",
   390                "rawQuery": true,
   391                "refId": "A",
   392                "resultFormat": "table",
   393                "select": [
   394                  [
   395                    {
   396                      "params": [
   397                        "flakes"
   398                      ],
   399                      "type": "field"
   400                    }
   401                  ]
   402                ],
   403                "tags": [
   404                  {
   405                    "key": "time > now() -2d",
   406                    "operator": "=",
   407                    "value": "select tag value"
   408                  }
   409                ]
   410              }
   411            ],
   412            "title": "Flakiest PR Jobs (past week)",
   413            "transform": "table",
   414            "type": "table"
   415          }
   416        ],
   417        "repeat": null,
   418        "repeatIteration": null,
   419        "repeatRowId": null,
   420        "showTitle": false,
   421        "title": "Dashboard Row",
   422        "titleSize": "h6"
   423      },
   424      {
   425        "collapse": false,
   426        "height": 342,
   427        "panels": [
   428          {
   429            "aliasColors": {},
   430            "bars": false,
   431            "dashLength": 10,
   432            "dashes": false,
   433            "datasource": "${DS_METRICS-BIGQUERY}",
   434            "decimals": 0,
   435            "fill": 1,
   436            "grid": {},
   437            "id": 10,
   438            "interval": "",
   439            "legend": {
   440              "avg": false,
   441              "current": true,
   442              "max": false,
   443              "min": false,
   444              "rightSide": false,
   445              "show": true,
   446              "total": false,
   447              "values": true
   448            },
   449            "lines": true,
   450            "linewidth": 1,
   451            "links": [],
   452            "nullPointMode": "null",
   453            "percentage": false,
   454            "pointradius": 5,
   455            "points": false,
   456            "renderer": "flot",
   457            "seriesOverrides": [
   458              {
   459                "alias": "pass rate",
   460                "linewidth": 7,
   461                "yaxis": 2,
   462                "zindex": 3
   463              },
   464              {
   465                "alias": "ran",
   466                "bars": true,
   467                "color": "#BF1B00"
   468              },
   469              {
   470                "alias": "passed",
   471                "bars": true,
   472                "color": "#64B0C8"
   473              }
   474            ],
   475            "spaceLength": 10,
   476            "span": 12,
   477            "stack": false,
   478            "steppedLine": false,
   479            "targets": [
   480              {
   481                "alias": "$col",
   482                "dsType": "influxdb",
   483                "groupBy": [
   484                  {
   485                    "params": [
   486                      "$__interval"
   487                    ],
   488                    "type": "time"
   489                  },
   490                  {
   491                    "params": [
   492                      "null"
   493                    ],
   494                    "type": "fill"
   495                  }
   496                ],
   497                "hide": false,
   498                "orderByTime": "ASC",
   499                "policy": "default",
   500                "query": "SELECT rate as \"pass rate\" FROM \"build_stats\" WHERE $timeFilter fill(previous)",
   501                "rawQuery": true,
   502                "refId": "B",
   503                "resultFormat": "time_series",
   504                "select": [
   505                  [
   506                    {
   507                      "params": [
   508                        "value"
   509                      ],
   510                      "type": "field"
   511                    },
   512                    {
   513                      "params": [],
   514                      "type": "mean"
   515                    }
   516                  ]
   517                ],
   518                "tags": []
   519              },
   520              {
   521                "alias": "$col",
   522                "dsType": "influxdb",
   523                "groupBy": [
   524                  {
   525                    "params": [
   526                      "1d"
   527                    ],
   528                    "type": "time"
   529                  },
   530                  {
   531                    "params": [
   532                      "previous"
   533                    ],
   534                    "type": "fill"
   535                  }
   536                ],
   537                "hide": false,
   538                "limit": "",
   539                "measurement": "flakes",
   540                "orderByTime": "ASC",
   541                "policy": "default",
   542                "query": "SELECT sum(invocations) as \"ran\", sum(passes) as \"passed\" FROM \"build_stats\" WHERE $timeFilter group by time($__interval) fill(previous)",
   543                "rawQuery": true,
   544                "refId": "A",
   545                "resultFormat": "time_series",
   546                "select": [
   547                  [
   548                    {
   549                      "params": [
   550                        "build_consistency_weighted"
   551                      ],
   552                      "type": "field"
   553                    },
   554                    {
   555                      "params": [],
   556                      "type": "sum"
   557                    },
   558                    {
   559                      "params": [
   560                        "Build Consistency"
   561                      ],
   562                      "type": "alias"
   563                    }
   564                  ],
   565                  [
   566                    {
   567                      "params": [
   568                        "commit_consistency_weighted"
   569                      ],
   570                      "type": "field"
   571                    },
   572                    {
   573                      "params": [],
   574                      "type": "sum"
   575                    },
   576                    {
   577                      "params": [
   578                        "Commit Consistency"
   579                      ],
   580                      "type": "alias"
   581                    }
   582                  ],
   583                  [
   584                    {
   585                      "params": [
   586                        "flakes"
   587                      ],
   588                      "type": "field"
   589                    },
   590                    {
   591                      "params": [],
   592                      "type": "mean"
   593                    },
   594                    {
   595                      "params": [
   596                        "Mean Flake Count"
   597                      ],
   598                      "type": "alias"
   599                    }
   600                  ],
   601                  [
   602                    {
   603                      "params": [
   604                        "flakes"
   605                      ],
   606                      "type": "field"
   607                    },
   608                    {
   609                      "params": [],
   610                      "type": "median"
   611                    },
   612                    {
   613                      "params": [
   614                        "Median Flake Count"
   615                      ],
   616                      "type": "alias"
   617                    }
   618                  ]
   619                ],
   620                "slimit": "",
   621                "tags": []
   622              }
   623            ],
   624            "thresholds": [],
   625            "timeFrom": null,
   626            "timeShift": null,
   627            "title": "Pass rate",
   628            "tooltip": {
   629              "msResolution": false,
   630              "shared": true,
   631              "sort": 0,
   632              "value_type": "individual"
   633            },
   634            "type": "graph",
   635            "xaxis": {
   636              "buckets": null,
   637              "mode": "time",
   638              "name": null,
   639              "show": true,
   640              "values": []
   641            },
   642            "yaxes": [
   643              {
   644                "format": "none",
   645                "label": "Builds",
   646                "logBase": 1,
   647                "max": "40000",
   648                "min": "0",
   649                "show": true
   650              },
   651              {
   652                "format": "percentunit",
   653                "label": "Pass rate",
   654                "logBase": 1,
   655                "max": "1",
   656                "min": "0",
   657                "show": true
   658              }
   659            ]
   660          }
   661        ],
   662        "repeat": null,
   663        "repeatIteration": null,
   664        "repeatRowId": null,
   665        "showTitle": false,
   666        "title": "Dashboard Row",
   667        "titleSize": "h6"
   668      },
   669      {
   670        "collapse": false,
   671        "height": null,
   672        "panels": [
   673          {
   674            "aliasColors": {},
   675            "bars": false,
   676            "dashLength": 10,
   677            "dashes": false,
   678            "datasource": "${DS_METRICS-BIGQUERY}",
   679            "decimals": 2,
   680            "fill": 1,
   681            "grid": {},
   682            "height": "300",
   683            "id": 1,
   684            "interval": "",
   685            "legend": {
   686              "avg": false,
   687              "current": true,
   688              "max": false,
   689              "min": false,
   690              "show": true,
   691              "total": false,
   692              "values": true
   693            },
   694            "lines": true,
   695            "linewidth": 1,
   696            "links": [],
   697            "nullPointMode": "null",
   698            "percentage": false,
   699            "pointradius": 5,
   700            "points": false,
   701            "renderer": "flot",
   702            "seriesOverrides": [
   703              {
   704                "alias": "/Consistency/",
   705                "yaxis": 1
   706              },
   707              {
   708                "alias": "/Count/",
   709                "fill": 0,
   710                "linewidth": 2,
   711                "yaxis": 2
   712              }
   713            ],
   714            "spaceLength": 10,
   715            "span": 6,
   716            "stack": false,
   717            "steppedLine": false,
   718            "targets": [
   719              {
   720                "alias": "$col",
   721                "dsType": "influxdb",
   722                "groupBy": [
   723                  {
   724                    "params": [
   725                      "$__interval"
   726                    ],
   727                    "type": "time"
   728                  },
   729                  {
   730                    "params": [
   731                      "null"
   732                    ],
   733                    "type": "fill"
   734                  }
   735                ],
   736                "hide": false,
   737                "orderByTime": "ASC",
   738                "policy": "default",
   739                "query": "SELECT 1-(sum(\"consistent_builds\")/sum(\"builds\")) as \"CI Jobs\" FROM \"flakes_daily\" WHERE $timeFilter and \"job\" =~ /ci-.*/ group by time($__interval) fill(previous)",
   740                "rawQuery": true,
   741                "refId": "B",
   742                "resultFormat": "time_series",
   743                "select": [
   744                  [
   745                    {
   746                      "params": [
   747                        "value"
   748                      ],
   749                      "type": "field"
   750                    },
   751                    {
   752                      "params": [],
   753                      "type": "mean"
   754                    }
   755                  ]
   756                ],
   757                "tags": []
   758              },
   759              {
   760                "alias": "$col",
   761                "dsType": "influxdb",
   762                "groupBy": [
   763                  {
   764                    "params": [
   765                      "1d"
   766                    ],
   767                    "type": "time"
   768                  },
   769                  {
   770                    "params": [
   771                      "previous"
   772                    ],
   773                    "type": "fill"
   774                  }
   775                ],
   776                "hide": false,
   777                "limit": "",
   778                "measurement": "flakes",
   779                "orderByTime": "ASC",
   780                "policy": "default",
   781                "query": "SELECT 1-(sum(\"consistent_builds\")/sum(\"builds\")) as \"PR Jobs (including non-blocking)\" FROM \"flakes_daily\" WHERE $timeFilter and \"job\" =~ /pr:.*/ group by time($__interval) fill(previous)",
   782                "rawQuery": true,
   783                "refId": "A",
   784                "resultFormat": "time_series",
   785                "select": [
   786                  [
   787                    {
   788                      "params": [
   789                        "build_consistency_weighted"
   790                      ],
   791                      "type": "field"
   792                    },
   793                    {
   794                      "params": [],
   795                      "type": "sum"
   796                    },
   797                    {
   798                      "params": [
   799                        "Build Consistency"
   800                      ],
   801                      "type": "alias"
   802                    }
   803                  ],
   804                  [
   805                    {
   806                      "params": [
   807                        "commit_consistency_weighted"
   808                      ],
   809                      "type": "field"
   810                    },
   811                    {
   812                      "params": [],
   813                      "type": "sum"
   814                    },
   815                    {
   816                      "params": [
   817                        "Commit Consistency"
   818                      ],
   819                      "type": "alias"
   820                    }
   821                  ],
   822                  [
   823                    {
   824                      "params": [
   825                        "flakes"
   826                      ],
   827                      "type": "field"
   828                    },
   829                    {
   830                      "params": [],
   831                      "type": "mean"
   832                    },
   833                    {
   834                      "params": [
   835                        "Mean Flake Count"
   836                      ],
   837                      "type": "alias"
   838                    }
   839                  ],
   840                  [
   841                    {
   842                      "params": [
   843                        "flakes"
   844                      ],
   845                      "type": "field"
   846                    },
   847                    {
   848                      "params": [],
   849                      "type": "median"
   850                    },
   851                    {
   852                      "params": [
   853                        "Median Flake Count"
   854                      ],
   855                      "type": "alias"
   856                    }
   857                  ]
   858                ],
   859                "slimit": "",
   860                "tags": []
   861              }
   862            ],
   863            "thresholds": [],
   864            "timeFrom": null,
   865            "timeShift": null,
   866            "title": "Job Flakiness",
   867            "tooltip": {
   868              "msResolution": false,
   869              "shared": true,
   870              "sort": 0,
   871              "value_type": "individual"
   872            },
   873            "type": "graph",
   874            "xaxis": {
   875              "buckets": null,
   876              "mode": "time",
   877              "name": null,
   878              "show": true,
   879              "values": []
   880            },
   881            "yaxes": [
   882              {
   883                "format": "percentunit",
   884                "label": "Flake Chance (of individual run)",
   885                "logBase": 1,
   886                "max": "0.4",
   887                "min": "0",
   888                "show": true
   889              },
   890              {
   891                "format": "short",
   892                "label": "Flake Count",
   893                "logBase": 1,
   894                "max": null,
   895                "min": "0",
   896                "show": false
   897              }
   898            ]
   899          },
   900          {
   901            "columns": [],
   902            "datasource": "${DS_METRICS-BIGQUERY}",
   903            "fontSize": "100%",
   904            "height": "300",
   905            "id": 2,
   906            "interval": "",
   907            "links": [],
   908            "pageSize": null,
   909            "scroll": true,
   910            "showHeader": true,
   911            "sort": {
   912              "col": 2,
   913              "desc": true
   914            },
   915            "span": 6,
   916            "styles": [
   917              {
   918                "alias": "Time",
   919                "dateFormat": "MM/DD/YYYY",
   920                "pattern": "Time",
   921                "type": "hidden"
   922              },
   923              {
   924                "alias": "",
   925                "colorMode": "cell",
   926                "colors": [
   927                  "rgba(180, 171, 32, 0.97)",
   928                  "rgba(237, 129, 40, 0.89)",
   929                  "rgba(245, 54, 54, 0.9)"
   930                ],
   931                "dateFormat": "YYYY-MM-DD HH:mm:ss",
   932                "decimals": 0,
   933                "pattern": "Failing Days",
   934                "thresholds": [
   935                  "30",
   936                  "90"
   937                ],
   938                "type": "number",
   939                "unit": "short"
   940              },
   941              {
   942                "alias": "Job",
   943                "colorMode": null,
   944                "colors": [
   945                  "rgba(245, 54, 54, 0.9)",
   946                  "rgba(237, 129, 40, 0.89)",
   947                  "rgba(50, 172, 45, 0.97)"
   948                ],
   949                "dateFormat": "YYYY-MM-DD HH:mm:ss",
   950                "decimals": 2,
   951                "pattern": "Job",
   952                "thresholds": [],
   953                "type": "string",
   954                "unit": "short"
   955              },
   956              {
   957                "alias": "",
   958                "colorMode": null,
   959                "colors": [
   960                  "rgba(245, 54, 54, 0.9)",
   961                  "rgba(237, 129, 40, 0.89)",
   962                  "rgba(50, 172, 45, 0.97)"
   963                ],
   964                "decimals": 2,
   965                "pattern": "/.*/",
   966                "thresholds": [],
   967                "type": "number",
   968                "unit": "short"
   969              }
   970            ],
   971            "targets": [
   972              {
   973                "dsType": "influxdb",
   974                "groupBy": [],
   975                "hide": false,
   976                "measurement": "failures",
   977                "orderByTime": "DESC",
   978                "policy": "default",
   979                "query": "SELECT \"job\" as \"Job\", top(\"failing_days\", 100) as \"Failing Days\" FROM (SELECT \"job\", last(\"failing_days\") as \"failing_days\" FROM \"failures\" WHERE time > now() - 1d - 1h GROUP BY \"job\")",
   980                "rawQuery": true,
   981                "refId": "A",
   982                "resultFormat": "table",
   983                "select": [
   984                  [
   985                    {
   986                      "params": [
   987                        "job"
   988                      ],
   989                      "type": "field"
   990                    }
   991                  ],
   992                  [
   993                    {
   994                      "params": [
   995                        "failing_days"
   996                      ],
   997                      "type": "field"
   998                    },
   999                    {
  1000                      "params": [
  1001                        "100"
  1002                      ],
  1003                      "type": "percentile"
  1004                    }
  1005                  ]
  1006                ],
  1007                "tags": [
  1008                  {
  1009                    "key": "time",
  1010                    "operator": ">",
  1011                    "value": "now() - 1d - 1h"
  1012                  }
  1013                ]
  1014              }
  1015            ],
  1016            "title": "Longest Failing Jobs",
  1017            "transform": "table",
  1018            "type": "table"
  1019          }
  1020        ],
  1021        "repeat": null,
  1022        "repeatIteration": null,
  1023        "repeatRowId": null,
  1024        "showTitle": false,
  1025        "title": "Dashboard Row",
  1026        "titleSize": "h6"
  1027      },
  1028      {
  1029        "collapse": false,
  1030        "height": 250,
  1031        "panels": [
  1032          {
  1033            "aliasColors": {},
  1034            "bars": false,
  1035            "dashLength": 10,
  1036            "dashes": false,
  1037            "datasource": "${DS_METRICS-BIGQUERY}",
  1038            "description": "Percent of PRs that a presubmit failed at least once in",
  1039            "fill": 0,
  1040            "hideTimeOverride": false,
  1041            "id": 11,
  1042            "legend": {
  1043              "alignAsTable": false,
  1044              "avg": false,
  1045              "current": false,
  1046              "hideEmpty": false,
  1047              "hideZero": false,
  1048              "max": false,
  1049              "min": false,
  1050              "rightSide": false,
  1051              "show": true,
  1052              "total": false,
  1053              "values": false
  1054            },
  1055            "lines": true,
  1056            "linewidth": 2,
  1057            "links": [],
  1058            "nullPointMode": "connected",
  1059            "percentage": false,
  1060            "pointradius": 5,
  1061            "points": false,
  1062            "renderer": "flot",
  1063            "seriesOverrides": [],
  1064            "spaceLength": 10,
  1065            "span": 12,
  1066            "stack": false,
  1067            "steppedLine": false,
  1068            "targets": [
  1069              {
  1070                "alias": "$tag_job",
  1071                "dsType": "influxdb",
  1072                "groupBy": [
  1073                  {
  1074                    "params": [
  1075                      "$__interval"
  1076                    ],
  1077                    "type": "time"
  1078                  },
  1079                  {
  1080                    "params": [
  1081                      "job"
  1082                    ],
  1083                    "type": "tag"
  1084                  },
  1085                  {
  1086                    "params": [
  1087                      "none"
  1088                    ],
  1089                    "type": "fill"
  1090                  }
  1091                ],
  1092                "hide": false,
  1093                "measurement": "presubmit_health",
  1094                "orderByTime": "ASC",
  1095                "policy": "default",
  1096                "query": "SELECT mean(\"pr_failure_perc\") FROM \"presubmit_health\" WHERE \"job\" =~ /pull-kubernetes/ AND \"total_runs\" > 20 AND $timeFilter GROUP BY time($__interval), \"job\" fill(null)",
  1097                "rawQuery": false,
  1098                "refId": "A",
  1099                "resultFormat": "time_series",
  1100                "select": [
  1101                  [
  1102                    {
  1103                      "params": [
  1104                        "pr_failure_perc"
  1105                      ],
  1106                      "type": "field"
  1107                    },
  1108                    {
  1109                      "params": [],
  1110                      "type": "mean"
  1111                    }
  1112                  ]
  1113                ],
  1114                "tags": [
  1115                  {
  1116                    "key": "job",
  1117                    "operator": "=~",
  1118                    "value": "/pull-kubernetes/"
  1119                  },
  1120                  {
  1121                    "condition": "AND",
  1122                    "key": "prs",
  1123                    "operator": ">",
  1124                    "value": "20"
  1125                  }
  1126                ]
  1127              }
  1128            ],
  1129            "thresholds": [],
  1130            "timeFrom": null,
  1131            "timeShift": null,
  1132            "title": "Presubmit Failure Rate (%)",
  1133            "tooltip": {
  1134              "shared": true,
  1135              "sort": 2,
  1136              "value_type": "individual"
  1137            },
  1138            "transparent": false,
  1139            "type": "graph",
  1140            "xaxis": {
  1141              "buckets": null,
  1142              "mode": "time",
  1143              "name": null,
  1144              "show": true,
  1145              "values": []
  1146            },
  1147            "yaxes": [
  1148              {
  1149                "format": "short",
  1150                "label": null,
  1151                "logBase": 1,
  1152                "max": "100",
  1153                "min": "0",
  1154                "show": true
  1155              },
  1156              {
  1157                "format": "short",
  1158                "label": null,
  1159                "logBase": 1,
  1160                "max": null,
  1161                "min": null,
  1162                "show": true
  1163              }
  1164            ]
  1165          }
  1166        ],
  1167        "repeat": null,
  1168        "repeatIteration": null,
  1169        "repeatRowId": null,
  1170        "showTitle": false,
  1171        "title": "Dashboard Row",
  1172        "titleSize": "h6"
  1173      },
  1174      {
  1175        "collapse": false,
  1176        "height": 250,
  1177        "panels": [
  1178          {
  1179            "alert": {
  1180              "conditions": [
  1181                {
  1182                  "evaluator": {
  1183                    "params": [
  1184                      0.1
  1185                    ],
  1186                    "type": "lt"
  1187                  },
  1188                  "operator": {
  1189                    "type": "and"
  1190                  },
  1191                  "query": {
  1192                    "params": [
  1193                      "B",
  1194                      "6h",
  1195                      "now"
  1196                    ]
  1197                  },
  1198                  "reducer": {
  1199                    "params": [],
  1200                    "type": "max"
  1201                  },
  1202                  "type": "query"
  1203                }
  1204              ],
  1205              "executionErrorState": "keep_state",
  1206              "frequency": "60s",
  1207              "handler": 1,
  1208              "name": "Bigquery Freshness alert",
  1209              "noDataState": "no_data",
  1210              "notifications": [
  1211                {
  1212                  "id": 1
  1213                }
  1214              ]
  1215            },
  1216            "aliasColors": {},
  1217            "bars": false,
  1218            "dashLength": 10,
  1219            "dashes": false,
  1220            "datasource": "${DS_METRICS-BIGQUERY}",
  1221            "description": "The rate at which rows are added to the \"all\" table.",
  1222            "fill": 1,
  1223            "id": 12,
  1224            "legend": {
  1225              "avg": false,
  1226              "current": false,
  1227              "max": false,
  1228              "min": false,
  1229              "show": true,
  1230              "total": false,
  1231              "values": false
  1232            },
  1233            "lines": true,
  1234            "linewidth": 1,
  1235            "links": [],
  1236            "nullPointMode": "null",
  1237            "percentage": false,
  1238            "pointradius": 5,
  1239            "points": false,
  1240            "renderer": "flot",
  1241            "seriesOverrides": [],
  1242            "spaceLength": 10,
  1243            "span": 12,
  1244            "stack": false,
  1245            "steppedLine": false,
  1246            "targets": [
  1247              {
  1248                "alias": "rate (rows/s)",
  1249                "dsType": "influxdb",
  1250                "groupBy": [
  1251                  {
  1252                    "params": [
  1253                      "$__interval"
  1254                    ],
  1255                    "type": "time"
  1256                  },
  1257                  {
  1258                    "params": [
  1259                      "null"
  1260                    ],
  1261                    "type": "fill"
  1262                  }
  1263                ],
  1264                "measurement": "bigquery",
  1265                "orderByTime": "ASC",
  1266                "policy": "default",
  1267                "query": "SELECT derivative(mean(\"modified_time\"), 10s)/10000 FROM \"bigquery\" WHERE $timeFilter GROUP BY time($__interval) fill(null)",
  1268                "rawQuery": false,
  1269                "refId": "B",
  1270                "resultFormat": "time_series",
  1271                "select": [
  1272                  [
  1273                    {
  1274                      "params": [
  1275                        "row_count"
  1276                      ],
  1277                      "type": "field"
  1278                    },
  1279                    {
  1280                      "params": [],
  1281                      "type": "mean"
  1282                    },
  1283                    {
  1284                      "params": [
  1285                        "10s"
  1286                      ],
  1287                      "type": "derivative"
  1288                    }
  1289                  ]
  1290                ],
  1291                "tags": [
  1292                  {
  1293                    "key": "db",
  1294                    "operator": "=",
  1295                    "value": "k8s-gubernator:build.all"
  1296                  }
  1297                ]
  1298              }
  1299            ],
  1300            "thresholds": [
  1301              {
  1302                "colorMode": "critical",
  1303                "fill": true,
  1304                "line": true,
  1305                "op": "lt",
  1306                "value": 0.1
  1307              }
  1308            ],
  1309            "timeFrom": null,
  1310            "timeShift": null,
  1311            "title": "BigQuery Ingress Rate",
  1312            "tooltip": {
  1313              "shared": true,
  1314              "sort": 0,
  1315              "value_type": "individual"
  1316            },
  1317            "type": "graph",
  1318            "xaxis": {
  1319              "buckets": null,
  1320              "mode": "time",
  1321              "name": null,
  1322              "show": true,
  1323              "values": []
  1324            },
  1325            "yaxes": [
  1326              {
  1327                "format": "short",
  1328                "label": null,
  1329                "logBase": 10,
  1330                "max": null,
  1331                "min": null,
  1332                "show": true
  1333              },
  1334              {
  1335                "format": "short",
  1336                "label": null,
  1337                "logBase": 1,
  1338                "max": null,
  1339                "min": null,
  1340                "show": true
  1341              }
  1342            ]
  1343          }
  1344        ],
  1345        "repeat": null,
  1346        "repeatIteration": null,
  1347        "repeatRowId": null,
  1348        "showTitle": false,
  1349        "title": "Dashboard Row",
  1350        "titleSize": "h6"
  1351      }
  1352    ],
  1353    "schemaVersion": 14,
  1354    "style": "dark",
  1355    "tags": [],
  1356    "templating": {
  1357      "list": []
  1358    },
  1359    "time": {
  1360      "from": "now-90d",
  1361      "to": "now"
  1362    },
  1363    "timepicker": {
  1364      "refresh_intervals": [
  1365        "5s",
  1366        "10s",
  1367        "30s",
  1368        "1m",
  1369        "5m",
  1370        "15m",
  1371        "30m",
  1372        "1h",
  1373        "2h",
  1374        "1d"
  1375      ],
  1376      "time_options": [
  1377        "5m",
  1378        "15m",
  1379        "1h",
  1380        "6h",
  1381        "12h",
  1382        "24h",
  1383        "2d",
  1384        "7d",
  1385        "30d"
  1386      ]
  1387    },
  1388    "timezone": "browser",
  1389    "title": "BigQuery Metrics",
  1390    "version": 33
  1391  }