@forge/util 1.4.10-next.0-experimental-8e96421 → 2.0.0-next.0

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 (56) hide show
  1. package/CHANGELOG.md +7 -1
  2. package/package.json +2 -5
  3. package/scripts/build.sh +0 -3
  4. package/packages/in-memory-metrics/CHANGELOG.md +0 -13
  5. package/packages/in-memory-metrics/README.md +0 -18
  6. package/packages/in-memory-metrics/dist/index.d.ts +0 -3
  7. package/packages/in-memory-metrics/dist/index.d.ts.map +0 -1
  8. package/packages/in-memory-metrics/dist/index.js +0 -6
  9. package/packages/in-memory-metrics/dist/index.js.map +0 -1
  10. package/packages/in-memory-metrics/dist/metric/counter.d.ts +0 -11
  11. package/packages/in-memory-metrics/dist/metric/counter.d.ts.map +0 -1
  12. package/packages/in-memory-metrics/dist/metric/counter.js +0 -27
  13. package/packages/in-memory-metrics/dist/metric/counter.js.map +0 -1
  14. package/packages/in-memory-metrics/dist/metric/gauge.d.ts +0 -8
  15. package/packages/in-memory-metrics/dist/metric/gauge.d.ts.map +0 -1
  16. package/packages/in-memory-metrics/dist/metric/gauge.js +0 -18
  17. package/packages/in-memory-metrics/dist/metric/gauge.js.map +0 -1
  18. package/packages/in-memory-metrics/dist/metric/metric.d.ts +0 -9
  19. package/packages/in-memory-metrics/dist/metric/metric.d.ts.map +0 -1
  20. package/packages/in-memory-metrics/dist/metric/metric.js +0 -17
  21. package/packages/in-memory-metrics/dist/metric/metric.js.map +0 -1
  22. package/packages/in-memory-metrics/dist/metric/timed.d.ts +0 -13
  23. package/packages/in-memory-metrics/dist/metric/timed.d.ts.map +0 -1
  24. package/packages/in-memory-metrics/dist/metric/timed.js +0 -48
  25. package/packages/in-memory-metrics/dist/metric/timed.js.map +0 -1
  26. package/packages/in-memory-metrics/dist/metrics.d.ts +0 -33
  27. package/packages/in-memory-metrics/dist/metrics.d.ts.map +0 -1
  28. package/packages/in-memory-metrics/dist/metrics.js +0 -103
  29. package/packages/in-memory-metrics/dist/metrics.js.map +0 -1
  30. package/packages/in-memory-metrics/package.json +0 -31
  31. package/packages/logger-interface/CHANGELOG.md +0 -105
  32. package/packages/logger-interface/README.md +0 -33
  33. package/packages/logger-interface/dist/index.d.ts +0 -24
  34. package/packages/logger-interface/dist/index.d.ts.map +0 -1
  35. package/packages/logger-interface/dist/index.js +0 -33
  36. package/packages/logger-interface/dist/index.js.map +0 -1
  37. package/packages/logger-interface/dist/mocks/index.d.ts +0 -11
  38. package/packages/logger-interface/dist/mocks/index.d.ts.map +0 -1
  39. package/packages/logger-interface/dist/mocks/index.js +0 -22
  40. package/packages/logger-interface/dist/mocks/index.js.map +0 -1
  41. package/packages/logger-interface/package.json +0 -36
  42. package/packages/metrics-interface/CHANGELOG.md +0 -226
  43. package/packages/metrics-interface/README.md +0 -63
  44. package/packages/metrics-interface/dist/index.d.ts +0 -2
  45. package/packages/metrics-interface/dist/index.d.ts.map +0 -1
  46. package/packages/metrics-interface/dist/index.js +0 -18
  47. package/packages/metrics-interface/dist/index.js.map +0 -1
  48. package/packages/metrics-interface/dist/metrics.d.ts +0 -48
  49. package/packages/metrics-interface/dist/metrics.d.ts.map +0 -1
  50. package/packages/metrics-interface/dist/metrics.js +0 -70
  51. package/packages/metrics-interface/dist/metrics.js.map +0 -1
  52. package/packages/metrics-interface/dist/mocks/index.d.ts +0 -43
  53. package/packages/metrics-interface/dist/mocks/index.d.ts.map +0 -1
  54. package/packages/metrics-interface/dist/mocks/index.js +0 -54
  55. package/packages/metrics-interface/dist/mocks/index.js.map +0 -1
  56. package/packages/metrics-interface/package.json +0 -36
