unleash-server 4.3.1 → 4.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/CHANGELOG.md +1266 -0
  2. package/dist/lib/app.d.ts +1 -3
  3. package/dist/lib/app.js +3 -3
  4. package/dist/lib/app.js.map +1 -1
  5. package/dist/lib/create-config.js +2 -0
  6. package/dist/lib/create-config.js.map +1 -1
  7. package/dist/lib/db/client-instance-store.d.ts +1 -0
  8. package/dist/lib/db/client-instance-store.js +7 -0
  9. package/dist/lib/db/client-instance-store.js.map +1 -1
  10. package/dist/lib/db/client-metrics-store-v2.d.ts +1 -0
  11. package/dist/lib/db/client-metrics-store-v2.js +8 -0
  12. package/dist/lib/db/client-metrics-store-v2.js.map +1 -1
  13. package/dist/lib/db/feature-strategy-store.js +1 -0
  14. package/dist/lib/db/feature-strategy-store.js.map +1 -1
  15. package/dist/lib/db/index.d.ts +1 -2
  16. package/dist/lib/db/index.js +2 -6
  17. package/dist/lib/db/index.js.map +1 -1
  18. package/dist/lib/db/project-store.js +10 -2
  19. package/dist/lib/db/project-store.js.map +1 -1
  20. package/dist/lib/metrics.js +2 -2
  21. package/dist/lib/metrics.js.map +1 -1
  22. package/dist/lib/metrics.test.js +1 -1
  23. package/dist/lib/metrics.test.js.map +1 -1
  24. package/dist/lib/middleware/oss-authentication.test.js +1 -3
  25. package/dist/lib/middleware/oss-authentication.test.js.map +1 -1
  26. package/dist/lib/routes/admin-api/client-metrics.js +2 -2
  27. package/dist/lib/routes/admin-api/client-metrics.js.map +1 -1
  28. package/dist/lib/routes/admin-api/config.test.js +2 -4
  29. package/dist/lib/routes/admin-api/config.test.js.map +1 -1
  30. package/dist/lib/routes/admin-api/context.test.js +2 -4
  31. package/dist/lib/routes/admin-api/context.test.js.map +1 -1
  32. package/dist/lib/routes/admin-api/email.test.js +1 -3
  33. package/dist/lib/routes/admin-api/email.test.js.map +1 -1
  34. package/dist/lib/routes/admin-api/events.test.js +1 -3
  35. package/dist/lib/routes/admin-api/events.test.js.map +1 -1
  36. package/dist/lib/routes/admin-api/feature.js +1 -1
  37. package/dist/lib/routes/admin-api/feature.js.map +1 -1
  38. package/dist/lib/routes/admin-api/metrics.d.ts +3 -6
  39. package/dist/lib/routes/admin-api/metrics.js +17 -31
  40. package/dist/lib/routes/admin-api/metrics.js.map +1 -1
  41. package/dist/lib/routes/admin-api/metrics.test.js +6 -65
  42. package/dist/lib/routes/admin-api/metrics.test.js.map +1 -1
  43. package/dist/lib/routes/admin-api/strategy.test.js +2 -4
  44. package/dist/lib/routes/admin-api/strategy.test.js.map +1 -1
  45. package/dist/lib/routes/admin-api/tag.test.js +2 -4
  46. package/dist/lib/routes/admin-api/tag.test.js.map +1 -1
  47. package/dist/lib/routes/admin-api/user.test.js +1 -3
  48. package/dist/lib/routes/admin-api/user.test.js.map +1 -1
  49. package/dist/lib/routes/backstage.test.js +2 -4
  50. package/dist/lib/routes/backstage.test.js.map +1 -1
  51. package/dist/lib/routes/client-api/feature.test.js +2 -4
  52. package/dist/lib/routes/client-api/feature.test.js.map +1 -1
  53. package/dist/lib/routes/client-api/metrics.d.ts +4 -4
  54. package/dist/lib/routes/client-api/metrics.js +3 -3
  55. package/dist/lib/routes/client-api/metrics.js.map +1 -1
  56. package/dist/lib/routes/client-api/metrics.test.js +5 -7
  57. package/dist/lib/routes/client-api/metrics.test.js.map +1 -1
  58. package/dist/lib/routes/client-api/register.d.ts +3 -3
  59. package/dist/lib/routes/client-api/register.js +2 -2
  60. package/dist/lib/routes/client-api/register.js.map +1 -1
  61. package/dist/lib/routes/client-api/register.test.js +2 -4
  62. package/dist/lib/routes/client-api/register.test.js.map +1 -1
  63. package/dist/lib/routes/health-check.test.js +3 -5
  64. package/dist/lib/routes/health-check.test.js.map +1 -1
  65. package/dist/lib/routes/index.test.js +2 -4
  66. package/dist/lib/routes/index.test.js.map +1 -1
  67. package/dist/lib/server-impl.js +4 -7
  68. package/dist/lib/server-impl.js.map +1 -1
  69. package/dist/lib/services/client-metrics/instance-service.d.ts +31 -0
  70. package/dist/lib/services/client-metrics/instance-service.js +125 -0
  71. package/dist/lib/services/client-metrics/instance-service.js.map +1 -0
  72. package/dist/lib/{db/client-metrics-store.test.d.ts → services/client-metrics/instance-service.test.d.ts} +0 -0
  73. package/dist/lib/services/client-metrics/instance-service.test.js +193 -0
  74. package/dist/lib/services/client-metrics/instance-service.test.js.map +1 -0
  75. package/dist/lib/services/client-metrics/{client-metrics-service-v2.d.ts → metrics-service-v2.d.ts} +3 -1
  76. package/dist/lib/services/client-metrics/{client-metrics-service-v2.js → metrics-service-v2.js} +12 -5
  77. package/dist/lib/services/client-metrics/metrics-service-v2.js.map +1 -0
  78. package/dist/lib/services/client-metrics/schema.d.ts +4 -0
  79. package/dist/lib/services/client-metrics/schema.js +63 -0
  80. package/dist/lib/services/client-metrics/schema.js.map +1 -0
  81. package/dist/lib/services/index.js +5 -5
  82. package/dist/lib/services/index.js.map +1 -1
  83. package/dist/lib/services/project-health-service.js +1 -0
  84. package/dist/lib/services/project-health-service.js.map +1 -1
  85. package/dist/lib/types/events.d.ts +1 -0
  86. package/dist/lib/types/events.js +2 -1
  87. package/dist/lib/types/events.js.map +1 -1
  88. package/dist/lib/types/model.d.ts +2 -0
  89. package/dist/lib/types/model.js.map +1 -1
  90. package/dist/lib/types/option.d.ts +3 -0
  91. package/dist/lib/types/option.js.map +1 -1
  92. package/dist/lib/types/services.d.ts +3 -3
  93. package/dist/lib/types/stores/client-instance-store.d.ts +1 -0
  94. package/dist/lib/types/stores/client-metrics-store-v2.d.ts +1 -0
  95. package/dist/lib/types/stores/project-store.d.ts +1 -0
  96. package/dist/lib/types/stores.d.ts +0 -2
  97. package/dist/migrations/20211130142314-add-updated-at-to-projects.d.ts +2 -0
  98. package/dist/migrations/20211130142314-add-updated-at-to-projects.js +8 -0
  99. package/dist/migrations/20211130142314-add-updated-at-to-projects.js.map +1 -0
  100. package/dist/migrations/20211209205201-drop-client-metrics.d.ts +2 -0
  101. package/dist/migrations/20211209205201-drop-client-metrics.js +13 -0
  102. package/dist/migrations/20211209205201-drop-client-metrics.js.map +1 -0
  103. package/dist/test/e2e/api/admin/metrics.e2e.test.js +6 -74
  104. package/dist/test/e2e/api/admin/metrics.e2e.test.js.map +1 -1
  105. package/dist/test/e2e/api/admin/project/features.e2e.test.js +43 -0
  106. package/dist/test/e2e/api/admin/project/features.e2e.test.js.map +1 -1
  107. package/dist/test/e2e/api/admin/project/project.health.e2e.test.js +12 -0
  108. package/dist/test/e2e/api/admin/project/project.health.e2e.test.js.map +1 -1
  109. package/dist/test/e2e/api/client/metrics.e2e.access.e2e.test.js +3 -3
  110. package/dist/test/e2e/api/client/metrics.e2e.access.e2e.test.js.map +1 -1
  111. package/dist/test/e2e/helpers/database-init.js +2 -6
  112. package/dist/test/e2e/helpers/database-init.js.map +1 -1
  113. package/dist/test/e2e/helpers/test-helper.js +2 -2
  114. package/dist/test/e2e/helpers/test-helper.js.map +1 -1
  115. package/dist/test/e2e/services/client-metrics-service.e2e.test.js +7 -7
  116. package/dist/test/e2e/services/client-metrics-service.e2e.test.js.map +1 -1
  117. package/dist/test/e2e/stores/project-store.e2e.test.js +1 -0
  118. package/dist/test/e2e/stores/project-store.e2e.test.js.map +1 -1
  119. package/dist/test/fixtures/fake-client-instance-store.d.ts +1 -0
  120. package/dist/test/fixtures/fake-client-instance-store.js +3 -0
  121. package/dist/test/fixtures/fake-client-instance-store.js.map +1 -1
  122. package/dist/test/fixtures/fake-client-metrics-store-v2.d.ts +2 -2
  123. package/dist/test/fixtures/fake-client-metrics-store-v2.js +3 -0
  124. package/dist/test/fixtures/fake-client-metrics-store-v2.js.map +1 -1
  125. package/dist/test/fixtures/store.js +0 -2
  126. package/dist/test/fixtures/store.js.map +1 -1
  127. package/package.json +9 -9
  128. package/dist/lib/db/client-metrics-db.d.ts +0 -18
  129. package/dist/lib/db/client-metrics-db.js +0 -94
  130. package/dist/lib/db/client-metrics-db.js.map +0 -1
  131. package/dist/lib/db/client-metrics-store.d.ts +0 -31
  132. package/dist/lib/db/client-metrics-store.js +0 -85
  133. package/dist/lib/db/client-metrics-store.js.map +0 -1
  134. package/dist/lib/db/client-metrics-store.test.js +0 -87
  135. package/dist/lib/db/client-metrics-store.test.js.map +0 -1
  136. package/dist/lib/services/client-metrics/client-metrics-schema.d.ts +0 -2
  137. package/dist/lib/services/client-metrics/client-metrics-schema.js +0 -32
  138. package/dist/lib/services/client-metrics/client-metrics-schema.js.map +0 -1
  139. package/dist/lib/services/client-metrics/client-metrics-service-v2.js.map +0 -1
  140. package/dist/lib/services/client-metrics/client-metrics.test.d.ts +0 -1
  141. package/dist/lib/services/client-metrics/client-metrics.test.js +0 -524
  142. package/dist/lib/services/client-metrics/client-metrics.test.js.map +0 -1
  143. package/dist/lib/services/client-metrics/index.d.ts +0 -50
  144. package/dist/lib/services/client-metrics/index.js +0 -267
  145. package/dist/lib/services/client-metrics/index.js.map +0 -1
  146. package/dist/lib/services/client-metrics/list.d.ts +0 -21
  147. package/dist/lib/services/client-metrics/list.js +0 -109
  148. package/dist/lib/services/client-metrics/list.js.map +0 -1
  149. package/dist/lib/services/client-metrics/list.test.d.ts +0 -1
  150. package/dist/lib/services/client-metrics/list.test.js +0 -100
  151. package/dist/lib/services/client-metrics/list.test.js.map +0 -1
  152. package/dist/lib/services/client-metrics/metrics-schema.d.ts +0 -2
  153. package/dist/lib/services/client-metrics/metrics-schema.js +0 -24
  154. package/dist/lib/services/client-metrics/metrics-schema.js.map +0 -1
  155. package/dist/lib/services/client-metrics/projection.d.ts +0 -7
  156. package/dist/lib/services/client-metrics/projection.js +0 -37
  157. package/dist/lib/services/client-metrics/projection.js.map +0 -1
  158. package/dist/lib/services/client-metrics/projection.test.d.ts +0 -1
  159. package/dist/lib/services/client-metrics/projection.test.js +0 -24
  160. package/dist/lib/services/client-metrics/projection.test.js.map +0 -1
  161. package/dist/lib/services/client-metrics/register-schema.d.ts +0 -2
  162. package/dist/lib/services/client-metrics/register-schema.js +0 -23
  163. package/dist/lib/services/client-metrics/register-schema.js.map +0 -1
  164. package/dist/lib/services/client-metrics/ttl-list.d.ts +0 -26
  165. package/dist/lib/services/client-metrics/ttl-list.js +0 -60
  166. package/dist/lib/services/client-metrics/ttl-list.js.map +0 -1
  167. package/dist/lib/services/client-metrics/ttl-list.test.d.ts +0 -1
  168. package/dist/lib/services/client-metrics/ttl-list.test.js +0 -71
  169. package/dist/lib/services/client-metrics/ttl-list.test.js.map +0 -1
  170. package/dist/lib/types/stores/client-metrics-db.d.ts +0 -11
  171. package/dist/lib/types/stores/client-metrics-db.js +0 -3
  172. package/dist/lib/types/stores/client-metrics-db.js.map +0 -1
  173. package/dist/lib/types/stores/client-metrics-store.d.ts +0 -7
  174. package/dist/lib/types/stores/client-metrics-store.js +0 -3
  175. package/dist/lib/types/stores/client-metrics-store.js.map +0 -1
  176. package/dist/test/fixtures/fake-client-metrics-store.d.ts +0 -16
  177. package/dist/test/fixtures/fake-client-metrics-store.js +0 -42
  178. package/dist/test/fixtures/fake-client-metrics-store.js.map +0 -1
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const supertest_1 = __importDefault(require("supertest"));
7
- const events_1 = require("events");
8
7
  const store_1 = __importDefault(require("../../../test/fixtures/store"));
