diff --git a/lib/sandbox.js b/lib/sandbox.js index 8cbd9a0..2747a3c 100644 --- a/lib/sandbox.js +++ b/lib/sandbox.js @@ -23,6 +23,7 @@ const seedrandom = require("seedrandom"); const common = require("./common"); const device = require("./device"); const extensions = require("./extensions"); +const logger = require("./logger"); // Used for throwing to exit user script and commit @@ -203,11 +204,31 @@ function ext() { } +function log(msg, meta) { + if (state.revision === state.maxRevision) { + const details = Object.assign({}, meta, { + sessionContext: state.sessionContext, + message: `Script: ${msg}` + }); + + delete details.hostname; + delete details.pid; + delete details.name; + delete details.version; + delete details.deviceId; + delete details.remoteAddress; + + logger.accessInfo(details); + } +} + + Object.defineProperty(context, "Date", {value: SandboxDate}); Object.defineProperty(context, "declare", {value: declare}); Object.defineProperty(context, "clear", {value: clear}); Object.defineProperty(context, "commit", {value: commit}); Object.defineProperty(context, "ext", {value: ext}); +Object.defineProperty(context, "log", {value: log}); // Monkey-patch Math.random() to make it deterministic context.random = random;