You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by dc...@apache.org on 2014/08/14 01:26:06 UTC

[18/50] couchdb commit: updated refs/heads/1.6.x to eeb31cb

Fauxton: remove the Log Component

As prepration for the BigCouch merge and a LTS Couch 1.x with
Fauxton. After the merge the _logs resource will not be available
and logging happens with Lager. See
http://www.mail-archive.com/dev@couchdb.apache.org/msg32934.html
for more details.


Project: http://git-wip-us.apache.org/repos/asf/couchdb/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb/commit/17031e89
Tree: http://git-wip-us.apache.org/repos/asf/couchdb/tree/17031e89
Diff: http://git-wip-us.apache.org/repos/asf/couchdb/diff/17031e89

Branch: refs/heads/1.6.x
Commit: 17031e89f3d35286f0a04993a4dbcd710b484ea8
Parents: 11f726e
Author: Robert Kowalski <ro...@kowalski.gd>
Authored: Wed May 28 20:34:02 2014 +0200
Committer: Robert Kowalski <ro...@kowalski.gd>
Committed: Thu May 29 12:07:25 2014 +0200

----------------------------------------------------------------------
 src/Makefile.am                                 |   8 -
 src/fauxton/TODO.md                             |   2 -
 .../app/addons/logs/assets/less/logs.less       |  24 ---
 src/fauxton/app/addons/logs/base.js             |  28 ---
 src/fauxton/app/addons/logs/resources.js        | 212 -------------------
 src/fauxton/app/addons/logs/routes.js           |  58 -----
 .../app/addons/logs/templates/dashboard.html    |  50 -----
 .../app/addons/logs/templates/sidebar.html      |  18 --
 src/fauxton/app/addons/logs/tests/baseSpec.js   |  38 ----
 .../app/addons/logs/tests/resourcesSpec.js      | 117 ----------
 src/fauxton/assets/less/fauxton.less            |   6 -
 src/fauxton/settings.json.default               |   1 -
 src/fauxton/settings.json.dev                   |   1 -
 13 files changed, 563 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/Makefile.am
----------------------------------------------------------------------
diff --git a/src/Makefile.am b/src/Makefile.am
index dde0810..92ec8f1 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -77,13 +77,6 @@ FAUXTON_FILES = \
     fauxton/app/addons/contribute/base.js \
     fauxton/app/addons/exampleAuth/base.js \
     fauxton/app/addons/exampleAuth/templates/noAccess.html \
-    fauxton/app/addons/logs/base.js \
-    fauxton/app/addons/logs/resources.js \
-    fauxton/app/addons/logs/routes.js \
-    fauxton/app/addons/logs/templates/dashboard.html \
-    fauxton/app/addons/logs/templates/sidebar.html \
-    fauxton/app/addons/logs/tests/baseSpec.js \
-    fauxton/app/addons/logs/tests/resourcesSpec.js \
     fauxton/app/addons/permissions/assets/less/permissions.less \
     fauxton/app/addons/permissions/base.js \
     fauxton/app/addons/permissions/resources.js \
@@ -321,7 +314,6 @@ FAUXTON_FILES = \
     fauxton/app/addons/databases/assets/less/databases.less \
     fauxton/assets/less/fauxton.less \
     fauxton/assets/less/icons.less \
-    fauxton/app/addons/logs/assets/less/logs.less \
     fauxton/assets/less/prettyprint.less \
     fauxton/assets/less/variables.less \
     fauxton/bin/grunt \

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/TODO.md
----------------------------------------------------------------------
diff --git a/src/fauxton/TODO.md b/src/fauxton/TODO.md
index b929e05..a4b2a8e 100644
--- a/src/fauxton/TODO.md
+++ b/src/fauxton/TODO.md
@@ -21,6 +21,4 @@ In no particular order
 - [ ] replicate UI
 - [x] delete database
 - [x] format dates better (e.g. in logs plugin)