9
8
  const no_logger_1 = __importDefault(require("../../../test/fixtures/no-logger"));
10
9
  const app_1 = __importDefault(require("../../app"));
@@ -12,7 +11,6 @@ const services_1 = require("../../services");
12
11
  const feature_1 = __importDefault(require("./feature"));
13
12
  const test_config_1 = require("../../../test/config/test-config");
14
13
  const date_fns_1 = require("date-fns");
15
- const eventBus = new events_1.EventEmitter();
16
14
  function getSetup() {
17
15
  const base = `/random${Math.round(Math.random() * 1000)}`;
18
16
  const stores = (0, store_1.default)();
@@ -20,7 +18,7 @@ function getSetup() {
20
18
  server: { baseUriPath: base },
21
19
  });
22
20
  const services = (0, services_1.createServices)(stores, config);
23
- const app = (0, app_1.default)(config, stores, services, eventBus);
21
+ const app = (0, app_1.default)(config, stores, services);
24
22
  return {
25
23
  base,
26
24
  featureToggleStore: stores.featureToggleStore,
@@ -28,7 +26,7 @@ function getSetup() {
28
26
  request: (0, supertest_1.default)(app),
29
27
  destroy: () => {
30
28
  services.versionService.destroy();
31
- services.clientMetricsService.destroy();
29
+ services.clientInstanceService.destroy();
32
30
  services.apiTokenService.destroy();
33
31
  },
34
32
  };
@@ -1 +1 @@
1
- {"version":3,"file":"feature.test.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/feature.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"feature.test.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/feature.test.ts"],"names":[],"mappings":"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"}
@@ -2,15 +2,15 @@ import { Response } from 'express';
2
2
  import Controller from '../controller';
3
3
  import { IUnleashServices } from '../../types';
4
4
  import { IUnleashConfig } from '../../types/option';
5
- import ClientMetricsService from '../../services/client-metrics';
5
+ import ClientInstanceService from '../../services/client-metrics/instance-service';
6
6
  import { Logger } from '../../logger';
7
7
  import { IAuthRequest } from '../unleash-types';
8
- import ClientMetricsServiceV2 from '../../services/client-metrics/client-metrics-service-v2';
8
+ import ClientMetricsServiceV2 from '../../services/client-metrics/metrics-service-v2';
9
9
  export default class ClientMetricsController extends Controller {
10
10
  logger: Logger;
11
- metrics: ClientMetricsService;
11
+ clientInstanceService: ClientInstanceService;
12
12
  metricsV2: ClientMetricsServiceV2;
13
- constructor({ clientMetricsService, clientMetricsServiceV2, }: Pick<IUnleashServices, 'clientMetricsService' | 'clientMetricsServiceV2'>, config: IUnleashConfig);
13
+ constructor({ clientInstanceService, clientMetricsServiceV2, }: Pick<IUnleashServices, 'clientInstanceService' | 'clientMetricsServiceV2'>, config: IUnleashConfig);
14
14
  private resolveEnvironment;
15
15
  registerMetrics(req: IAuthRequest, res: Response): Promise<void>;
16
16
  }
@@ -8,11 +8,11 @@ const api_user_1 = __importDefault(require("../../types/api-user"));
8
8
  const api_token_1 = require("../../types/models/api-token");
9
9
  const permissions_1 = require("../../types/permissions");
10
10
  class ClientMetricsController extends controller_1.default {
11
- constructor({ clientMetricsService, clientMetricsServiceV2, }, config) {
11
+ constructor({ clientInstanceService, clientMetricsServiceV2, }, config) {
12
12
  super(config);
13
13
  const { getLogger } = config;
14
14
  this.logger = getLogger('/api/client/metrics');
15
- this.metrics = clientMetricsService;
15
+ this.clientInstanceService = clientInstanceService;
16
16
  this.metricsV2 = clientMetricsServiceV2;
17
17
  this.post('/', this.registerMetrics, permissions_1.NONE);
18
18
  }
@@ -30,7 +30,7 @@ class ClientMetricsController extends controller_1.default {
30
30
  async registerMetrics(req, res) {
31
31
  const { body: data, ip: clientIp, user } = req;
32
32
  data.environment = this.resolveEnvironment(user, data);
33
- await this.metrics.registerClientMetrics(data, clientIp);
33
+ await this.clientInstanceService.registerInstance(data, clientIp);
34
34
  await this.metricsV2.registerClientMetrics(data, clientIp);
35
35
  return res.status(202).end();
36
36
  }
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/metrics.ts"],"names":[],"mappings":";;;;;AACA,+DAAuC;AAMvC,oEAA2C;AAC3C,4DAAmD;AAInD,yDAA+C;AAE/C,MAAqB,uBAAwB,SAAQ,oBAAU;IAO3D,YACI,EACI,oBAAoB,EACpB,sBAAsB,GAIzB,EACD,MAAsB;QAEtB,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;QAE7B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC;QACpC,IAAI,CAAC,SAAS,GAAG,sBAAsB,CAAC;QAExC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,kBAAI,CAAC,CAAC;IAC/C,CAAC;IAEO,kBAAkB,CAAC,IAAU,EAAE,IAAgB;QACnD,IAAI,IAAI,YAAY,kBAAO,EAAE;YACzB,IAAI,IAAI,CAAC,WAAW,KAAK,eAAG,EAAE;gBAC1B,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;iBAAM,IAAI,IAAI,CAAC,WAAW,KAAK,eAAG,IAAI,IAAI,CAAC,WAAW,EAAE;gBACrD,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,GAAiB,EAAE,GAAa;QAClD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAEzD,MAAM,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE3D,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACjC,CAAC;CACJ;AA/CD,0CA+CC"}
1
+ {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/metrics.ts"],"names":[],"mappings":";;;;;AACA,+DAAuC;AAMvC,oEAA2C;AAC3C,4DAAmD;AAInD,yDAA+C;AAE/C,MAAqB,uBAAwB,SAAQ,oBAAU;IAO3D,YACI,EACI,qBAAqB,EACrB,sBAAsB,GAIzB,EACD,MAAsB;QAEtB,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,CAAC;QAE7B,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC,qBAAqB,CAAC,CAAC;QAC/C,IAAI,CAAC,qBAAqB,GAAG,qBAAqB,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,sBAAsB,CAAC;QAExC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,eAAe,EAAE,kBAAI,CAAC,CAAC;IAC/C,CAAC;IAEO,kBAAkB,CAAC,IAAU,EAAE,IAAgB;QACnD,IAAI,IAAI,YAAY,kBAAO,EAAE;YACzB,IAAI,IAAI,CAAC,WAAW,KAAK,eAAG,EAAE;gBAC1B,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;iBAAM,IAAI,IAAI,CAAC,WAAW,KAAK,eAAG,IAAI,IAAI,CAAC,WAAW,EAAE;gBACrD,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,GAAiB,EAAE,GAAa;QAClD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,qBAAqB,CAAC,gBAAgB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAElE,MAAM,IAAI,CAAC,SAAS,CAAC,qBAAqB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAE3D,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACjC,CAAC;CACJ;AA/CD,0CA+CC"}
@@ -4,24 +4,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const supertest_1 = __importDefault(require("supertest"));
7
- const events_1 = require("events");
8
7
  const store_1 = __importDefault(require("../../../test/fixtures/store"));
9
8
  const app_1 = __importDefault(require("../../app"));
10
9
  const test_config_1 = require("../../../test/config/test-config");
11
- const client_metrics_schema_1 = require("../../services/client-metrics/client-metrics-schema");
10
+ const schema_1 = require("../../services/client-metrics/schema");
12
11
  const services_1 = require("../../services");
13
- const eventBus = new events_1.EventEmitter();
14
12
  function getSetup(opts) {
15
13
  const stores = (0, store_1.default)();
16
14
  const config = (0, test_config_1.createTestConfig)(opts);
17
15
  const services = (0, services_1.createServices)(stores, config);
18
- const app = (0, app_1.default)(config, stores, services, eventBus);
16
+ const app = (0, app_1.default)(config, stores, services);
19
17
  return {
20
18
  request: (0, supertest_1.default)(app),
21
19
  stores,
22
20
  destroy: () => {
23
21
  services.versionService.destroy();
24
- services.clientMetricsService.destroy();
22
+ services.clientInstanceService.destroy();
25
23
  services.apiTokenService.destroy();
26
24
  },
27
25
  };
@@ -152,7 +150,7 @@ test('schema allow empty strings', () => {
152
150
  stop: '2019-05-06T09:30:50.515Z',
153
151
  },
154
152
  };
155
- const { error, value } = client_metrics_schema_1.clientMetricsSchema.validate(data);
153
+ const { error, value } = schema_1.clientMetricsSchema.validate(data);
156
154
  expect(error).toBeFalsy();
157
155
  expect(value.bucket.toggles.Demo2.yes).toBe(0);
158
156
  expect(value.bucket.toggles.Demo2.no).toBe(0);
@@ -167,7 +165,7 @@ test('schema allow yes=<string nbr>', () => {
167
165
  stop: '2019-05-06T09:30:50.515Z',
168
166
  },
169
167
  };
170
- const { error, value } = client_metrics_schema_1.clientMetricsSchema.validate(data);
168
+ const { error, value } = schema_1.clientMetricsSchema.validate(data);
171
169
  expect(error).toBeFalsy();
172
170
  expect(value.bucket.toggles.Demo2.yes).toBe(12);
173
171
  expect(value.bucket.toggles.Demo2.no).toBe(256);
@@ -1 +1 @@
1
- {"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/metrics.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metrics.test.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/metrics.test.ts"],"names":[],"mappings":"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"}
@@ -3,12 +3,12 @@ import Controller from '../controller';
3
3
  import { IUnleashServices } from '../../types';
4
4
  import { IUnleashConfig } from '../../types/option';
5
5
  import { Logger } from '../../logger';
6
- import ClientMetricsService from '../../services/client-metrics';
6
+ import ClientInstanceService from '../../services/client-metrics/instance-service';
7
7
  import { IAuthRequest } from '../../server-impl';
8
8
  export default class RegisterController extends Controller {
9
9
  logger: Logger;
10
- metrics: ClientMetricsService;
11
- constructor({ clientMetricsService, }: Pick<IUnleashServices, 'clientMetricsService'>, config: IUnleashConfig);
10
+ metrics: ClientInstanceService;
11
+ constructor({ clientInstanceService, }: Pick<IUnleashServices, 'clientInstanceService'>, config: IUnleashConfig);
12
12
  private resolveEnvironment;
13
13
  handleRegister(req: IAuthRequest, res: Response): Promise<void>;
14
14
  }
@@ -8,10 +8,10 @@ const api_user_1 = __importDefault(require("../../types/api-user"));
8
8
  const api_token_1 = require("../../types/models/api-token");
9
9
  const permissions_1 = require("../../types/permissions");
10
10
  class RegisterController extends controller_1.default {
11
- constructor({ clientMetricsService, }, config) {
11
+ constructor({ clientInstanceService, }, config) {
12
12
  super(config);
13
13
  this.logger = config.getLogger('/api/client/register');
14
- this.metrics = clientMetricsService;
14
+ this.metrics = clientInstanceService;
15
15
  // NONE permission is not optimal here in terms of readability.
16
16
  this.post('/', this.handleRegister, permissions_1.NONE);
17
17
  }
@@ -1 +1 @@
1
- {"version":3,"file":"register.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/register.ts"],"names":[],"mappings":";;;;;AACA,+DAAuC;AAOvC,oEAA2C;AAC3C,4DAAmD;AACnD,yDAA+C;AAE/C,MAAqB,kBAAmB,SAAQ,oBAAU;IAKtD,YACI,EACI,oBAAoB,GACyB,EACjD,MAAsB;QAEtB,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,oBAAoB,CAAC;QAEpC,+DAA+D;QAC/D,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,kBAAI,CAAC,CAAC;IAC9C,CAAC;IAEO,kBAAkB,CAAC,IAAU,EAAE,IAAgB;QACnD,IAAI,IAAI,YAAY,kBAAO,EAAE;YACzB,IAAI,IAAI,CAAC,WAAW,KAAK,eAAG,EAAE;gBAC1B,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;iBAAM,IAAI,IAAI,CAAC,WAAW,KAAK,eAAG,IAAI,IAAI,CAAC,WAAW,EAAE;gBACrD,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,GAAiB,EAAE,GAAa;QACjD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAClD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACjC,CAAC;CACJ;AApCD,qCAoCC"}
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/register.ts"],"names":[],"mappings":";;;;;AACA,+DAAuC;AAOvC,oEAA2C;AAC3C,4DAAmD;AACnD,yDAA+C;AAE/C,MAAqB,kBAAmB,SAAQ,oBAAU;IAKtD,YACI,EACI,qBAAqB,GACyB,EAClD,MAAsB;QAEtB,KAAK,CAAC,MAAM,CAAC,CAAC;QACd,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,sBAAsB,CAAC,CAAC;QACvD,IAAI,CAAC,OAAO,GAAG,qBAAqB,CAAC;QAErC,+DAA+D;QAC/D,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,cAAc,EAAE,kBAAI,CAAC,CAAC;IAC9C,CAAC;IAEO,kBAAkB,CAAC,IAAU,EAAE,IAAgB;QACnD,IAAI,IAAI,YAAY,kBAAO,EAAE;YACzB,IAAI,IAAI,CAAC,WAAW,KAAK,eAAG,EAAE;gBAC1B,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;iBAAM,IAAI,IAAI,CAAC,WAAW,KAAK,eAAG,IAAI,IAAI,CAAC,WAAW,EAAE;gBACrD,OAAO,IAAI,CAAC,WAAW,CAAC;aAC3B;SACJ;QACD,OAAO,SAAS,CAAC;IACrB,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,GAAiB,EAAE,GAAa;QACjD,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC;QAC/C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACvD,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAClD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC;IACjC,CAAC;CACJ;AApCD,qCAoCC"}
@@ -4,24 +4,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const supertest_1 = __importDefault(require("supertest"));
7
- const events_1 = require("events");
8
7
  const test_config_1 = require("../../../test/config/test-config");
9
8
  const store_1 = __importDefault(require("../../../test/fixtures/store"));
10
9
  const no_logger_1 = __importDefault(require("../../../test/fixtures/no-logger"));
11
10
  const app_1 = __importDefault(require("../../app"));
12
11
  const services_1 = require("../../services");
13
- const eventBus = new events_1.EventEmitter();
14
12
  function getSetup() {
15
13
  const stores = (0, store_1.default)();
16
14
  const config = (0, test_config_1.createTestConfig)();
17
15
  const services = (0, services_1.createServices)(stores, config);
18
- const app = (0, app_1.default)(config, stores, services, eventBus);
16
+ const app = (0, app_1.default)(config, stores, services);
19
17
  return {
20
18
  request: (0, supertest_1.default)(app),
21
19
  stores,
22
20
  destroy: () => {
23
21
  services.versionService.destroy();
24
- services.clientMetricsService.destroy();
22
+ services.clientInstanceService.destroy();
25
23
  services.apiTokenService.destroy();
26
24
  },
27
25
  };
@@ -1 +1 @@
1
- {"version":3,"file":"register.test.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/register.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"register.test.js","sourceRoot":"","sources":["../../../../src/lib/routes/client-api/register.test.ts"],"names":[],"mappings":"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"}
@@ -4,24 +4,22 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const supertest_1 = __importDefault(require("supertest"));
7
- const events_1 = require("events");
8
7
  const services_1 = require("../services");
9
8
  const test_config_1 = require("../../test/config/test-config");
10
9
  const store_1 = __importDefault(require("../../test/fixtures/store"));
11
10
  const no_logger_1 = __importDefault(require("../../test/fixtures/no-logger"));
12
11
  const app_1 = __importDefault(require("../app"));
13
- const eventBus = new events_1.EventEmitter();
14
12
  function getSetup() {
15
13
  const stores = (0, store_1.default)();
16
14
  const config = (0, test_config_1.createTestConfig)();
17
15
  const services = (0, services_1.createServices)(stores, config);
18
- const app = (0, app_1.default)(config, stores, services, eventBus);
16
+ const app = (0, app_1.default)(config, stores, services);
19
17
  return {
20
18
  request: (0, supertest_1.default)(app),
21
19
  stores,
22
20
  destroy: () => {
23
21
  services.versionService.destroy();
24
- services.clientMetricsService.destroy();
22
+ services.clientInstanceService.destroy();
25
23
  services.apiTokenService.destroy();
26
24
  },
27
25
  };
@@ -55,7 +53,7 @@ test('should give 500 when db is failing', () => {
55
53
  // @ts-ignore
56
54
  const services = (0, services_1.createServices)(failingStores, config);
57
55
  // @ts-ignore
58
- const app = (0, app_1.default)((0, test_config_1.createTestConfig)(), failingStores, services, eventBus);
56
+ const app = (0, app_1.default)((0, test_config_1.createTestConfig)(), failingStores, services);
59
57
  request = (0, supertest_1.default)(app);
60
58
  no_logger_1.default.setMuteError(true);
61
59
  expect.assertions(2);
@@ -1 +1 @@
1
- {"version":3,"file":"health-check.test.js","sourceRoot":"","sources":["../../../src/lib/routes/health-check.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"health-check.test.js","sourceRoot":"","sources":["../../../src/lib/routes/health-check.test.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const supertest_1 = __importDefault(require("supertest"));
7
- const events_1 = require("events");
8
7
  const test_config_1 = require("../../test/config/test-config");
9
8
  const store_1 = __importDefault(require("../../test/fixtures/store"));
10
9
  const app_1 = __importDefault(require("../app"));
11
10
  const services_1 = require("../services");
12
- const eventBus = new events_1.EventEmitter();
13
11
  function getSetup() {
14
12
  const base = `/random${Math.round(Math.random() * 1000)}`;
15
13
  const stores = (0, store_1.default)();
@@ -17,13 +15,13 @@ function getSetup() {
17
15
  server: { baseUriPath: base },
18
16
  });
19
17
  const services = (0, services_1.createServices)(stores, config);
20
- const app = (0, app_1.default)(config, stores, services, eventBus);
18
+ const app = (0, app_1.default)(config, stores, services);
21
19
  return {
22
20
  base,
23
21
  request: (0, supertest_1.default)(app),
24
22
  destroy: () => {
25
23
  services.versionService.destroy();
26
- services.clientMetricsService.destroy();
24
+ services.clientInstanceService.destroy();
27
25
  services.apiTokenService.destroy();
28
26
  },
29
27
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../src/lib/routes/index.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.test.js","sourceRoot":"","sources":["../../../src/lib/routes/index.test.ts"],"names":[],"mappings":"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"}
@@ -23,7 +23,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
23
23
  };
24
24
  Object.defineProperty(exports, "__esModule", { value: true });
25
25
  exports.IAuthType = exports.RoleName = exports.LogLevel = exports.User = exports.AuthenticationRequired = exports.Controller = exports.eventType = exports.permissions = exports.create = exports.start = void 0;
26
- const events_1 = __importDefault(require("events"));
27
26
  const stoppable_1 = __importDefault(require("stoppable"));
28
27
  const util_1 = require("util");
29
28
  const version_1 = __importDefault(require("./util/version"));
@@ -57,9 +56,8 @@ async function createApp(config, startApp) {
57
56
  // Database dependencies (stateful)
58
57
  const logger = config.getLogger('server-impl.js');
59
58
  const serverVersion = version_1.default;
60
- const eventBus = new events_1.default();
61
59
  const db = (0, db_pool_1.createDb)(config);
62
- const stores = (0, db_1.createStores)(config, eventBus, db);
60
+ const stores = (0, db_1.createStores)(config, db);
63
61
  const services = (0, services_1.createServices)(stores, config);
64
62
  const metricsMonitor = (0, metrics_1.createMetricsMonitor)();
65
63
  const unleashSession = (0, session_db_1.default)(config, db);
@@ -71,7 +69,6 @@ async function createApp(config, startApp) {
71
69
  }
72
70
  metricsMonitor.stopMonitoring();
73
71
  stores.clientInstanceStore.destroy();
74
- stores.clientMetricsStore.destroy();
75
72
  services.clientMetricsServiceV2.destroy();
76
73
  await db.destroy();
77
74
  };
@@ -80,14 +77,14 @@ async function createApp(config, startApp) {
80
77
  // eslint-disable-next-line no-param-reassign
81
78
  config.server.secret = secret;
82
79
  }
83
- const app = (0, app_1.default)(config, stores, services, eventBus, unleashSession);
80
+ const app = (0, app_1.default)(config, stores, services, unleashSession);
84
81
  if (typeof config.eventHook === 'function') {
85
82
  (0, event_hook_1.addEventHook)(config.eventHook, stores.eventStore);
86
83
  }
87
- metricsMonitor.startMonitoring(config, stores, serverVersion, eventBus, db);
84
+ metricsMonitor.startMonitoring(config, stores, serverVersion, config.eventBus, db);
88
85
  const unleash = {
89
86
  stores,
90
- eventBus,
87
+ eventBus: config.eventBus,
91
88
  services,
92
89
  app,
93
90
  config,
@@ -1 +1 @@
1
- {"version":3,"file":"server-impl.js","sourceRoot":"","sources":["../../src/lib/server-impl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server-impl.js","sourceRoot":"","sources":["../../src/lib/server-impl.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,31 @@
1
+ import { IApplication } from './models';
2
+ import { IUnleashStores } from '../../types/stores';
3
+ import { IUnleashConfig } from '../../types/option';
4
+ import { IClientApplication } from '../../types/stores/client-applications-store';
5
+ import { IApplicationQuery } from '../../types/query';
6
+ import { IClientApp } from '../../types/model';
7
+ export default class ClientInstanceService {
8
+ apps: {};
9
+ logger: any;
10
+ seenClients: Record<string, IClientApp>;
11
+ private timers;
12
+ private clientMetricsStoreV2;
13
+ private strategyStore;
14
+ private featureToggleStore;
15
+ private clientApplicationsStore;
16
+ private clientInstanceStore;
17
+ private eventStore;
18
+ private bulkInterval;
19
+ private announcementInterval;
20
+ constructor({ clientMetricsStoreV2, strategyStore, featureToggleStore, clientInstanceStore, clientApplicationsStore, eventStore, }: Pick<IUnleashStores, 'clientMetricsStoreV2' | 'strategyStore' | 'featureToggleStore' | 'clientApplicationsStore' | 'clientInstanceStore' | 'eventStore'>, { getLogger }: Pick<IUnleashConfig, 'getLogger'>, bulkInterval?: number, announcementInterval?: number);
21
+ registerInstance(data: IClientApp, clientIp: string): Promise<void>;
22
+ registerClient(data: IClientApp, clientIp: string): Promise<void>;
23
+ announceUnannounced(): Promise<void>;
24
+ clientKey(client: IClientApp): string;
25
+ bulkAdd(): Promise<void>;
26
+ getApplications(query: IApplicationQuery): Promise<IClientApplication[]>;
27
+ getApplication(appName: string): Promise<IApplication>;
28
+ deleteApplication(appName: string): Promise<void>;
29
+ createApplication(input: IApplication): Promise<void>;
30
+ destroy(): void;
31
+ }
@@ -0,0 +1,125 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const schema_1 = require("./schema");
4
+ const events_1 = require("../../types/events");
5
+ const schema_2 = require("./schema");
6
+ const date_fns_1 = require("date-fns");
7
+ const schema_3 = require("./schema");
8
+ class ClientInstanceService {
9
+ constructor({ clientMetricsStoreV2, strategyStore, featureToggleStore, clientInstanceStore, clientApplicationsStore, eventStore, }, { getLogger }, bulkInterval = (0, date_fns_1.secondsToMilliseconds)(5), announcementInterval = (0, date_fns_1.minutesToMilliseconds)(5)) {
10
+ this.apps = {};
11
+ this.logger = null;
12
+ this.seenClients = {};
13
+ this.timers = [];
14
+ this.clientMetricsStoreV2 = clientMetricsStoreV2;
15
+ this.strategyStore = strategyStore;
16
+ this.featureToggleStore = featureToggleStore;
17
+ this.clientApplicationsStore = clientApplicationsStore;
18
+ this.clientInstanceStore = clientInstanceStore;
19
+ this.eventStore = eventStore;
20
+ this.logger = getLogger('/services/client-metrics/client-instance-service.ts');
21
+ this.bulkInterval = bulkInterval;
22
+ this.announcementInterval = announcementInterval;
23
+ this.timers.push(setInterval(() => this.bulkAdd(), this.bulkInterval).unref());
24
+ this.timers.push(setInterval(() => this.announceUnannounced(), this.announcementInterval).unref());
25
+ }
26
+ async registerInstance(data, clientIp) {
27
+ const value = await schema_3.clientMetricsSchema.validateAsync(data);
28
+ await this.clientInstanceStore.setLastSeen({
29
+ appName: value.appName,
30
+ instanceId: value.instanceId,
31
+ environment: value.environment,
32
+ clientIp: clientIp,
33
+ });
34
+ }
35
+ async registerClient(data, clientIp) {
36
+ const value = await schema_2.clientRegisterSchema.validateAsync(data);
37
+ value.clientIp = clientIp;
38
+ value.createdBy = clientIp;
39
+ this.seenClients[this.clientKey(value)] = value;
40
+ }
41
+ async announceUnannounced() {
42
+ if (this.clientApplicationsStore) {
43
+ const appsToAnnounce = await this.clientApplicationsStore.setUnannouncedToAnnounced();
44
+ if (appsToAnnounce.length > 0) {
45
+ const events = appsToAnnounce.map((app) => ({
46
+ type: events_1.APPLICATION_CREATED,
47
+ createdBy: app.createdBy || 'unknown',
48
+ data: app,
49
+ }));
50
+ await this.eventStore.batchStore(events);
51
+ }
52
+ }
53
+ }
54
+ clientKey(client) {
55
+ return `${client.appName}_${client.instanceId}`;
56
+ }
57
+ async bulkAdd() {
58
+ if (this &&
59
+ this.seenClients &&
60
+ this.clientApplicationsStore &&
61
+ this.clientInstanceStore) {
62
+ const uniqueRegistrations = Object.values(this.seenClients);
63
+ const uniqueApps = Object.values(uniqueRegistrations.reduce((soFar, reg) => {
64
+ // eslint-disable-next-line no-param-reassign
65
+ soFar[reg.appName] = reg;
66
+ return soFar;
67
+ }, {}));
68
+ this.seenClients = {};
69
+ try {
70
+ if (uniqueRegistrations.length > 0) {
71
+ await this.clientApplicationsStore.bulkUpsert(uniqueApps);
72
+ await this.clientInstanceStore.bulkUpsert(uniqueRegistrations);
73
+ }
74
+ }
75
+ catch (err) {
76
+ this.logger.warn('Failed to register clients', err);
77
+ }
78
+ }
79
+ }
80
+ async getApplications(query) {
81
+ return this.clientApplicationsStore.getAppsForStrategy(query);
82
+ }
83
+ async getApplication(appName) {
84
+ const [seenToggles, application, instances, strategies, features] = await Promise.all([
85
+ this.clientMetricsStoreV2.getSeenTogglesForApp(appName),
86
+ this.clientApplicationsStore.get(appName),
87
+ this.clientInstanceStore.getByAppName(appName),
88
+ this.strategyStore.getAll(),
89
+ this.featureToggleStore.getAll(),
90
+ ]);
91
+ return {
92
+ appName: application.appName,
93
+ createdAt: application.createdAt,
94
+ description: application.description,
95
+ url: application.url,
96
+ color: application.color,
97
+ icon: application.icon,
98
+ strategies: application.strategies.map((name) => {
99
+ const found = strategies.find((f) => f.name === name);
100
+ return found || { name, notFound: true };
101
+ }),
102
+ instances,
103
+ seenToggles: seenToggles.map((name) => {
104
+ const found = features.find((f) => f.name === name);
105
+ return found || { name, notFound: true };
106
+ }),
107
+ links: {
108
+ self: `/api/applications/${application.appName}`,
109
+ },
110
+ };
111
+ }
112
+ async deleteApplication(appName) {
113
+ await this.clientInstanceStore.deleteForApplication(appName);
114
+ await this.clientApplicationsStore.delete(appName);
115
+ }
116
+ async createApplication(input) {
117
+ const applicationData = await schema_1.applicationSchema.validateAsync(input);
118
+ await this.clientApplicationsStore.upsert(applicationData);
119
+ }
120
+ destroy() {
121
+ this.timers.forEach(clearInterval);
122
+ }
123
+ }
124
+ exports.default = ClientInstanceService;
125
+ //# sourceMappingURL=instance-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"instance-service.js","sourceRoot":"","sources":["../../../../src/lib/services/client-metrics/instance-service.ts"],"names":[],"mappings":";;AAAA,qCAA6C;AAC7C,+CAAyD;AAczD,qCAAgD;AAEhD,uCAAwE;AAExE,qCAA+C;AAE/C,MAAqB,qBAAqB;IAyBtC,YACI,EACI,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,mBAAmB,EACnB,uBAAuB,EACvB,UAAU,GASb,EACD,EAAE,SAAS,EAAqC,EAChD,YAAY,GAAG,IAAA,gCAAqB,EAAC,CAAC,CAAC,EACvC,oBAAoB,GAAG,IAAA,gCAAqB,EAAC,CAAC,CAAC;QA3CnD,SAAI,GAAG,EAAE,CAAC;QAEV,WAAM,GAAG,IAAI,CAAC;QAEd,gBAAW,GAA+B,EAAE,CAAC;QAErC,WAAM,GAAqB,EAAE,CAAC;QAuClC,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,mBAAmB,GAAG,mBAAmB,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAE7B,IAAI,CAAC,MAAM,GAAG,SAAS,CACnB,qDAAqD,CACxD,CAAC;QAEF,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;QACjC,IAAI,CAAC,oBAAoB,GAAG,oBAAoB,CAAC;QACjD,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,WAAW,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,CAC/D,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,WAAW,CACP,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,EAAE,EAChC,IAAI,CAAC,oBAAoB,CAC5B,CAAC,KAAK,EAAE,CACZ,CAAC;IACN,CAAC;IAEM,KAAK,CAAC,gBAAgB,CACzB,IAAgB,EAChB,QAAgB;QAEhB,MAAM,KAAK,GAAG,MAAM,4BAAmB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC5D,MAAM,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC;YACvC,OAAO,EAAE,KAAK,CAAC,OAAO;YACtB,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,QAAQ,EAAE,QAAQ;SACrB,CAAC,CAAC;IACP,CAAC;IAEM,KAAK,CAAC,cAAc,CACvB,IAAgB,EAChB,QAAgB;QAEhB,MAAM,KAAK,GAAG,MAAM,6BAAoB,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC7D,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;QAC1B,KAAK,CAAC,SAAS,GAAG,QAAQ,CAAC;QAC3B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,mBAAmB;QACrB,IAAI,IAAI,CAAC,uBAAuB,EAAE;YAC9B,MAAM,cAAc,GAChB,MAAM,IAAI,CAAC,uBAAuB,CAAC,yBAAyB,EAAE,CAAC;YACnE,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC3B,MAAM,MAAM,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;oBACxC,IAAI,EAAE,4BAAmB;oBACzB,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,SAAS;oBACrC,IAAI,EAAE,GAAG;iBACZ,CAAC,CAAC,CAAC;gBACJ,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;aAC5C;SACJ;IACL,CAAC;IAED,SAAS,CAAC,MAAkB;QACxB,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,OAAO;QACT,IACI,IAAI;YACJ,IAAI,CAAC,WAAW;YAChB,IAAI,CAAC,uBAAuB;YAC5B,IAAI,CAAC,mBAAmB,EAC1B;YACE,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAC5D,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAC5B,mBAAmB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;gBACtC,6CAA6C;gBAC7C,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC;gBACzB,OAAO,KAAK,CAAC;YACjB,CAAC,EAAE,EAAE,CAAC,CACT,CAAC;YACF,IAAI,CAAC,WAAW,GAAG,EAAE,CAAC;YACtB,IAAI;gBACA,IAAI,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE;oBAChC,MAAM,IAAI,CAAC,uBAAuB,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;oBAC1D,MAAM,IAAI,CAAC,mBAAmB,CAAC,UAAU,CACrC,mBAAmB,CACtB,CAAC;iBACL;aACJ;YAAC,OAAO,GAAG,EAAE;gBACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,GAAG,CAAC,CAAC;aACvD;SACJ;IACL,CAAC;IAED,KAAK,CAAC,eAAe,CACjB,KAAwB;QAExB,OAAO,IAAI,CAAC,uBAAuB,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,OAAe;QAChC,MAAM,CAAC,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,CAAC,GAC7D,MAAM,OAAO,CAAC,GAAG,CAAC;YACd,IAAI,CAAC,oBAAoB,CAAC,oBAAoB,CAAC,OAAO,CAAC;YACvD,IAAI,CAAC,uBAAuB,CAAC,GAAG,CAAC,OAAO,CAAC;YACzC,IAAI,CAAC,mBAAmB,CAAC,YAAY,CAAC,OAAO,CAAC;YAC9C,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE;YAC3B,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE;SACnC,CAAC,CAAC;QAEP,OAAO;YACH,OAAO,EAAE,WAAW,CAAC,OAAO;YAC5B,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,WAAW,EAAE,WAAW,CAAC,WAAW;YACpC,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,KAAK,EAAE,WAAW,CAAC,KAAK;YACxB,IAAI,EAAE,WAAW,CAAC,IAAI;YACtB,UAAU,EAAE,WAAW,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAC5C,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBACtD,OAAO,KAAK,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC7C,CAAC,CAAC;YACF,SAAS;YACT,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;gBAClC,MAAM,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBACpD,OAAO,KAAK,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;YAC7C,CAAC,CAAC;YACF,KAAK,EAAE;gBACH,IAAI,EAAE,qBAAqB,WAAW,CAAC,OAAO,EAAE;aACnD;SACJ,CAAC;IACN,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,OAAe;QACnC,MAAM,IAAI,CAAC,mBAAmB,CAAC,oBAAoB,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,KAAmB;QACvC,MAAM,eAAe,GAAG,MAAM,0BAAiB,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrE,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAC/D,CAAC;IAED,OAAO;QACH,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IACvC,CAAC;CACJ;AAhMD,wCAgMC"}