From 42dc2915ea6e5bf61c54457c2bc694f29e7144b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Garc=C3=ADa=20Aubert?= Date: Mon, 27 Apr 2020 11:41:37 +0200 Subject: [PATCH] Send pubsub metrics once the response has finished --- lib/api/middlewares/pubsub-metrics.js | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/lib/api/middlewares/pubsub-metrics.js b/lib/api/middlewares/pubsub-metrics.js index c397dc2f..4dbdee00 100644 --- a/lib/api/middlewares/pubsub-metrics.js +++ b/lib/api/middlewares/pubsub-metrics.js @@ -5,15 +5,19 @@ const MAX_LENGTH = 100; function pubSubMetrics (pubSubMetricsBackend) { if (!pubSubMetricsBackend.isEnabled()) { - return function pubSubMetricsDisabledMiddleware (req, res, next) { next(); }; + return function pubSubMetricsDisabledMiddleware (req, res, next) { + next(); + }; } return function pubSubMetricsMiddleware (req, res, next) { - const data = getEventData(req, res); + res.on('finish', () => { + const { event, attributes } = getEventData(req, res); - if (data.event) { - pubSubMetricsBackend.sendEvent(data.event, data.attributes); - } + if (event) { + pubSubMetricsBackend.sendEvent(event, attributes); + } + }); return next(); };