-- [ ] format log entry better
-- [ ] filter logs by method
 - [ ] restore unfiltered data in logs UI

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/app/addons/logs/assets/less/logs.less
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/assets/less/logs.less b/src/fauxton/app/addons/logs/assets/less/logs.less
deleted file mode 100644
index 17a4182..0000000
--- a/src/fauxton/app/addons/logs/assets/less/logs.less
+++ /dev/null
@@ -1,24 +0,0 @@
-/*  Licensed under the Apache License, Version 2.0 (the "License"); you may not
- *  use this file except in compliance with the License. You may obtain a copy of
- *  the License at
- *
- *    http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
- *  WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
- *  License for the specific language governing permissions and limitations under
- *  the License.
- */
-
-.logs {
-  padding: 0 15px;
-  .log-table {
-    width: auto;
-    white-space: nowrap;
-    .args {
-      width: 100%;
-      white-space: normal;
-    }
-  }
-}

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/app/addons/logs/base.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/base.js b/src/fauxton/app/addons/logs/base.js
deleted file mode 100644
index 1aecbdf..0000000
--- a/src/fauxton/app/addons/logs/base.js
+++ /dev/null
@@ -1,28 +0,0 @@
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy of
-// the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-
-define([
-  "app",
-
-  "api",
-
-  // Modules
-  "addons/logs/routes"
-],
-
-function(app, FauxtonAPI, Log) {
-  Log.initialize = function() {
-    FauxtonAPI.addHeaderLink({title: "Log", href: "#_log", icon: "fonticon-log", className: 'logs'});
-  };
-
-  return Log;
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/app/addons/logs/resources.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/resources.js b/src/fauxton/app/addons/logs/resources.js
deleted file mode 100644
index cd0f54a..0000000
--- a/src/fauxton/app/addons/logs/resources.js
+++ /dev/null
@@ -1,212 +0,0 @@
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy of
-// the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-
-define([
-  "app",
-  "api",
-  "backbone",
-  "d3",
-  "addons/fauxton/components"
-],
-
-function (app, FauxtonAPI, Backbone, d3, Components) {
-
-  var Log = FauxtonAPI.addon();
-
-  Log.Model = Backbone.Model.extend({
-
-    initialize: function () {
-      this.dateObject = new Date(this.get('date'));
-    },
-
-    date: function () {
-      var formatter = d3.time.format("%b %e");
-
-      return formatter(this.dateObject);
-    },
-
-    time: function () {
-      var formatter = d3.time.format("%H:%M:%S");
-
-      return formatter(this.dateObject);
-    },
-
-    logLevel: function () {
-      return this.get('log_level').replace(/ /g,'');
-    },
-
-    pid: function () {
-      return _.escape(this.get('pid'));
-    },
-
-    args: function () {
-      return _.escape(this.get('args'));
-    }
-
-  });
-
-  Log.Collection = Backbone.Collection.extend({
-    model: Log.Model,
-
-    initialize: function (options) {
-      this.params = {bytes: 5000};
-    },
-
-    documentation: "log",
-
-    url: function () {
-      var query = "?" + $.param(this.params);
-      return app.host + '/_log' + query;
-    },
-
-    // override fetch because backbone expects json and couchdb sends text/html for logs,
-    // I think its more elegant to set the dataType here than where ever fetch is called
-    fetch: function (options) {
-      options = options ? options : {};
-
-      return Backbone.Collection.prototype.fetch.call(this, _.extend(options, {dataType: "html"}));
-    },
-
-    sortLogsIntoDays: function () {
-      return _.reduce(this.toArray(), function (sortedCollection, log, key) {
-        var date = log.date();
-
-        if (!sortedCollection[date]) {
-          sortedCollection[date] = [];
-        }
-
-        sortedCollection[date].push(log);
-        return sortedCollection;
-      }, {});
-    },
-
-    parse: function (resp) {
-      resp = resp.replace(/\n\s/g, '');
-      var lines = resp.split(/\n/);
-      return _.foldr(lines, function (acc, logLine) {
-        var match = logLine.match(/^\[(.*?)\]\s\[(.*?)\]\s\[(.*?)\]\s(.*)/);
-
-        if (!match) { return acc;}
-
-        acc.push({
-                  date: match[1],
-                  log_level: match[2],
-                  pid: match[3],
-                  args: match[4].replace(/\s\s+/g, '')
-                 });
-
-        return acc;
-      }, []);
-    }
-  });
-
-  Log.events = {};
-  _.extend(Log.events, Backbone.Events);
-
-  Log.Views.View = FauxtonAPI.View.extend({
-    template: "addons/logs/templates/dashboard",
-
-    initialize: function (options) {
-      this.refreshTime = options.refreshTime || 5000;
-
-      Log.events.on("log:filter", this.filterLogs, this);
-      Log.events.on("log:remove", this.removeFilterLogs, this);
-
-      this.filters = [];
-
-      this.collection.on("add", function () {
-        this.render();
-      }, this);
-    },
-
-    establish: function () {
-      return [this.collection.fetch()];
-    },
-
-    serialize: function () {
-      var collection = new Log.Collection(this.createFilteredCollection());
-
-      return {
-        days: collection.sortLogsIntoDays()
-      };
-    },
-
-    afterRender: function () {
-      this.startRefreshInterval();
-    },
-
-    cleanup: function () {
-      this.stopRefreshInterval();
-    },
-
-    filterLogs: function (filter) {
-      this.filters.push(filter);
-      this.render();
-    },
-
-    createFilteredCollection: function () {
-      var that = this;
-
-      return _.reduce(this.filters, function (logs, filter) {
-
-        return _.filter(logs, function (log) {
-          var match = false;
-
-          _.each(log, function (value) {
-            if (value.toString().match(new RegExp(filter))) {
-              match = true;
-            }
-          });
-          return match;
-        });
-
-
-      }, this.collection.toJSON(), this);
-
-    },
-
-    removeFilterLogs: function (filter) {
-      this.filters.splice(this.filters.indexOf(filter), 1);
-      this.render();
-    },
-
-    startRefreshInterval: function () {
-      var collection = this.collection;
-
-      // Interval already set
-      if (this.intervalId) { return ; }
-
-      this.intervalId = setInterval(function () {
-        collection.fetch();
-      }, this.refreshTime);
-
-    },
-
-    stopRefreshInterval: function () {
-      clearInterval(this.intervalId);
-    }
-  });
-
-  Log.Views.Sidebar = FauxtonAPI.View.extend({
-    template: "addons/logs/templates/sidebar",
-
-    initialize: function (options) {
-      this.setView(".js-filter", new Components.FilterView({
-        eventListener: Log.events,
-        eventNamespace: "log"
-      }));
-    }
-  });
-
-  return Log;
-
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/app/addons/logs/routes.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/routes.js b/src/fauxton/app/addons/logs/routes.js
deleted file mode 100644
index ce6522b..0000000
--- a/src/fauxton/app/addons/logs/routes.js
+++ /dev/null
@@ -1,58 +0,0 @@
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy of
-// the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-
-define([
-       "app",
-
-       "api",
-
-       // Modules
-       "addons/logs/resources"
-],
-
-function(app, FauxtonAPI, Log) {
-
-  var  LogRouteObject = FauxtonAPI.RouteObject.extend({
-    layout: "with_sidebar",
-
-    crumbs: [
-      {"name": "Logs", "link": "_log"}
-    ],
-
-    routes: {
-      "_log": "showLog"
-    },
-
-    selectedHeader: "Log",
-
-    roles: ["_admin"],
-
-    apiUrl: function() {
-      return [this.logs.url(), this.logs.documentation];
-    },
-
-    initialize: function () {
-      this.logs = new Log.Collection();
-      this.setView("#sidebar-content", new Log.Views.Sidebar({}));
-    },
-
-    showLog: function () {
-      this.setView("#dashboard-content", new Log.Views.View({collection: this.logs}));
-    }
-  });
-
-  Log.RouteObjects = [LogRouteObject];
-
-  return Log;
-
-});
-

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/app/addons/logs/templates/dashboard.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/templates/dashboard.html b/src/fauxton/app/addons/logs/templates/dashboard.html
deleted file mode 100644
index 855da37..0000000
--- a/src/fauxton/app/addons/logs/templates/dashboard.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<!--
-Licensed under the Apache License, Version 2.0 (the "License"); you may not
-use this file except in compliance with the License. You may obtain a copy of
-the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-License for the specific language governing permissions and limitations under
-the License.
--->
-
-<div class="logs">
-  <h2>CouchDB Logs</h2>
-  <table class="table table-bordered log-table">
-    <thead>
-      <tr>
-        <th class="time">Date</th>
-        <th class="level">Log Value</th>
-        <th class="pid">Pid</th>
-        <th class="args">Url</th>
-      </tr>
-    </thead>
-
-    <tbody>
-      <%  _.forEach(days, function (logs, date) { %>
-        <tr><td class="day" colspan="4"><%= date %></td></tr>
-        <% _.forEach(logs, function (log) { %>
-          <tr class="<%= log.logLevel() %>">
-            <td>
-              <%= log.time() %>
-            </td>
-            <td>
-              <%= log.logLevel() %>
-            </td>
-            <td class="pid">
-              <%= log.pid() %>
-            </td>
-            <td class="args">
-              <!-- TODO: split the line, maybe put method in it's own column -->
-              <%= log.args() %>
-            </td>
-          </tr>
-        <% }); %>
-      <% }); %>
-    </tbody>
-  </table>
-</div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/app/addons/logs/templates/sidebar.html
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/templates/sidebar.html b/src/fauxton/app/addons/logs/templates/sidebar.html
deleted file mode 100644
index b9116f1..0000000
--- a/src/fauxton/app/addons/logs/templates/sidebar.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<!--
-Licensed under the Apache License, Version 2.0 (the "License"); you may not
-use this file except in compliance with the License. You may obtain a copy of
-the License at
-
-  http://www.apache.org/licenses/LICENSE-2.0
-
-Unless required by applicable law or agreed to in writing, software
-distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-License for the specific language governing permissions and limitations under
-the License.
--->
-
-<div id="log-sidebar">
-  <header>Log Filter</header>
-  <div class="js-filter"></div>
-</div>

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/app/addons/logs/tests/baseSpec.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/tests/baseSpec.js b/src/fauxton/app/addons/logs/tests/baseSpec.js
deleted file mode 100644
index 621cc9b..0000000
--- a/src/fauxton/app/addons/logs/tests/baseSpec.js
+++ /dev/null
@@ -1,38 +0,0 @@
-// Licensed under the Apache License, Version 2.0 (the "License"); you may not
-// use this file except in compliance with the License. You may obtain a copy of
-// the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-define([
-       'addons/logs/base',
-       'chai'
-], function (Log, chai) {
-  var expect = chai.expect;
-
-  describe('Logs Addon', function(){
-
-    describe('Log Model', function () {
-      var log;
-
-      beforeEach(function () {
-        log = new Log.Model({
-          log_level: 'DEBUG',
-          pid: '1234',
-          args: 'testing 123',
-          date: (new Date()).toString()
-        });
-      });
-
-      it('should have a log level', function () {
-        expect(log.logLevel()).to.equal('DEBUG');
-      });
-
-    });
-  });
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/app/addons/logs/tests/resourcesSpec.js
----------------------------------------------------------------------
diff --git a/src/fauxton/app/addons/logs/tests/resourcesSpec.js b/src/fauxton/app/addons/logs/tests/resourcesSpec.js
deleted file mode 100644
index 916dc91..0000000
--- a/src/fauxton/app/addons/logs/tests/resourcesSpec.js
+++ /dev/null
@@ -1,117 +0,0 @@
-// Licensed under the Apache License, Version 2.0 (the 'License'); you may not
-// use this file except in compliance with the License. You may obtain a copy of
-// the License at
-//
-//   http://www.apache.org/licenses/LICENSE-2.0
-//
-// Unless required by applicable law or agreed to in writing, software
-// distributed under the License is distributed on an 'AS IS' BASIS, WITHOUT
-// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
-// License for the specific language governing permissions and limitations under
-// the License.
-
-define([
-       'addons/logs/resources',
-       'testUtils'
-], function (Log, testUtils) {
-  var assert = testUtils.assert,
-      ViewSandbox = testUtils.ViewSandbox;
-
-  describe('Logs Resources', function () {
-
-    describe('Log Parser', function () {
-      it('parses GET messages', function () {
-        var parsedLog,
-            collection,
-            log = '[Sat, 12 Apr 2014 13:02:58 GMT] [info] [<0.3097.2>] 127.0.0.1 - - GET /_session 200\n' +
-                  '[Sat, 12 Apr 2014 13:02:58 GMT] [info] [<0.3098.2>] 127.0.0.1 - - GET /_session 200\n' +
-                  '[Sat, 12 Apr 2014 13:02:58 GMT] [info] [<0.3099.2>] 127.0.0.1 - - GET / 200\n';
-
-        collection = new Log.Collection();
-        parsedLog = collection.parse(log);
-        assert.equal(parsedLog[0].date, 'Sat, 12 Apr 2014 13:02:58 GMT');
-        assert.equal(parsedLog[0].args, '127.0.0.1 - - GET / 200');
-      });
-
-      it('parses GET messages with erlang errors', function () {
-        var parsedLog,
-            collection,
-            log = '[Sat, 12 Apr 2014 13:14:15 GMT] [info] [<0.9491.2>] Retrying GET to http://176.9.4.195/registry/genstatic?revs=true&open_revs=%5B%224-a9be203658a59fd2116ae9acbd10f0de%22%5D&latest=true in 1.0 seconds due to error {error,\n' +
-                  '                                                                                                                                                                                      {error,\n' +
-                  '                                                                                                                                                                                       connection_closing}}\n' +
-                  '[Sat, 12 Apr 2014 13:14:15 GMT] [error] [<0.9499.2>] Replicator, request GET to "http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%2219-380884ba97e3d6fc48c8c7db3dc0e91b%22%5D&latest=true" failed due to error {error,connection_closing}\n' +
-                  '[Sat, 12 Apr 2014 13:14:15 GMT] [info] [<0.9497.2>] Retrying GET to http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%2219-380884ba97e3d6fc48c8c7db3dc0e91b%22%5D&latest=true in 1.0 seconds due to error {error,\n' +
-                  '                                                                                                                                                                                           {error,\n' +
-                  '                                                                                                                                                                                            connection_closing}}\n' +
-                  '[Sat, 12 Apr 2014 13:14:15 GMT] [error] [<0.9507.2>] Replicator, request GET to "http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%224-c8ba4809e2cacc1635f8887ec0d8d49a%22%5D&latest=true" failed due to error {error,connection_closing}\n' +
-                  '[Sat, 12 Apr 2014 13:14:15 GMT] [info] [<0.9505.2>] Retrying GET to http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%224-c8ba4809e2cacc1635f8887ec0d8d49a%22%5D&latest=true in 1.0 seconds due to error {error,\n' +
-                  '                                                                                                                                                                                          {error,\n' +
-                  '                                                                                                                                                                                           connection_closing}}\n';
-
-        collection = new Log.Collection();
-        parsedLog = collection.parse(log);
-        assert.equal(parsedLog[1].date, 'Sat, 12 Apr 2014 13:14:15 GMT');
-        assert.equal(parsedLog[1].args, 'Replicator, request GET to "http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%224-c8ba4809e2cacc1635f8887ec0d8d49a%22%5D&latest=true" failed due to error {error,connection_closing}');
-        assert.equal(parsedLog[2].args, 'Retrying GET to http://176.9.4.195/registry/google-openid?revs=true&open_revs=%5B%2219-380884ba97e3d6fc48c8c7db3dc0e91b%22%5D&latest=true in 1.0 seconds due to error {error,{error,connection_closing}}');
-      });
-    });
-
-    describe('uses a heading for each date (COUCHDB-2136)', function () {
-      var collection,
-          view;
-
-      beforeEach(function () {
-        collection = new Log.Collection([
-          new Log.Model({
-            date: new Date('Fri Apr 19 2014 12:06:01 GMT+0200 (CEST)'),
-            log_level: 'info',
-            pid: 1337,
-            args: 'ente ente'
-          }),
-          new Log.Model({
-            date: new Date('Fri Apr 18 2014 12:06:01 GMT+0200 (CEST)'),
-            log_level: 'info',
-            pid: 1337,
-            args: 'ente ente'
-          }),
-          new Log.Model({
-            date: new Date('Thu Apr 17 2014 12:06:01 GMT+0200 (CEST)'),
-            log_level: 'info',
-            pid: 1337,
-            args: 'ente ente'
-          }),
-          new Log.Model({
-            date: new Date('Thu Apr 16 2014 12:06:01 GMT+0200 (CEST)'),
-            log_level: 'info',
-            pid: 1337,
-            args: 'ente ente'
-          })
-        ]);
-
-      });
-
-      it('sorts the data into an object', function () {
-        var sortedCollection = collection.sortLogsIntoDays();
-
-        assert.property(sortedCollection, 'Apr 18');
-        assert.property(sortedCollection, 'Apr 17');
-      });
-
-      it('creates headers with dates', function () {
-        var titles = [],
-            viewSandbox,
-            view;
-
-        view = new Log.Views.View({collection: collection});
-        viewSandbox = new ViewSandbox();
-        viewSandbox.renderView(view);
-
-        view.$('td[colspan="4"]').each(function (i, elem) {
-          titles.push($(elem).text());
-        });
-        assert.include(titles, 'Apr 18');
-        assert.include(titles, 'Apr 17');
-      });
-    });
-  });
-});

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/assets/less/fauxton.less
----------------------------------------------------------------------
diff --git a/src/fauxton/assets/less/fauxton.less b/src/fauxton/assets/less/fauxton.less
index 177cadc..fc92909 100644
--- a/src/fauxton/assets/less/fauxton.less
+++ b/src/fauxton/assets/less/fauxton.less
@@ -859,12 +859,6 @@ form.view-query-update, form.view-query-save {
   max-width: 100%;
 }
 
-/*logs*/
-#log-sidebar{
-  padding: 20px;
-}
-
-
 /*documents and databases */
 .view.show{
   color: @fontGrey;

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/settings.json.default
----------------------------------------------------------------------
diff --git a/src/fauxton/settings.json.default b/src/fauxton/settings.json.default
index eedf2f1..bc5a617 100644
--- a/src/fauxton/settings.json.default
+++ b/src/fauxton/settings.json.default
@@ -6,7 +6,6 @@
   { "name": "pouchdb" },
   { "name": "activetasks" },
   { "name": "config" },
-  { "name": "logs" },
   { "name": "stats" },
   { "name": "replication" },
   { "name": "plugins" },

http://git-wip-us.apache.org/repos/asf/couchdb/blob/17031e89/src/fauxton/settings.json.dev
----------------------------------------------------------------------
diff --git a/src/fauxton/settings.json.dev b/src/fauxton/settings.json.dev
index d354c29..62cd1e7 100644
--- a/src/fauxton/settings.json.dev
+++ b/src/fauxton/settings.json.dev
@@ -6,7 +6,6 @@
   { "name": "pouchdb" },
   { "name": "activetasks" },
   { "name": "config" },
-  { "name": "logs" },
   { "name": "stats" },
   { "name": "replication" },
   { "name": "plugins" },