diff --git a/bin/extractPadData.js b/bin/extractPadData.js index 061a2e3f9..c7911df12 100644 --- a/bin/extractPadData.js +++ b/bin/extractPadData.js @@ -12,6 +12,7 @@ var padId = process.argv[2]; //initalize the database var log4js = require("log4js"); +log4js.configure('etherpad_logging.json'); log4js.setGlobalLogLevel("INFO"); var async = require("async"); var db = require('../node/db/DB'); diff --git a/settings.json.template b/settings.json.template index 7d175a34e..c99045d18 100644 --- a/settings.json.template +++ b/settings.json.template @@ -26,6 +26,12 @@ }, */ + //Logging configuration. See log4js documentation for further information + "logconfig" : + { "appenders": [ + { "type": "console" } + ] }, + //the default text of a pad "defaultPadText" : "Welcome to Etherpad Lite!\n\nThis pad text is synchronized as you type, so that everyone viewing this page sees the same text. This allows you to collaborate seamlessly on documents!\n\nEtherpad Lite on Github: http:\/\/j.mp/ep-lite\n", diff --git a/src/node/db/DB.js b/src/node/db/DB.js index 7273c83e3..544112f59 100644 --- a/src/node/db/DB.js +++ b/src/node/db/DB.js @@ -23,6 +23,9 @@ var ueberDB = require("ueberDB"); var settings = require("../utils/Settings"); var log4js = require('log4js'); +//Configure the logging appenders +log4js.configure(settings.logconfig); + //set database settings var db = new ueberDB.database(settings.dbType, settings.dbSettings, null, log4js.getLogger("ueberDB")); diff --git a/src/node/handler/PadMessageHandler.js b/src/node/handler/PadMessageHandler.js index 10b259ae2..b4276732f 100644 --- a/src/node/handler/PadMessageHandler.js +++ b/src/node/handler/PadMessageHandler.js @@ -35,6 +35,9 @@ var messageLogger = log4js.getLogger("message"); var _ = require('underscore'); var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks.js"); +//Configure the logging appenders +log4js.configure(settings.logconfig); + /** * A associative array that saves which sessions belong to a pad */ diff --git a/src/node/handler/SocketIORouter.js b/src/node/handler/SocketIORouter.js index f3b82b8c7..52ea56e83 100644 --- a/src/node/handler/SocketIORouter.js +++ b/src/node/handler/SocketIORouter.js @@ -21,9 +21,13 @@ var ERR = require("async-stacktrace"); var log4js = require('log4js'); +var settings = require('../../utils/Settings'); var messageLogger = log4js.getLogger("message"); var securityManager = require("../db/SecurityManager"); +//Configure the logging appenders +log4js.configure(settings.logconfig); + /** * Saves all components * key is the component name diff --git a/src/node/hooks/express/apicalls.js b/src/node/hooks/express/apicalls.js index e57e1d350..c9471035b 100644 --- a/src/node/hooks/express/apicalls.js +++ b/src/node/hooks/express/apicalls.js @@ -1,8 +1,12 @@ var log4js = require('log4js'); +var settings = require('../../utils/Settings'); var apiLogger = log4js.getLogger("API"); var formidable = require('formidable'); var apiHandler = require('../../handler/APIHandler'); +//Configure the logging appenders +log4js.configure(settings.logconfig); + //This is for making an api call, collecting all post information and passing it to the apiHandler var apiCaller = function(req, res, fields) { res.header("Content-Type", "application/json; charset=utf-8"); diff --git a/src/node/hooks/express/socketio.js b/src/node/hooks/express/socketio.js index 4f780cb0b..0dec7f039 100644 --- a/src/node/hooks/express/socketio.js +++ b/src/node/hooks/express/socketio.js @@ -1,8 +1,12 @@ var log4js = require('log4js'); var socketio = require('socket.io'); -var settings = require('../../utils/Settings'); +var settings = require('../../utils/Settings.js'); var socketIORouter = require("../../handler/SocketIORouter"); var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks"); +console.dir("adgadgqadgaegaega"); + +//Configure the logging appenders +log4js.configure(settings.logconfig); var padMessageHandler = require("../../handler/PadMessageHandler"); diff --git a/src/node/hooks/express/webaccess.js b/src/node/hooks/express/webaccess.js index ffced0476..965c30b9c 100644 --- a/src/node/hooks/express/webaccess.js +++ b/src/node/hooks/express/webaccess.js @@ -5,6 +5,8 @@ var settings = require('../../utils/Settings'); var randomString = require('ep_etherpad-lite/static/js/pad_utils').randomString; var hooks = require('ep_etherpad-lite/static/js/pluginfw/hooks'); +//Configure the logging appenders +log4js.configure(settings.logconfig); //checks for basic http auth exports.basicAuth = function (req, res, next) { diff --git a/src/node/server.js b/src/node/server.js index cca76c1f9..45ead512c 100755 --- a/src/node/server.js +++ b/src/node/server.js @@ -29,6 +29,9 @@ var plugins = require("ep_etherpad-lite/static/js/pluginfw/plugins"); var hooks = require("ep_etherpad-lite/static/js/pluginfw/hooks"); var npm = require("npm/lib/npm.js"); +//Configure the logging appenders +log4js.configure(settings.logconfig); + hooks.plugins = plugins; //set loglevel diff --git a/src/node/utils/ImportHtml.js b/src/node/utils/ImportHtml.js index 7c638fb8c..66c7ff81c 100644 --- a/src/node/utils/ImportHtml.js +++ b/src/node/utils/ImportHtml.js @@ -16,7 +16,10 @@ var jsdom = require('jsdom-nocontextifiy').jsdom; var log4js = require('log4js'); +var settings = require('../../utils/Settings'); +//Configure the logging appenders +log4js.configure(settings.logconfig); var Changeset = require("ep_etherpad-lite/static/js/Changeset"); var contentcollector = require("ep_etherpad-lite/static/js/contentcollector"); diff --git a/src/node/utils/Settings.js b/src/node/utils/Settings.js index dd34ac5ee..413579947 100644 --- a/src/node/utils/Settings.js +++ b/src/node/utils/Settings.js @@ -82,6 +82,11 @@ exports.abiword = null; */ exports.loglevel = "INFO"; +/* +* log4js appender configuration +*/ +exports.logconfig = { appenders: [{ type: "console" }]}; + /* This setting is used if you need authentication and/or * authorization. Note: /admin always requires authentication, and * either authorization by a module, or a user with is_admin set */