How Is Server-Timing used on the web?

Modified @igrigorik’s query from earlier:

CREATE TEMPORARY FUNCTION getHeaders(payload STRING)
RETURNS STRING
LANGUAGE js AS """
  try {
    var $ = JSON.parse(payload);
    var headers = $.response.headers;
    var st = headers.find(function(e) { 
      return e['name'].toLowerCase() === 'server-timing'
    });
    return st['value'];
  } catch (e) {
    return '';
  }
""";

SELECT
  *
FROM (
  SELECT
    url,
    getHeaders(payload) AS st
  FROM
    httparchive.har.2017_07_01_chrome_requests )
WHERE
  st != ""

BigQuery

There are 357 requests with Server-Timing headers. I also modified that a bit to count the number of distinct pages and got 72, which is also what @paulcalvano got in the timeseries chart.

SELECT
  page
FROM (
  SELECT
    page,
    url,
    getHeaders(payload) AS st
  FROM
    httparchive.har.2017_07_01_chrome_requests )
WHERE
  st != ""
GROUP BY
  page
2 Likes