multiprocess.js 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. /* automatically generated by JSCoverage - do not edit */
  2. if (typeof _$jscoverage === 'undefined') _$jscoverage = {};
  3. if (! _$jscoverage['appenders/multiprocess.js']) {
  4. _$jscoverage['appenders/multiprocess.js'] = [];
  5. _$jscoverage['appenders/multiprocess.js'][1] = 0;
  6. _$jscoverage['appenders/multiprocess.js'][2] = 0;
  7. _$jscoverage['appenders/multiprocess.js'][11] = 0;
  8. _$jscoverage['appenders/multiprocess.js'][17] = 0;
  9. _$jscoverage['appenders/multiprocess.js'][18] = 0;
  10. _$jscoverage['appenders/multiprocess.js'][19] = 0;
  11. _$jscoverage['appenders/multiprocess.js'][20] = 0;
  12. _$jscoverage['appenders/multiprocess.js'][21] = 0;
  13. _$jscoverage['appenders/multiprocess.js'][22] = 0;
  14. _$jscoverage['appenders/multiprocess.js'][25] = 0;
  15. _$jscoverage['appenders/multiprocess.js'][33] = 0;
  16. _$jscoverage['appenders/multiprocess.js'][34] = 0;
  17. _$jscoverage['appenders/multiprocess.js'][36] = 0;
  18. _$jscoverage['appenders/multiprocess.js'][39] = 0;
  19. _$jscoverage['appenders/multiprocess.js'][41] = 0;
  20. _$jscoverage['appenders/multiprocess.js'][42] = 0;
  21. _$jscoverage['appenders/multiprocess.js'][44] = 0;
  22. _$jscoverage['appenders/multiprocess.js'][45] = 0;
  23. _$jscoverage['appenders/multiprocess.js'][46] = 0;
  24. _$jscoverage['appenders/multiprocess.js'][50] = 0;
  25. _$jscoverage['appenders/multiprocess.js'][51] = 0;
  26. _$jscoverage['appenders/multiprocess.js'][52] = 0;
  27. _$jscoverage['appenders/multiprocess.js'][53] = 0;
  28. _$jscoverage['appenders/multiprocess.js'][54] = 0;
  29. _$jscoverage['appenders/multiprocess.js'][55] = 0;
  30. _$jscoverage['appenders/multiprocess.js'][56] = 0;
  31. _$jscoverage['appenders/multiprocess.js'][58] = 0;
  32. _$jscoverage['appenders/multiprocess.js'][62] = 0;
  33. _$jscoverage['appenders/multiprocess.js'][63] = 0;
  34. _$jscoverage['appenders/multiprocess.js'][66] = 0;
  35. _$jscoverage['appenders/multiprocess.js'][68] = 0;
  36. _$jscoverage['appenders/multiprocess.js'][71] = 0;
  37. _$jscoverage['appenders/multiprocess.js'][72] = 0;
  38. _$jscoverage['appenders/multiprocess.js'][76] = 0;
  39. _$jscoverage['appenders/multiprocess.js'][78] = 0;
  40. _$jscoverage['appenders/multiprocess.js'][79] = 0;
  41. _$jscoverage['appenders/multiprocess.js'][80] = 0;
  42. _$jscoverage['appenders/multiprocess.js'][81] = 0;
  43. _$jscoverage['appenders/multiprocess.js'][82] = 0;
  44. _$jscoverage['appenders/multiprocess.js'][84] = 0;
  45. _$jscoverage['appenders/multiprocess.js'][86] = 0;
  46. _$jscoverage['appenders/multiprocess.js'][89] = 0;
  47. _$jscoverage['appenders/multiprocess.js'][90] = 0;
  48. _$jscoverage['appenders/multiprocess.js'][91] = 0;
  49. _$jscoverage['appenders/multiprocess.js'][92] = 0;
  50. _$jscoverage['appenders/multiprocess.js'][96] = 0;
  51. _$jscoverage['appenders/multiprocess.js'][97] = 0;
  52. _$jscoverage['appenders/multiprocess.js'][98] = 0;
  53. _$jscoverage['appenders/multiprocess.js'][101] = 0;
  54. _$jscoverage['appenders/multiprocess.js'][102] = 0;
  55. _$jscoverage['appenders/multiprocess.js'][103] = 0;
  56. _$jscoverage['appenders/multiprocess.js'][105] = 0;
  57. _$jscoverage['appenders/multiprocess.js'][110] = 0;
  58. _$jscoverage['appenders/multiprocess.js'][111] = 0;
  59. _$jscoverage['appenders/multiprocess.js'][112] = 0;
  60. _$jscoverage['appenders/multiprocess.js'][114] = 0;
  61. _$jscoverage['appenders/multiprocess.js'][118] = 0;
  62. _$jscoverage['appenders/multiprocess.js'][119] = 0;
  63. _$jscoverage['appenders/multiprocess.js'][120] = 0;
  64. _$jscoverage['appenders/multiprocess.js'][121] = 0;
  65. _$jscoverage['appenders/multiprocess.js'][122] = 0;
  66. _$jscoverage['appenders/multiprocess.js'][123] = 0;
  67. _$jscoverage['appenders/multiprocess.js'][125] = 0;
  68. _$jscoverage['appenders/multiprocess.js'][128] = 0;
  69. _$jscoverage['appenders/multiprocess.js'][129] = 0;
  70. }
  71. _$jscoverage['appenders/multiprocess.js'][1]++;
  72. "use strict";
  73. _$jscoverage['appenders/multiprocess.js'][2]++;
  74. var log4js = require("../log4js"), net = require("net"), END_MSG = "__LOG4JS__";
  75. _$jscoverage['appenders/multiprocess.js'][11]++;
  76. function logServer(config) {
  77. _$jscoverage['appenders/multiprocess.js'][17]++;
  78. function deserializeLoggingEvent(clientSocket, msg) {
  79. _$jscoverage['appenders/multiprocess.js'][18]++;
  80. var loggingEvent;
  81. _$jscoverage['appenders/multiprocess.js'][19]++;
  82. try {
  83. _$jscoverage['appenders/multiprocess.js'][20]++;
  84. loggingEvent = JSON.parse(msg);
  85. _$jscoverage['appenders/multiprocess.js'][21]++;
  86. loggingEvent.startTime = new Date(loggingEvent.startTime);
  87. _$jscoverage['appenders/multiprocess.js'][22]++;
  88. loggingEvent.level = log4js.levels.toLevel(loggingEvent.level.levelStr);
  89. }
  90. catch (e) {
  91. _$jscoverage['appenders/multiprocess.js'][25]++;
  92. loggingEvent = {startTime: new Date(), categoryName: "log4js", level: log4js.levels.ERROR, data: ["Unable to parse log:", msg]};
  93. }
  94. _$jscoverage['appenders/multiprocess.js'][33]++;
  95. loggingEvent.remoteAddress = clientSocket.remoteAddress;
  96. _$jscoverage['appenders/multiprocess.js'][34]++;
  97. loggingEvent.remotePort = clientSocket.remotePort;
  98. _$jscoverage['appenders/multiprocess.js'][36]++;
  99. return loggingEvent;
  100. }
  101. _$jscoverage['appenders/multiprocess.js'][39]++;
  102. var actualAppender = config.actualAppender, server = net.createServer((function serverCreated(clientSocket) {
  103. _$jscoverage['appenders/multiprocess.js'][41]++;
  104. clientSocket.setEncoding("utf8");
  105. _$jscoverage['appenders/multiprocess.js'][42]++;
  106. var logMessage = "";
  107. _$jscoverage['appenders/multiprocess.js'][44]++;
  108. function logTheMessage(msg) {
  109. _$jscoverage['appenders/multiprocess.js'][45]++;
  110. if (logMessage.length > 0) {
  111. _$jscoverage['appenders/multiprocess.js'][46]++;
  112. actualAppender(deserializeLoggingEvent(clientSocket, msg));
  113. }
  114. }
  115. _$jscoverage['appenders/multiprocess.js'][50]++;
  116. function chunkReceived(chunk) {
  117. _$jscoverage['appenders/multiprocess.js'][51]++;
  118. var event;
  119. _$jscoverage['appenders/multiprocess.js'][52]++;
  120. logMessage += chunk || "";
  121. _$jscoverage['appenders/multiprocess.js'][53]++;
  122. if (logMessage.indexOf(END_MSG) > -1) {
  123. _$jscoverage['appenders/multiprocess.js'][54]++;
  124. event = logMessage.substring(0, logMessage.indexOf(END_MSG));
  125. _$jscoverage['appenders/multiprocess.js'][55]++;
  126. logTheMessage(event);
  127. _$jscoverage['appenders/multiprocess.js'][56]++;
  128. logMessage = logMessage.substring(event.length + END_MSG.length) || "";
  129. _$jscoverage['appenders/multiprocess.js'][58]++;
  130. chunkReceived();
  131. }
  132. }
  133. _$jscoverage['appenders/multiprocess.js'][62]++;
  134. clientSocket.on("data", chunkReceived);
  135. _$jscoverage['appenders/multiprocess.js'][63]++;
  136. clientSocket.on("end", chunkReceived);
  137. }));
  138. _$jscoverage['appenders/multiprocess.js'][66]++;
  139. server.listen(config.loggerPort || 5000, config.loggerHost || "localhost");
  140. _$jscoverage['appenders/multiprocess.js'][68]++;
  141. return actualAppender;
  142. }
  143. _$jscoverage['appenders/multiprocess.js'][71]++;
  144. function workerAppender(config) {
  145. _$jscoverage['appenders/multiprocess.js'][72]++;
  146. var canWrite = false, buffer = [], socket;
  147. _$jscoverage['appenders/multiprocess.js'][76]++;
  148. createSocket();
  149. _$jscoverage['appenders/multiprocess.js'][78]++;
  150. function createSocket() {
  151. _$jscoverage['appenders/multiprocess.js'][79]++;
  152. socket = net.createConnection(config.loggerPort || 5000, config.loggerHost || "localhost");
  153. _$jscoverage['appenders/multiprocess.js'][80]++;
  154. socket.on("connect", (function () {
  155. _$jscoverage['appenders/multiprocess.js'][81]++;
  156. emptyBuffer();
  157. _$jscoverage['appenders/multiprocess.js'][82]++;
  158. canWrite = true;
  159. }));
  160. _$jscoverage['appenders/multiprocess.js'][84]++;
  161. socket.on("timeout", socket.end.bind(socket));
  162. _$jscoverage['appenders/multiprocess.js'][86]++;
  163. socket.on("close", createSocket);
  164. }
  165. _$jscoverage['appenders/multiprocess.js'][89]++;
  166. function emptyBuffer() {
  167. _$jscoverage['appenders/multiprocess.js'][90]++;
  168. var evt;
  169. _$jscoverage['appenders/multiprocess.js'][91]++;
  170. while ((evt = buffer.shift())) {
  171. _$jscoverage['appenders/multiprocess.js'][92]++;
  172. write(evt);
  173. }
  174. }
  175. _$jscoverage['appenders/multiprocess.js'][96]++;
  176. function write(loggingEvent) {
  177. _$jscoverage['appenders/multiprocess.js'][97]++;
  178. socket.write(JSON.stringify(loggingEvent), "utf8");
  179. _$jscoverage['appenders/multiprocess.js'][98]++;
  180. socket.write(END_MSG, "utf8");
  181. }
  182. _$jscoverage['appenders/multiprocess.js'][101]++;
  183. return (function log(loggingEvent) {
  184. _$jscoverage['appenders/multiprocess.js'][102]++;
  185. if (canWrite) {
  186. _$jscoverage['appenders/multiprocess.js'][103]++;
  187. write(loggingEvent);
  188. }
  189. else {
  190. _$jscoverage['appenders/multiprocess.js'][105]++;
  191. buffer.push(loggingEvent);
  192. }
  193. });
  194. }
  195. _$jscoverage['appenders/multiprocess.js'][110]++;
  196. function createAppender(config) {
  197. _$jscoverage['appenders/multiprocess.js'][111]++;
  198. if (config.mode === "master") {
  199. _$jscoverage['appenders/multiprocess.js'][112]++;
  200. return logServer(config);
  201. }
  202. else {
  203. _$jscoverage['appenders/multiprocess.js'][114]++;
  204. return workerAppender(config);
  205. }
  206. }
  207. _$jscoverage['appenders/multiprocess.js'][118]++;
  208. function configure(config, options) {
  209. _$jscoverage['appenders/multiprocess.js'][119]++;
  210. var actualAppender;
  211. _$jscoverage['appenders/multiprocess.js'][120]++;
  212. if (config.appender && config.mode === "master") {
  213. _$jscoverage['appenders/multiprocess.js'][121]++;
  214. log4js.loadAppender(config.appender.type);
  215. _$jscoverage['appenders/multiprocess.js'][122]++;
  216. actualAppender = log4js.appenderMakers[config.appender.type](config.appender, options);
  217. _$jscoverage['appenders/multiprocess.js'][123]++;
  218. config.actualAppender = actualAppender;
  219. }
  220. _$jscoverage['appenders/multiprocess.js'][125]++;
  221. return createAppender(config);
  222. }
  223. _$jscoverage['appenders/multiprocess.js'][128]++;
  224. exports.appender = createAppender;
  225. _$jscoverage['appenders/multiprocess.js'][129]++;
  226. exports.configure = configure;
  227. _$jscoverage['appenders/multiprocess.js'].source = ["\"use strict\";","var log4js = require('../log4js')",", net = require('net')",", END_MSG = '__LOG4JS__';","","/**"," * Creates a server, listening on config.loggerPort, config.loggerHost."," * Output goes to config.actualAppender (config.appender is used to"," * set up that appender)."," */","function logServer(config) {"," "," /**"," * Takes a utf-8 string, returns an object with"," * the correct log properties."," */"," function deserializeLoggingEvent(clientSocket, msg) {"," var loggingEvent;"," try {"," loggingEvent = JSON.parse(msg);"," loggingEvent.startTime = new Date(loggingEvent.startTime);"," loggingEvent.level = log4js.levels.toLevel(loggingEvent.level.levelStr);"," } catch (e) {"," // JSON.parse failed, just log the contents probably a naughty."," loggingEvent = {"," startTime: new Date(),"," categoryName: 'log4js',"," level: log4js.levels.ERROR,"," data: [ 'Unable to parse log:', msg ]"," };"," }",""," loggingEvent.remoteAddress = clientSocket.remoteAddress;"," loggingEvent.remotePort = clientSocket.remotePort;"," "," return loggingEvent;"," }"," "," var actualAppender = config.actualAppender,"," server = net.createServer(function serverCreated(clientSocket) {"," clientSocket.setEncoding('utf8');"," var logMessage = '';"," "," function logTheMessage(msg) {"," if (logMessage.length > 0) {"," actualAppender(deserializeLoggingEvent(clientSocket, msg));"," }"," }"," "," function chunkReceived(chunk) {"," var event;"," logMessage += chunk || '';"," if (logMessage.indexOf(END_MSG) > -1) {"," event = logMessage.substring(0, logMessage.indexOf(END_MSG));"," logTheMessage(event);"," logMessage = logMessage.substring(event.length + END_MSG.length) || '';"," //check for more, maybe it was a big chunk"," chunkReceived();"," }"," }"," "," clientSocket.on('data', chunkReceived);"," clientSocket.on('end', chunkReceived);"," });"," "," server.listen(config.loggerPort || 5000, config.loggerHost || 'localhost');"," "," return actualAppender;","}","","function workerAppender(config) {"," var canWrite = false,"," buffer = [],"," socket;"," "," createSocket();"," "," function createSocket() {"," socket = net.createConnection(config.loggerPort || 5000, config.loggerHost || 'localhost');"," socket.on('connect', function() {"," emptyBuffer();"," canWrite = true;"," });"," socket.on('timeout', socket.end.bind(socket));"," //don't bother listening for 'error', 'close' gets called after that anyway"," socket.on('close', createSocket);"," }"," "," function emptyBuffer() {"," var evt;"," while ((evt = buffer.shift())) {"," write(evt);"," }"," }"," "," function write(loggingEvent) {"," socket.write(JSON.stringify(loggingEvent), 'utf8');"," socket.write(END_MSG, 'utf8');"," }"," "," return function log(loggingEvent) {"," if (canWrite) {"," write(loggingEvent);"," } else {"," buffer.push(loggingEvent);"," }"," };","}","","function createAppender(config) {"," if (config.mode === 'master') {"," return logServer(config);"," } else {"," return workerAppender(config);"," }","}","","function configure(config, options) {"," var actualAppender;"," if (config.appender && config.mode === 'master') {"," log4js.loadAppender(config.appender.type);"," actualAppender = log4js.appenderMakers[config.appender.type](config.appender, options);"," config.actualAppender = actualAppender;"," }"," return createAppender(config);","}","","exports.appender = createAppender;","exports.configure = configure;"];