diff --git a/app/js/DockerRunner.js b/app/js/DockerRunner.js index 393ce3d..3594b3a 100644 --- a/app/js/DockerRunner.js +++ b/app/js/DockerRunner.js @@ -99,11 +99,7 @@ module.exports = DockerRunner = { error, output ) { - if ( - __guard__(error != null ? error.message : undefined, x => - x.match('HTTP code is 500') - ) - ) { + if (error && error.statusCode === 500) { logger.log( { err: error, project_id }, 'error running container so destroying and retrying' diff --git a/app/js/ResourceWriter.js b/app/js/ResourceWriter.js index 5a234e0..ed3a1e8 100644 --- a/app/js/ResourceWriter.js +++ b/app/js/ResourceWriter.js @@ -324,6 +324,7 @@ module.exports = ResourceWriter = { }, 'error downloading file for resources' ) + Metrics.inc('download-failed') } return callback() } diff --git a/package-lock.json b/package-lock.json index 9167d62..c64e7d4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3816,9 +3816,9 @@ } }, "logger-sharelatex": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/logger-sharelatex/-/logger-sharelatex-1.9.0.tgz", - "integrity": "sha512-yVTuha82047IiMOQLgQHCZGKkJo6I2+2KtiFKpgkIooR2yZaoTEvAeoMwBesSDSpGUpvUJ/+9UI+PmRyc+PQKQ==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/logger-sharelatex/-/logger-sharelatex-1.9.1.tgz", + "integrity": "sha512-9s6JQnH/PN+Js2CmI8+J3MQCTNlRzP2Dh4pcekXrV6Jm5J4HzyPi+6d3zfBskZ4NBmaUVw9hC4p5dmdaRmh4mQ==", "requires": { "@google-cloud/logging-bunyan": "^2.0.0", "@overleaf/o-error": "^2.0.0", diff --git a/package.json b/package.json index ed0db3e..00440a8 100644 --- a/package.json +++ b/package.json @@ -26,7 +26,7 @@ "fs-extra": "^8.1.0", "heapdump": "^0.3.15", "lockfile": "^1.0.4", - "logger-sharelatex": "^1.9.0", + "logger-sharelatex": "^1.9.1", "lynx": "0.2.0", "metrics-sharelatex": "^2.6.0", "mysql": "^2.18.1", diff --git a/test/unit/js/DockerRunnerTests.js b/test/unit/js/DockerRunnerTests.js index eea66b1..8399283 100644 --- a/test/unit/js/DockerRunnerTests.js +++ b/test/unit/js/DockerRunnerTests.js @@ -202,9 +202,9 @@ describe('DockerRunner', function() { } if (firstTime) { firstTime = false - return callback( - new Error('HTTP code is 500 which indicates error: server error') - ) + const error = new Error('(HTTP code 500) server error - ...') + error.statusCode = 500 + return callback(error) } else { return callback(null, this.output) } diff --git a/test/unit/js/ResourceWriterTests.js b/test/unit/js/ResourceWriterTests.js index 68aa456..a632c1b 100644 --- a/test/unit/js/ResourceWriterTests.js +++ b/test/unit/js/ResourceWriterTests.js @@ -36,6 +36,7 @@ describe('ResourceWriter', function() { './OutputFileFinder': (this.OutputFileFinder = {}), 'logger-sharelatex': { log: sinon.stub(), err: sinon.stub() }, './Metrics': (this.Metrics = { + inc: sinon.stub(), Timer: (Timer = (function() { Timer = class Timer { static initClass() {