jenkins-bot has submitted this change and it was merged. Change subject: Unify logging through the service wrapper ......................................................................
Unify logging through the service wrapper Basically, log everything through winston Updates to bundler / latexer: - https://gerrit.wikimedia.org/r/#/c/151215 - https://gerrit.wikimedia.org/r/#/c/151222 Change-Id: I2dcb3d8d45d010915c0e636acaa4ea2c9c017af6 --- M lib/threads/backend.js 1 file changed, 52 insertions(+), 28 deletions(-) Approvals: Cscott: Looks good to me, approved jenkins-bot: Verified diff --git a/lib/threads/backend.js b/lib/threads/backend.js index 3a38773..8accbad 100644 --- a/lib/threads/backend.js +++ b/lib/threads/backend.js @@ -317,6 +317,56 @@ } /** + * Process a received child process message + * + * @param message The message object + * @param jobDetails The current job details context + * @param part What child process ( bundler / renderer ) + */ +function processReceivedMessage( message, jobDetails, part ) { + var logPrefix, jdUpdateFn; + if ( part === 'bundler' ) { + logPrefix = 'backend.bundler.bin'; + jdUpdateFn = jobDetails.updateBundling; + } else if ( part === 'renderer' ) { + logPrefix = 'backend.renderer.bin'; + jdUpdateFn = jobDetails.updateRendering; + } + if ( message.type === 'status' ) { + jdUpdateFn.call( + jobDetails, + message.file, message.message, message.percent + ); + redisClient + .hset( config.redis.status_set_name, + jobDetails.collectionId, + JSON.stringify( jobDetails ) + ).catch( function ( err ) { + console.warn( "Could not report status to client: " + err, { + channel: logPrefix + '.error', + error: eh.jsonify( err ), + job: { id: jobDetails.collectionId, writer: jobDetails.writer } + } ); + } ); + } else if ( message.type === 'log' ) { + var msglevel = message.level || 'info'; + console[msglevel]( message.stack || message.message, { + channel: logPrefix, + job: { + id: jobDetails.collectionId, + writer: jobDetails.writer + } + }); + } else { + console.error( '%s emitted message with unknown type', part, { + channel: logPrefix + '.error', + job: { id: jobDetails.collectionId, writer: jobDetails.writer }, + rxmsg: message + } ); + } +} + +/** * Fork the bundler process and resolve the promise when done * * @param jobDetails @@ -342,7 +392,6 @@ child = child_process.fork( config.backend.bundler.bin, [ '--no-compat', - '--syslog', '-p', config.backend.bundler.parsoid_prefix, '-a', config.backend.bundler.parsoid_api, '-m', metabookPath, @@ -359,19 +408,7 @@ ); } ); child.on( 'message', function ( message, handle ) { - jobDetails.updateBundling( message.file, message.status, message.percent ); - redisClient - .hset( config.redis.status_set_name, - jobDetails.collectionId, - JSON.stringify( jobDetails ) - ) - .catch(function( err ) { - console.warn( "Could not report status to client: " + err, { - channel: 'backend.bundler.error', - error: eh.jsonify( err ), - job: { id: jobDetails.collectionId, writer: jobDetails.writer } - } ); - } ); + processReceivedMessage( message, jobDetails, 'bundler' ); } ); child.on( 'exit', function ( code, signal ) { if ( killTimer ) { @@ -456,7 +493,6 @@ } ); child = child_process.fork( config.backend.writers[writer].bin, [ - '--syslog', '-T', renderTempDir, '-o', renderFile ].concat( @@ -474,19 +510,7 @@ ); } ); child.on( 'message', function ( message, handle ) { - jobDetails.updateRendering( message.file, message.status, message.percent ); - redisClient - .hset( config.redis.status_set_name, - jobDetails.collectionId, - JSON.stringify( jobDetails ) - ) - .catch( function( err ) { - console.warn( "Could not report status to client: " + err, { - channel: 'backend.renderer.error', - error: eh.jsonify( err ), - job: { id: jobDetails.collectionId, writer: jobDetails.writer } - } ); - } ); + processReceivedMessage( message, jobDetails, 'renderer' ); } ); child.on( 'exit', function ( code, signal ) { if ( killTimer ) { -- To view, visit https://gerrit.wikimedia.org/r/151224 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: I2dcb3d8d45d010915c0e636acaa4ea2c9c017af6 Gerrit-PatchSet: 4 Gerrit-Project: mediawiki/extensions/Collection/OfflineContentGenerator Gerrit-Branch: master Gerrit-Owner: Mwalker <[email protected]> Gerrit-Reviewer: Arlolra <[email protected]> Gerrit-Reviewer: Cscott <[email protected]> Gerrit-Reviewer: GWicke <[email protected]> Gerrit-Reviewer: Marcoil <[email protected]> Gerrit-Reviewer: MaxSem <[email protected]> Gerrit-Reviewer: Subramanya Sastry <[email protected]> Gerrit-Reviewer: jenkins-bot <> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
