Commit a073476e authored by finn zirngibl's avatar finn zirngibl
Browse files

Merge branch 'fnordmetric2' of https://github.com/paulasmuth/fnordmetric-dev into fnordmetric2

parents 83205e6a 2e93b398
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ void IMetric::insertSample(
  // FIXPAUL slow slow slow!
  for (int i1 = 0; i1 < labels.size(); ++i1) {
    for (int i2 = 0; i2 < labels.size(); ++i2) {
      if (i1 != i1 && labels[i1].first == labels[i2].first) {
      if (i1 != i2 && labels[i1].first == labels[i2].first) {
        RAISE(
            kIllegalArgumentError,
            "duplicate label: %s",
+7 −4
Original line number Diff line number Diff line
@@ -46,7 +46,6 @@ FnordMetric.views.MetricList = function() {

  function renderMetricList(viewport, metrics, search_item) {
    viewport.innerHTML = "";
    console.log(metrics);

    if (metrics.length == 0) {
      if (search_item != undefined) {
@@ -95,9 +94,13 @@ FnordMetric.views.MetricList = function() {

  function renderEmptySearch(elem, search_item) {
    elem.innerHTML = "";
    FnordMetric.util.renderPageHeader(
      "No Results were found for " + search_item, elem);
    FnordMetric.util.TableView().renderEmptyTable(elem);
    var header = 
      "Metrics &rsaquo; <em>No Search Results for &quot;" +
      FnordMetric.util.htmlEscape(search_item) + "&quot;</em>";
    FnordMetric.util.renderPageHeader(header,elem);

    FnordMetric.util.TableView().renderEmptyTable(
      elem, ["Metric", "Labels", "Last Insert", "Total stored bytes"]);
  }

  function loadMetricList(viewport, query_params) {
+16 −8
Original line number Diff line number Diff line
@@ -134,12 +134,11 @@ FnordMetric.views.QueryPlayground = function() {

    /* render buttons */
    button_bar = document.createElement("div");
    button_bar.innerHTML = "<div class='editor_type_picker'><i class='fa fa-database'></i> SQL Editor</div>";
    button_bar.innerHTML = "<div class='editor_type_picker'><i class='fa fa-database'></i> SQL Editor <i class='fa fa-chevron-down'></i></div>";
    button_bar.className = "navbar";

    var split_btn = FnordMetric.createButton(
      "#", "fancy_button", "Change View");
    split_btn.style.float = "right";
    var split_btn = document.createElement("i");
    split_btn.className = "fa fa-columns icobtn";
    button_bar.appendChild(split_btn);

    split_btn.onclick = function(e) {
@@ -153,9 +152,16 @@ FnordMetric.views.QueryPlayground = function() {
      console.log("change view");
    }

    var query_btn = FnordMetric.createButton(
      "#", "run_query", "Run Query");
    query_btn.onclick = function(e) {
    var refresh_btn = document.createElement("i");
    refresh_btn.className = "fa fa-refresh icobtn";
    button_bar.appendChild(refresh_btn);

    var exec_btn = document.createElement("span");
    exec_btn.className = "run_query_btn";
    exec_btn.innerHTML = "<i class='fa fa-bolt'></i> Run Query";
    button_bar.appendChild(exec_btn);

    exec_btn.onclick = function(e) {
      e.preventDefault();
      runQuery(
        result_pane,
@@ -163,6 +169,8 @@ FnordMetric.views.QueryPlayground = function() {
        current_view);
    }


/*
    var embed_btn = FnordMetric.createButton(
      "#", "fancy_button", "Embed Query");

@@ -171,7 +179,7 @@ FnordMetric.views.QueryPlayground = function() {
      FnordMetric.util.openPopup(
        viewport, "Todo: Ruby/JS/html snippet");
    }

*/
    //button_bar.appendChild(query_btn);
    //button_bar.appendChild(embed_btn);

+28 −35
Original line number Diff line number Diff line
@@ -25,6 +25,8 @@ FnordMetric.util.TableView = function(columns, elem, per_page) {
  var current_page = 0;
  var pages;

  var order = {};

  function render(isSortable) {
    if (isSortable == undefined) {
      isSortable = true;
@@ -42,9 +44,14 @@ FnordMetric.util.TableView = function(columns, elem, per_page) {
    render(isSortable);
  }

  function resortRows(column_index, order) {
  function resortRows(column_index) {
    var column_order;
    column_order  = (order[column_index] == undefined ||
      order[column_index] == "desc") ?
      "asc" : "desc";
    order[column_index] = column_order;
    FnordMetric.util.sortMetricList(
      all_rows, column_index, order);
      all_rows, column_index, column_order);
    updatePage(0);
  }

@@ -60,28 +67,22 @@ FnordMetric.util.TableView = function(columns, elem, per_page) {

    for (var i = 0; i < columns.length; i++) {
      var header_cell = document.createElement("th");
      header_cell.innerHTML = columns[i];
      var title = document.createElement("span");
      title.innerHTML = columns[i];
      header_cell.appendChild(title);
      header.appendChild(header_cell);
      if (i != 1 && isSortable) {
        header_cell.className = "clickable";

        var sort_asc = FnordMetric.createButton(
          "#", "caret left", "&#x25B2;");
        sort_asc.setAttribute("id", i);
        sort_asc.onclick = function(e) {
          e.preventDefault();
          resortRows(this.id, "asc");
      if (isSortable) {
        header_cell.onclick = (function(idx) {
          return function() {
            resortRows(idx);
          }
        header_cell.appendChild(sort_asc);
        })(i);

        var sort_desc = FnordMetric.createButton(
          "#", "caret", "&#x25BC;");
        sort_desc.setAttribute("id", i);
        sort_desc.onclick = function(e) {
          e.preventDefault();
          resortRows(this.id, "desc");
        }
        header_cell.appendChild(sort_desc);
        var sort = document.createElement("i");
        sort.className = "fa sort " +
            (order[i] == "asc" ? "fa-sort-amount-asc" : "fa-sort-amount-desc");
        header_cell.appendChild(sort);
      }
    }

@@ -140,26 +141,18 @@ FnordMetric.util.TableView = function(columns, elem, per_page) {
    on_row_click = on_row_click_new;
  }

  function renderEmptyTable(elem) {
  function renderEmptyTable(elem, column_names) {
    var table = document.createElement("table");
    table.className = "metric_list";
    var header = document.createElement("tr");
    header.className = "list_header";
    for (var i = 0; i < 4; i++) {
    column_names.map(function(column) {
      var cell = document.createElement("th");
      cell.innerHTML = column;
      header.appendChild(cell);
    }
    });
    table.appendChild(header);

    for (var i = 0; i < 7; i++) {
      var row = document.createElement("tr");
      for (var j = 0; j < 4; j++) {
        var cell = document.createElement("td");
        row.appendChild(cell);
      }
      table.appendChild(row);
    }

    elem.appendChild(table);
  }

+1 −1
Original line number Diff line number Diff line
@@ -177,7 +177,7 @@ FnordMetric.util.renderPageHeader = function(text, elem) {

FnordMetric.util.parseTimestamp = function(timestamp) {
  if (timestamp == 0) {
    return timestamp;
    return "0";
  }

  var time_str;
Loading