package/CHANGELOG.md CHANGED
@@ -1,6 +1,12 @@
1
1
  # @forge/util
2
2
 
3
- ## 1.4.10-next.0-experimental-8e96421
3
+ ## 2.0.0-next.0
4
+
5
+ ### Major Changes
6
+
7
+ - 7abca30: Remove SDK dependency on @atlassian/ari
8
+
9
+ ## 1.4.10
4
10
 
5
11
  ### Patch Changes
6
12
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@forge/util",
3
- "version": "1.4.10-next.0-experimental-8e96421",
3
+ "version": "2.0.0-next.0",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "build": "./scripts/build.sh",
@@ -10,10 +10,7 @@
10
10
  "license": "SEE LICENSE IN LICENSE.txt",
11
11
  "exports": {
12
12
  "./packages/analytics-node-client": "./packages/analytics-node-client/src/index.js",
13
- "./packages/ari": "./packages/ari/index.js",
14
- "./packages/in-memory-metrics": "./packages/in-memory-metrics/dist/index.js",
15
- "./packages/logger-interface": "./packages/logger-interface/dist/index.js",
16
- "./packages/metrics-interface": "./packages/metrics-interface/dist/index.js"
13
+ "./packages/ari": "./packages/ari/index.js"
17
14
  },
18
15
  "devDependencies": {
19
16
  "webpack-cli": "^5.1.4"
package/scripts/build.sh CHANGED
@@ -19,9 +19,6 @@ add-package () {
19
19
  }
20
20
 
21
21
  add-package @atlassian/ari
22
- add-package @atlassian/logger-interface
23
- add-package @atlassian/in-memory-metrics
24
- add-package @atlassian/metrics-interface
25
22
  add-package @atlassiansox/analytics-node-client
26
23
 
27
24
  node ./scripts/replace-packages.js
@@ -1,13 +0,0 @@
1
- # @atlassian/in-memory-metrics
2
-
3
- ## 0.1.0
4
-
5
- ### Minor Changes
6
-
7
- - de242974c: Added method to find timer by name
8
-
9
- ## 0.0.1
10
-
11
- ### Patch Changes
12
-
13
- - 200b9cea0: Create package
@@ -1,18 +0,0 @@
1
- # @atlassian/in-memory-metrics
2
-
3
- Provides an implementation of `Metrics` from `@atlassian/metrics-interface` that stores all the data in memory.
4
-
5
- Useful in serverless environments like Forge, and for testing.
6
-
7
- ## Usage
8
-
9
- ```typescript
10
- import { InMemoryMetrics } from '@atlassian/in-memory-metrics';
11
-
12
- const metrics = new InMemoryMetrics();
13
- metrics.counter('one').incr();
14
- // ...
15
-
16
- const counters = metrics.getCounters();
17
- // analyse or submit data elsewhere
18
- ```
@@ -1,3 +0,0 @@
1
- import { InMemoryMetrics } from './metrics';
2
- export { InMemoryMetrics };
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAE5C,OAAO,EAAE,eAAe,EAAE,CAAC"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InMemoryMetrics = void 0;
4
- const metrics_1 = require("./metrics");
5
- Object.defineProperty(exports, "InMemoryMetrics", { enumerable: true, get: function () { return metrics_1.InMemoryMetrics; } });
6
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,uCAA4C;AAEnC,gGAFA,yBAAe,OAEA"}
@@ -1,11 +0,0 @@
1
- import { Counter } from '@atlassian/metrics-interface';
2
- import { InMemoryMetric } from './metric';
3
- export declare class InMemoryCounterMetric extends InMemoryMetric implements Counter {
4
- private count;
5
- getCount(): number;
6
- incr(): void;
7
- decr(): void;
8
- decrBy(val: number): void;
9
- incrBy(val: number): void;
10
- }
11
- //# sourceMappingURL=counter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"counter.d.ts","sourceRoot":"","sources":["../../src/metric/counter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AAEvD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,qBAAa,qBAAsB,SAAQ,cAAe,YAAW,OAAO;IAC1E,OAAO,CAAC,KAAK,CAAK;IAElB,QAAQ,IAAI,MAAM;IAIlB,IAAI,IAAI,IAAI;IAIZ,IAAI,IAAI,IAAI;IAIZ,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIzB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAG1B"}
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InMemoryCounterMetric = void 0;
4
- const metric_1 = require("./metric");
5
- class InMemoryCounterMetric extends metric_1.InMemoryMetric {
6
- constructor() {
7
- super(...arguments);
8
- this.count = 0;
9
- }
10
- getCount() {
11
- return this.count;
12
- }
13
- incr() {
14
- this.count++;
15
- }
16
- decr() {
17
- this.count--;
18
- }
19
- decrBy(val) {
20
- this.count -= val;
21
- }
22
- incrBy(val) {
23
- this.count += val;
24
- }
25
- }
26
- exports.InMemoryCounterMetric = InMemoryCounterMetric;
27
- //# sourceMappingURL=counter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"counter.js","sourceRoot":"","sources":["../../src/metric/counter.ts"],"names":[],"mappings":";;;AAEA,qCAA0C;AAE1C,MAAa,qBAAsB,SAAQ,uBAAc;IAAzD;;QACU,UAAK,GAAG,CAAC,CAAC;IAqBpB,CAAC;IAnBC,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,IAAI;QACF,IAAI,CAAC,KAAK,EAAE,CAAC;IACf,CAAC;IAED,MAAM,CAAC,GAAW;QAChB,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC;IACpB,CAAC;IAED,MAAM,CAAC,GAAW;QAChB,IAAI,CAAC,KAAK,IAAI,GAAG,CAAC;IACpB,CAAC;CACF;AAtBD,sDAsBC"}
@@ -1,8 +0,0 @@
1
- import { Gauge } from '@atlassian/metrics-interface';
2
- import { InMemoryMetric } from './metric';
3
- export declare class InMemoryGaugeMetric extends InMemoryMetric implements Gauge {
4
- private value;
5
- getValue(): number;
6
- set(val: number): void;
7
- }
8
- //# sourceMappingURL=gauge.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gauge.d.ts","sourceRoot":"","sources":["../../src/metric/gauge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,8BAA8B,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE1C,qBAAa,mBAAoB,SAAQ,cAAe,YAAW,KAAK;IACtE,OAAO,CAAC,KAAK,CAAK;IAElB,QAAQ,IAAI,MAAM;IAIlB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAGvB"}
@@ -1,18 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InMemoryGaugeMetric = void 0;
4
- const metric_1 = require("./metric");
5
- class InMemoryGaugeMetric extends metric_1.InMemoryMetric {
6
- constructor() {
7
- super(...arguments);
8
- this.value = 0;
9
- }
10
- getValue() {
11
- return this.value;
12
- }
13
- set(val) {
14
- this.value = val;
15
- }
16
- }
17
- exports.InMemoryGaugeMetric = InMemoryGaugeMetric;
18
- //# sourceMappingURL=gauge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"gauge.js","sourceRoot":"","sources":["../../src/metric/gauge.ts"],"names":[],"mappings":";;;AAEA,qCAA0C;AAE1C,MAAa,mBAAoB,SAAQ,uBAAc;IAAvD;;QACU,UAAK,GAAG,CAAC,CAAC;IASpB,CAAC;IAPC,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,GAAG,CAAC,GAAW;QACb,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;IACnB,CAAC;CACF;AAVD,kDAUC"}
@@ -1,9 +0,0 @@
1
- import { Tags } from '@atlassian/metrics-interface';
2
- export declare abstract class InMemoryMetric {
3
- protected readonly name: string;
4
- protected additionalInfo?: Tags | undefined;
5
- constructor(name: string, additionalInfo?: Tags | undefined);
6
- getName(): string;
7
- getTags(): Tags;
8
- }
9
- //# sourceMappingURL=metric.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metric.d.ts","sourceRoot":"","sources":["../../src/metric/metric.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAEpD,8BAAsB,cAAc;IACtB,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM;IAAE,SAAS,CAAC,cAAc,CAAC;gBAAvC,IAAI,EAAE,MAAM,EAAY,cAAc,CAAC,kBAAM;IAE5E,OAAO,IAAI,MAAM;IAIjB,OAAO,IAAI,IAAI;CAGhB"}
@@ -1,17 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InMemoryMetric = void 0;
4
- class InMemoryMetric {
5
- constructor(name, additionalInfo) {
6
- this.name = name;
7
- this.additionalInfo = additionalInfo;
8
- }
9
- getName() {
10
- return this.name;
11
- }
12
- getTags() {
13
- return this.additionalInfo || {};
14
- }
15
- }
16
- exports.InMemoryMetric = InMemoryMetric;
17
- //# sourceMappingURL=metric.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metric.js","sourceRoot":"","sources":["../../src/metric/metric.ts"],"names":[],"mappings":";;;AAEA,MAAsB,cAAc;IAClC,YAA+B,IAAY,EAAY,cAAqB;QAA7C,SAAI,GAAJ,IAAI,CAAQ;QAAY,mBAAc,GAAd,cAAc,CAAO;IAAG,CAAC;IAEhF,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAED,OAAO;QACL,OAAO,IAAI,CAAC,cAAc,IAAI,EAAE,CAAC;IACnC,CAAC;CACF;AAVD,wCAUC"}
@@ -1,13 +0,0 @@
1
- import { Tags, Timing } from '@atlassian/metrics-interface';
2
- import { InMemoryMetric } from './metric';
3
- export declare class InMemoryTimedMetric extends InMemoryMetric implements Timing {
4
- private latency;
5
- private started;
6
- private startedAt;
7
- getTime(): number;
8
- private format;
9
- private stopTimer;
10
- measure(): Timing.Stop;
11
- set(val: number, extraTags?: Tags): void;
12
- }
13
- //# sourceMappingURL=timed.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"timed.d.ts","sourceRoot":"","sources":["../../src/metric/timed.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,EAAiB,MAAM,8BAA8B,CAAC;AAE3E,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAI1C,qBAAa,mBAAoB,SAAQ,cAAe,YAAW,MAAM;IACvE,OAAO,CAAC,OAAO,CAAK;IACpB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAa;IAEvB,OAAO,IAAI,MAAM;IAOxB,OAAO,CAAC,MAAM;IAId,OAAO,CAAC,SAAS;IAMV,OAAO,IAAI,MAAM,CAAC,IAAI;IAWtB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI;CAShD"}
@@ -1,48 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InMemoryTimedMetric = void 0;
4
- const metric_1 = require("./metric");
5
- const MILLISEC_TO_NANOSEC = 1000000;
6
- class InMemoryTimedMetric extends metric_1.InMemoryMetric {
7
- constructor() {
8
- super(...arguments);
9
- this.latency = 0;
10
- this.started = false;
11
- this.startedAt = BigInt(0);
12
- }
13
- getTime() {
14
- if (this.started) {
15
- this.stopTimer();
16
- }
17
- return this.format(this.latency);
18
- }
19
- format(input, opts) {
20
- return parseFloat(input.toFixed(opts?.precision || 2));
21
- }
22
- stopTimer(extraTags) {
23
- const latency = process.hrtime.bigint() - this.startedAt;
24
- this.started = false;
25
- this.set(Number(latency) / MILLISEC_TO_NANOSEC, extraTags);
26
- }
27
- measure() {
28
- this.startedAt = process.hrtime.bigint();
29
- this.started = true;
30
- return {
31
- stop: (extraTags, opts) => {
32
- this.stopTimer(extraTags);
33
- return this.format(this.latency, opts);
34
- },
35
- };
36
- }
37
- set(val, extraTags) {
38
- this.latency = val;
39
- if (extraTags) {
40
- this.additionalInfo = {
41
- ...this.additionalInfo,
42
- ...extraTags,
43
- };
44
- }
45
- }
46
- }
47
- exports.InMemoryTimedMetric = InMemoryTimedMetric;
48
- //# sourceMappingURL=timed.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"timed.js","sourceRoot":"","sources":["../../src/metric/timed.ts"],"names":[],"mappings":";;;AAEA,qCAA0C;AAE1C,MAAM,mBAAmB,GAAG,OAAO,CAAC;AAEpC,MAAa,mBAAoB,SAAQ,uBAAc;IAAvD;;QACU,YAAO,GAAG,CAAC,CAAC;QACZ,YAAO,GAAG,KAAK,CAAC;QAChB,cAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;IAuChC,CAAC;IArCQ,OAAO;QACZ,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,SAAS,EAAE,CAAC;SAClB;QACD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAEO,MAAM,CAAC,KAAa,EAAE,IAAoB;QAChD,OAAO,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,CAAC;IAEO,SAAS,CAAC,SAAgB;QAChC,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC;QACzD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,mBAAmB,EAAE,SAAS,CAAC,CAAC;IAC7D,CAAC;IAEM,OAAO;QACZ,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACzC,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,OAAO;YACL,IAAI,EAAE,CAAC,SAAgB,EAAE,IAAoB,EAAU,EAAE;gBACvD,IAAI,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;gBAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACzC,CAAC;SACF,CAAC;IACJ,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,SAAgB;QACtC,IAAI,CAAC,OAAO,GAAG,GAAG,CAAC;QACnB,IAAI,SAAS,EAAE;YACb,IAAI,CAAC,cAAc,GAAG;gBACpB,GAAG,IAAI,CAAC,cAAc;gBACtB,GAAG,SAAS;aACb,CAAC;SACH;IACH,CAAC;CACF;AA1CD,kDA0CC"}
@@ -1,33 +0,0 @@
1
- import { Counter, Gauge, Metrics, Tags, Timing } from '@atlassian/metrics-interface';
2
- import { InMemoryCounterMetric } from './metric/counter';
3
- import { InMemoryGaugeMetric } from './metric/gauge';
4
- import { InMemoryMetric } from './metric/metric';
5
- import { InMemoryTimedMetric } from './metric/timed';
6
- /**
7
- * Metrics class that keeps results in memory, for use in Forge Runtime and
8
- * testing.
9
- */
10
- export declare class InMemoryMetrics extends InMemoryMetric implements Metrics {
11
- private readonly _timers;
12
- private readonly _counters;
13
- private readonly _gauges;
14
- private readonly _children;
15
- constructor(tags?: Tags, name?: string);
16
- getTimers(): InMemoryTimedMetric[];
17
- getCounters(): Map<string, InMemoryCounterMetric>;
18
- getGauges(): Map<string, InMemoryGaugeMetric>;
19
- getChildren(): Map<string, InMemoryMetrics>;
20
- private tagsWith;
21
- private getHashedMetricName;
22
- child(name: string, tags?: Tags): InMemoryMetrics;
23
- counter(name: string, tags?: Tags): Counter;
24
- counterByName(name: string): InMemoryCounterMetric;
25
- gauge(name: string, tags?: Tags): Gauge;
26
- gaugeByName(name: string): InMemoryGaugeMetric;
27
- timerByName(name: string): InMemoryTimedMetric;
28
- timing(name: string, tags?: Tags): Timing;
29
- event(_title: string, _description?: string): void;
30
- set(_name: string, _tags?: Tags | undefined): never;
31
- histogram(_name: string, _buckets: number[], _tags?: Tags | undefined): never;
32
- }
33
- //# sourceMappingURL=metrics.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AAErF,OAAO,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAErD;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,cAAe,YAAW,OAAO;IACpE,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6B;IACrD,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiD;IAC3E,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+C;IACvE,OAAO,CAAC,QAAQ,CAAC,SAAS,CAA2C;gBAEzD,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,SAAK;IAI3B,SAAS,IAAI,mBAAmB,EAAE;IAIlC,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC;IAIjD,SAAS,IAAI,GAAG,CAAC,MAAM,EAAE,mBAAmB,CAAC;IAI7C,WAAW,IAAI,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC;IAIlD,OAAO,CAAC,QAAQ;IAIhB,OAAO,CAAC,mBAAmB;IAK3B,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,eAAe;IASjD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO;IAS3C,aAAa,CAAC,IAAI,EAAE,MAAM;IAQ1B,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,KAAK;IASvC,WAAW,CAAC,IAAI,EAAE,MAAM;IAQxB,WAAW,CAAC,IAAI,EAAE,MAAM;IAQxB,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM;IAOzC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;IAKlD,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,IAAI,GAAG,SAAS,GAAG,KAAK;IAKnD,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,IAAI,GAAG,SAAS,GAAG,KAAK;CAG9E"}
@@ -1,103 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.InMemoryMetrics = void 0;
4
- const counter_1 = require("./metric/counter");
5
- const gauge_1 = require("./metric/gauge");
6
- const metric_1 = require("./metric/metric");
7
- const timed_1 = require("./metric/timed");
8
- /**
9
- * Metrics class that keeps results in memory, for use in Forge Runtime and
10
- * testing.
11
- */
12
- class InMemoryMetrics extends metric_1.InMemoryMetric {
13
- constructor(tags, name = '') {
14
- super(name, tags);
15
- this._timers = [];
16
- this._counters = new Map();
17
- this._gauges = new Map();
18
- this._children = new Map();
19
- }
20
- getTimers() {
21
- return this._timers;
22
- }
23
- getCounters() {
24
- return this._counters;
25
- }
26
- getGauges() {
27
- return this._gauges;
28
- }
29
- getChildren() {
30
- return this._children;
31
- }
32
- tagsWith(tags) {
33
- return { ...this.getTags(), ...tags };
34
- }
35
- getHashedMetricName(name, tags) {
36
- const sortedTags = Object.entries(this.tagsWith(tags)).sort();
37
- return `${name}_${JSON.stringify(sortedTags)}`;
38
- }
39
- child(name, tags) {
40
- const hashedMetricName = this.getHashedMetricName(name, tags);
41
- if (!this._children.has(hashedMetricName)) {
42
- const child = new InMemoryMetrics(this.tagsWith(tags), name);
43
- this._children.set(hashedMetricName, child);
44
- }
45
- return this._children.get(hashedMetricName);
46
- }
47
- counter(name, tags) {
48
- const hashedMetricName = this.getHashedMetricName(name, tags);
49
- if (!this._counters.has(hashedMetricName)) {
50
- const counter = new counter_1.InMemoryCounterMetric(name, this.tagsWith(tags));
51
- this._counters.set(hashedMetricName, counter);
52
- }
53
- return this._counters.get(hashedMetricName);
54
- }
55
- counterByName(name) {
56
- const filteredMetrics = Array.from(this.getCounters().values()).filter(v => v.getName() === name);
57
- if (filteredMetrics.length !== 1) {
58
- throw new Error(`Expected to find a single counter with name ${name}, but found ${filteredMetrics.length}`);
59
- }
60
- return filteredMetrics[0];
61
- }
62
- gauge(name, tags) {
63
- const hashedMetricName = this.getHashedMetricName(name, tags);
64
- if (!this._gauges.has(hashedMetricName)) {
65
- const gauge = new gauge_1.InMemoryGaugeMetric(name, this.tagsWith(tags));
66
- this._gauges.set(hashedMetricName, gauge);
67
- }
68
- return this._gauges.get(hashedMetricName);
69
- }
70
- gaugeByName(name) {
71
- const filteredMetrics = Array.from(this.getGauges().values()).filter(v => v.getName() === name);
72
- if (filteredMetrics.length !== 1) {
73
- throw new Error(`Expected to find a single gauge with name ${name}, but found ${filteredMetrics.length}`);
74
- }
75
- return filteredMetrics[0];
76
- }
77
- timerByName(name) {
78
- const timer = this._timers.find(t => t.getName() === name);
79
- if (!timer) {
80
- throw new Error(`Failed to find timer with name ${name}`);
81
- }
82
- return timer;
83
- }
84
- timing(name, tags) {
85
- const timer = new timed_1.InMemoryTimedMetric(name, this.tagsWith(tags));
86
- this._timers.push(timer);
87
- return timer;
88
- }
89
- /* istanbul ignore next */
90
- event(_title, _description) {
91
- throw new Error('Events are not implemented.');
92
- }
93
- /* istanbul ignore next */
94
- set(_name, _tags) {
95
- throw new Error('Sets are not implemented.');
96
- }
97
- /* istanbul ignore next */
98
- histogram(_name, _buckets, _tags) {
99
- throw new Error('Histograms are not implemented.');
100
- }
101
- }
102
- exports.InMemoryMetrics = InMemoryMetrics;
103
- //# sourceMappingURL=metrics.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"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"}
@@ -1,31 +0,0 @@
1
- {
2
- "name": "in-memory-metrics",
3
- "description": "Metrics implementation that stores metrics in memory",
4
- "version": "0.1.0",
5
- "main": "dist/index",
6
- "dependencies": {
7
- "@atlassian/metrics-interface": "^4.0.0"
8
- },
9
- "devDependencies": {},
10
- "types": "dist/index.d.ts",
11
- "typings": "dist/index.d.ts",
12
- "config": {
13
- "registry": "atlassian",
14
- "isPlatformPackage": true,
15
- "isStarterPackage": true
16
- },
17
- "license": "Proprietary",
18
- "repository": {
19
- "directory": "src/packages/metrics/in-memory-metrics",
20
- "type": "git",
21
- "url": "git@bitbucket.org:atlassian/node-monorepo.git"
22
- },
23
- "homepage": "https://bitbucket.org/atlassian/node-monorepo/src/master/src/packages/metrics/in-memory-metrics",
24
- "files": [
25
- "bin/",
26
- "dist/",
27
- "package.json",
28
- "CHANGELOG.md",
29
- "README.md"
30
- ]
31
- }
@@ -1,105 +0,0 @@
1
- # @atlassian/logger-interface
2
-
3
- ## 2.0.3
4
-
5
- ### Patch Changes
6
-
7
- - 172390575: added list of onboarded packages and updated package descriptions
8
-
9
- ## 2.0.2
10
-
11
- ### Patch Changes
12
-
13
- - 07274041: onboard logging as platform packages
14
-
15
- ## 2.0.1
16
-
17
- ### Patch Changes
18
-
19
- - 174f3f5: incredible-monorepo renamed to node-monorepo
20
-
21
- ## 2.0.0
22
-
23
- ### Major Changes
24
-
25
- - b6125f0: Upgrade NodeJS typings to v16. Package now targets NodeJS runtime 16 and above, all previous NodeJS versions
26
- are now unsupported.
27
-
28
- ## 1.3.21
29
-
30
- ### Patch Changes
31
-
32
- - c0069ef: Package is now compiled with Typescript 4.4
33
-
34
- Useful links:
35
-
36
- - https://github.com/Microsoft/TypeScript-wiki/blob/main/Breaking-Changes.md#more-compliant-indirect-calls-for-imported-functions
37
- - http://perfectionkills.com/global-eval-what-are-the-options/
38
-
39
- ## 1.3.20
40
-
41
- ### Patch Changes
42
-
43
- - fae10a6: Fixed an issue with compiled typings files after upgrading to TypeScript 4.3. The imports in the typings.d.ts
44
- files were compiled with paths relative to the monorepo root, rather than absolute package paths. This problem has now
45
- been fixed.
46
-
47
- ## 1.3.19
48
-
49
- ### Patch Changes
50
-
51
- - fae196c: Added a feature to the monorepo so packages with non js entrypoints can be used
52
-
53
- ## 1.3.18
54
-
55
- ### Patch Changes
56
-
57
- - fae1709: Fixed an issue during package building, so bumping all packages to ensure distribution assets are valid
58
-
59
- ## 1.3.17
60
-
61
- ### Patch Changes
62
-
63
- - 97644a1: Set Typescript Compiler target to ES2018
64
-
65
- ## 1.3.16
66
-
67
- ### Patch Changes
68
-
69
- - 85bb2aa: monorepo changes: rename packageJson.publishConfig to packageJson.config.publishOverrides
70
-
71
- ## 1.3.15
72
-
73
- ### Patch Changes
74
-
75
- - 645304b: fix: ensure all monorepo packages do not use ranges in their dependencies (for changeset's automatic bumps)
76
-
77
- ## 1.3.14
78
-
79
- ### Patch Changes
80
-
81
- - 4483856: re-add devDependencies back into package.json and update import order linting rules
82
-
83
- ## 1.3.13
84
-
85
- ### Patch Changes
86
-
87
- - 6af309e: chore: update homepage field in package.json
88
-
89
- ## 1.3.12
90
-
91
- ### Patch Changes
92
-
93
- - 37e36f9: fix: the main, types and typings fields in package.json were incorrect on publish
94
-
95
- ## 1.3.11
96
-
97
- ### Patch Changes
98
-
99
- - b9aad92: fix: the previous patch version did not contain dist files
100
-
101
- ## 1.3.10
102
-
103
- ### Patch Changes
104
-
105
- - c255e4f: Dev improvements: Updated how the package is tested and published
@@ -1,33 +0,0 @@
1
- # @atlassian/logger-interface
2
-
3
- Typescript interface that provides standard logging levels `debug`, `info`, `warn`, `error`, and `fatal`.
4
-
5
- ## Usage
6
-
7
- ```typescript
8
- interface Logger {
9
- debug: LogMethod;
10
- info: LogMethod;
11
- warn: LogMethod;
12
- error: LogMethod;
13
- fatal: LogMethod;
14
- }
15
-
16
- interface LogMethod {
17
- (...data: Array<any>): void;
18
- }
19
- ```
20
-
21
- Arguments are untyped to provide freedom of choice for implementors.
22
-
23
- An extension of `Logger` that contains a child method is provided for implementors that expose this method. Usually the
24
- `opts` object contains a set of fields that are added as fields to each logging entry done by the _child_ logger. It may
25
- also serve to set the minimum log level.
26
-
27
- ```typescript
28
- interface HierarchicalLogger extends Logger {
29
- child(opts: any): HierarchicalLogger;
30
- }
31
- ```
32
-
33
- A default implementation named `NoLogger` is provided for testing purposes.
@@ -1,24 +0,0 @@
1
- export interface LogMethod {
2
- (...data: any[]): void;
3
- }
4
- export interface Logger {
5
- debug: LogMethod;
6
- info: LogMethod;
7
- warn: LogMethod;
8
- error: LogMethod;
9
- fatal: LogMethod;
10
- }
11
- export interface HierarchicalLogger extends Logger {
12
- child(opts: any): HierarchicalLogger;
13
- }
14
- export declare class NoLogger implements HierarchicalLogger {
15
- debug(..._data: any[]): void;
16
- info(..._data: any[]): void;
17
- warn(..._data: any[]): void;
18
- error(..._data: any[]): void;
19
- fatal(..._data: any[]): void;
20
- child(..._data: any[]): HierarchicalLogger;
21
- }
22
- export declare function isHierachicalLogger(obj: any): obj is HierarchicalLogger;
23
- export declare function isLogger(obj: any): obj is Logger;
24
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,MAAM;IACrB,KAAK,EAAE,SAAS,CAAC;IACjB,IAAI,EAAE,SAAS,CAAC;IAChB,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;CAClB;AAED,MAAM,WAAW,kBAAmB,SAAQ,MAAM;IAChD,KAAK,CAAC,IAAI,EAAE,GAAG,GAAG,kBAAkB,CAAC;CACtC;AAED,qBAAa,QAAS,YAAW,kBAAkB;IAE1C,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI;IAC5B,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI;IAC3B,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI;IAC3B,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI;IAC5B,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,IAAI;IAC5B,KAAK,CAAC,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,kBAAkB;CAIlD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,kBAAkB,CAEvE;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,IAAI,MAAM,CAahD"}