summaryrefslogtreecommitdiff
path: root/service_telemetry.js
diff options
context:
space:
mode:
Diffstat (limited to 'service_telemetry.js')
-rw-r--r--service_telemetry.js18
1 files changed, 15 insertions, 3 deletions
diff --git a/service_telemetry.js b/service_telemetry.js
index 7dfac51..a78241a 100644
--- a/service_telemetry.js
+++ b/service_telemetry.js
@@ -23,15 +23,27 @@ module.exports = class Analyzer extends Service {
logger.info("requesting download for Telemetry", { api_id: req.params.match });
const category = req.params.category || "regular",
db = this.getDatabase(category),
- asset = await db.Asset.findOne({ where: {
- match_api_id: req.params.match
- } });
+ asset = await db.Asset.findOne({
+ attributes: [ "url" ],
+ where: {
+ match_api_id: req.params.match
+ }
+ });
+
if (asset == undefined) {
logger.error("could not find any assets for match",
{ api_id: req.params.match });
res.sendStatus(404);
return;
}
+
+ const existing = await db.ParticipantPhases.count({ where: { match_api_id: req.params.match }});
+ if (existing > 0) {
+ logger.info("Telemetry already downloaded", { api_id: req.params.match });
+ res.sendStatus(304);
+ return;
+ }
+
await this.forward(this.getTarget(category), asset.url, {
persistent: true,
headers: { match_api_id: req.params.match }