diff --git a/public/templates/admin/logger.tpl b/public/templates/admin/logger.tpl
new file mode 100644
index 0000000000..c8abacff9b
--- /dev/null
+++ b/public/templates/admin/logger.tpl
@@ -0,0 +1,33 @@
+
+ +
Logger
++ +
Logger Settings
+
+
+
+ + +
+
+
+
+
diff --git a/public/templates/config.json b/public/templates/config.json
index f97cd5ce26..636ef7f0b3 100644
--- a/public/templates/config.json
+++ b/public/templates/config.json
@@ -11,6 +11,7 @@
"^admin/settings.*": "admin/settings",
"admin/twitter.*": "admin/twitter",
"admin/facebook.*": "admin/facebook",
+ "admin/logger.*": "admin/logger",
"admin/gplus.*": "admin/gplus",
"admin/motd/?$": "admin/motd",
"admin/groups/?$": "admin/groups",
@@ -41,4 +42,4 @@
"force_refresh": {
"logout": true
}
-}
\ No newline at end of file
+}
diff --git a/src/routes/admin.js b/src/routes/admin.js
index b6db9cf925..a26a1be15c 100644
--- a/src/routes/admin.js
+++ b/src/routes/admin.js
@@ -30,7 +30,7 @@ var user = require('./../user.js'),
(function () {
var routes = [
'categories/active', 'categories/disabled', 'users', 'topics', 'settings', 'themes',
- 'twitter', 'facebook', 'gplus', 'redis', 'motd', 'groups',
+ 'twitter', 'facebook', 'gplus', 'redis', 'motd', 'groups','logger',
'users/latest', 'users/sort-posts', 'users/sort-reputation',
'users/search', 'plugins'
];
@@ -224,6 +224,10 @@ var user = require('./../user.js'),
res.json(200, {});
});
+ app.get('/logger', function(req, res) {
+ res.json(200, {});
+ });
+
app.get('/themes', function (req, res) {
res.json(200, {});
});
@@ -257,4 +261,4 @@ var user = require('./../user.js'),
};
-}(exports));
\ No newline at end of file
+}(exports));
diff --git a/src/webserver.js b/src/webserver.js
index 7212d3d235..3911c59c16 100644
--- a/src/webserver.js
+++ b/src/webserver.js
@@ -79,9 +79,16 @@ var express = require('express'),
function(next) {
// Pre-router middlewares
app.use(express.compress());
- if(nconf.get("express:logger") == true) {
- app.use(express.logger());
+
+ if(nconf.get("express:logger") == true || meta.config.loggerStatus > 0) {
+ var loggerObj = {};
+ if(meta.config.loggerPath) {
+ loggerObj.stream = fs.createWriteStream(meta.config.loggerPath, {flags: 'a'});
+ meta.config.loggerStream = loggerObj.stream
+ }
+ app.use(express.logger(loggerObj));
}
+
app.use(express.favicon(path.join(__dirname, '../', 'public', 'favicon.ico')));
app.use(require('less-middleware')({
src: path.join(__dirname, '../', 'public'),
+ By enabling the check box, you will receive http logs to standard output. If you specify a path, logs will then be saved to a file instead. +
++ + +