From 96a41a5f17440e5d0fe31d0fc924361aeddcd157 Mon Sep 17 00:00:00 2001 From: Jakob Ackermann Date: Mon, 23 Mar 2020 16:18:07 +0100 Subject: [PATCH 1/3] [misc] bump logger-sharelatex to 1.9.1 --- package-lock.json | 6 +++--- package.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) 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", From 4a26ec975f082971b023e90c9d501b530285925f Mon Sep 17 00:00:00 2001 From: Jakob Ackermann Date: Fri, 27 Mar 2020 10:39:45 +0100 Subject: [PATCH 2/3] [misc] keep up with the error signature of dockerode/docker-modem https://github.com/apocas/docker-modem/blob/v2.1.1/lib/modem.js#L296 --- app/js/DockerRunner.js | 6 +----- test/unit/js/DockerRunnerTests.js | 6 +++--- 2 files changed, 4 insertions(+), 8 deletions(-) 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/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) } From 638d2f30d3f7f3a78b1bbf586fdb8398428e4c04 Mon Sep 17 00:00:00 2001 From: Jakob Ackermann Date: Thu, 26 Mar 2020 11:18:50 +0100 Subject: [PATCH 3/3] [misc] add a metric for failing downloads --- app/js/ResourceWriter.js | 1 + test/unit/js/ResourceWriterTests.js | 1 + 2 files changed, 2 insertions(+) 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/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() {