From 54dabe4c3d1f48488fe4f786d90bbb68971ad2d4 Mon Sep 17 00:00:00 2001
From: build-pipeline <build-token>
Date: Fri, 20 Aug 2021 12:35:27 +0000
Subject: [PATCH] publish: feat(dacc): add better error handling

generated from commit a02a8b8802bc31c1697d4d24d62297aec7c296ee
---
 services/aggregatorUsageEvents/ecolyo.js | 16 +++++++++++++++-
 1 file changed, 15 insertions(+), 1 deletion(-)

diff --git a/services/aggregatorUsageEvents/ecolyo.js b/services/aggregatorUsageEvents/ecolyo.js
index f390ede00..fc296a5b8 100644
--- a/services/aggregatorUsageEvents/ecolyo.js
+++ b/services/aggregatorUsageEvents/ecolyo.js
@@ -143,7 +143,9 @@ var __signature__ = typeof reactHotLoaderGlobal !== 'undefined' ? reactHotLoader
 const log = _cozyLogger.default.namespace('aggregatorUsageEvents');
 
 // Store all id of events read during the process
-const readUsageEvents = [];
+const readUsageEvents = []; // Store error events
+
+const errorEvent = [];
 
 const sendIndicator = async (indicator, client) => {
   try {
@@ -973,6 +975,17 @@ const AggregatorUsageEvents = async ({
   const uniqueReadUsageEvents = (0, _lodash.uniq)(readUsageEvents);
   log('info', `Tag aggregated usage: total of ${uniqueReadUsageEvents.length} events`);
   await _usageEvent.default.updateUsageEventsAggregated(client, uniqueReadUsageEvents);
+
+  if (errorEvent.length > 0) {
+    // Build error
+    let error = `Process end with ${errorEvent.length} errors : `;
+    errorEvent.forEach(el => {
+      error += `${el.doctype}, `;
+    });
+    log('error', error);
+    throw error;
+  }
+
   log('info', 'End of service');
 };
 
@@ -988,6 +1001,7 @@ const AggregatorUsageEvents = async ({
 
   reactHotLoader.register(log, "log", "/builds/web-et-numerique/llle_project/ecolyo/src/targets/services/aggregatorUsageEvents.ts");
   reactHotLoader.register(readUsageEvents, "readUsageEvents", "/builds/web-et-numerique/llle_project/ecolyo/src/targets/services/aggregatorUsageEvents.ts");
+  reactHotLoader.register(errorEvent, "errorEvent", "/builds/web-et-numerique/llle_project/ecolyo/src/targets/services/aggregatorUsageEvents.ts");
   reactHotLoader.register(sendIndicator, "sendIndicator", "/builds/web-et-numerique/llle_project/ecolyo/src/targets/services/aggregatorUsageEvents.ts");
   reactHotLoader.register(reduceEvents, "reduceEvents", "/builds/web-et-numerique/llle_project/ecolyo/src/targets/services/aggregatorUsageEvents.ts");
   reactHotLoader.register(sendAggregatedEventByDay, "sendAggregatedEventByDay", "/builds/web-et-numerique/llle_project/ecolyo/src/targets/services/aggregatorUsageEvents.ts");
-- 
GitLab