@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.
- package/CHANGELOG.md +7 -1
- package/package.json +2 -5
- package/scripts/build.sh +0 -3
- package/packages/in-memory-metrics/CHANGELOG.md +0 -13
- package/packages/in-memory-metrics/README.md +0 -18
- package/packages/in-memory-metrics/dist/index.d.ts +0 -3
- package/packages/in-memory-metrics/dist/index.d.ts.map +0 -1
- package/packages/in-memory-metrics/dist/index.js +0 -6
- package/packages/in-memory-metrics/dist/index.js.map +0 -1
- package/packages/in-memory-metrics/dist/metric/counter.d.ts +0 -11
- package/packages/in-memory-metrics/dist/metric/counter.d.ts.map +0 -1
- package/packages/in-memory-metrics/dist/metric/counter.js +0 -27
- package/packages/in-memory-metrics/dist/metric/counter.js.map +0 -1
- package/packages/in-memory-metrics/dist/metric/gauge.d.ts +0 -8
- package/packages/in-memory-metrics/dist/metric/gauge.d.ts.map +0 -1
- package/packages/in-memory-metrics/dist/metric/gauge.js +0 -18
- package/packages/in-memory-metrics/dist/metric/gauge.js.map +0 -1
- package/packages/in-memory-metrics/dist/metric/metric.d.ts +0 -9
- package/packages/in-memory-metrics/dist/metric/metric.d.ts.map +0 -1
- package/packages/in-memory-metrics/dist/metric/metric.js +0 -17
- package/packages/in-memory-metrics/dist/metric/metric.js.map +0 -1
- package/packages/in-memory-metrics/dist/metric/timed.d.ts +0 -13
- package/packages/in-memory-metrics/dist/metric/timed.d.ts.map +0 -1
- package/packages/in-memory-metrics/dist/metric/timed.js +0 -48
- package/packages/in-memory-metrics/dist/metric/timed.js.map +0 -1
- package/packages/in-memory-metrics/dist/metrics.d.ts +0 -33
- package/packages/in-memory-metrics/dist/metrics.d.ts.map +0 -1
- package/packages/in-memory-metrics/dist/metrics.js +0 -103
- package/packages/in-memory-metrics/dist/metrics.js.map +0 -1
- package/packages/in-memory-metrics/package.json +0 -31
- package/packages/logger-interface/CHANGELOG.md +0 -105
- package/packages/logger-interface/README.md +0 -33
- package/packages/logger-interface/dist/index.d.ts +0 -24
- package/packages/logger-interface/dist/index.d.ts.map +0 -1
- package/packages/logger-interface/dist/index.js +0 -33
- package/packages/logger-interface/dist/index.js.map +0 -1
- package/packages/logger-interface/dist/mocks/index.d.ts +0 -11
- package/packages/logger-interface/dist/mocks/index.d.ts.map +0 -1
- package/packages/logger-interface/dist/mocks/index.js +0 -22
- package/packages/logger-interface/dist/mocks/index.js.map +0 -1
- package/packages/logger-interface/package.json +0 -36
- package/packages/metrics-interface/CHANGELOG.md +0 -226
- package/packages/metrics-interface/README.md +0 -63
- package/packages/metrics-interface/dist/index.d.ts +0 -2
- package/packages/metrics-interface/dist/index.d.ts.map +0 -1
- package/packages/metrics-interface/dist/index.js +0 -18
- package/packages/metrics-interface/dist/index.js.map +0 -1
- package/packages/metrics-interface/dist/metrics.d.ts +0 -48
- package/packages/metrics-interface/dist/metrics.d.ts.map +0 -1
- package/packages/metrics-interface/dist/metrics.js +0 -70
- package/packages/metrics-interface/dist/metrics.js.map +0 -1
- package/packages/metrics-interface/dist/mocks/index.d.ts +0 -43
- package/packages/metrics-interface/dist/mocks/index.d.ts.map +0 -1
- package/packages/metrics-interface/dist/mocks/index.js +0 -54
- package/packages/metrics-interface/dist/mocks/index.js.map +0 -1
- package/packages/metrics-interface/package.json +0 -36
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.isLogger = exports.isHierachicalLogger = exports.NoLogger = void 0;
|
|
4
|
-
class NoLogger {
|
|
5
|
-
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
6
|
-
debug(..._data) { }
|
|
7
|
-
info(..._data) { }
|
|
8
|
-
warn(..._data) { }
|
|
9
|
-
error(..._data) { }
|
|
10
|
-
fatal(..._data) { }
|
|
11
|
-
child(..._data) {
|
|
12
|
-
return this;
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
exports.NoLogger = NoLogger;
|
|
16
|
-
function isHierachicalLogger(obj) {
|
|
17
|
-
return 'child' in obj && typeof obj.child === 'function';
|
|
18
|
-
}
|
|
19
|
-
exports.isHierachicalLogger = isHierachicalLogger;
|
|
20
|
-
function isLogger(obj) {
|
|
21
|
-
return ('debug' in obj &&
|
|
22
|
-
typeof obj.debug === 'function' &&
|
|
23
|
-
'info' in obj &&
|
|
24
|
-
typeof obj.info === 'function' &&
|
|
25
|
-
'warn' in obj &&
|
|
26
|
-
typeof obj.warn === 'function' &&
|
|
27
|
-
'error' in obj &&
|
|
28
|
-
typeof obj.error === 'function' &&
|
|
29
|
-
'fatal' in obj &&
|
|
30
|
-
typeof obj.fatal === 'function');
|
|
31
|
-
}
|
|
32
|
-
exports.isLogger = isLogger;
|
|
33
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAgBA,MAAa,QAAQ;IACnB,sDAAsD;IAC/C,KAAK,CAAC,GAAG,KAAY,IAAS,CAAC;IAC/B,IAAI,CAAC,GAAG,KAAY,IAAS,CAAC;IAC9B,IAAI,CAAC,GAAG,KAAY,IAAS,CAAC;IAC9B,KAAK,CAAC,GAAG,KAAY,IAAS,CAAC;IAC/B,KAAK,CAAC,GAAG,KAAY,IAAS,CAAC;IAC/B,KAAK,CAAC,GAAG,KAAY;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;CAEF;AAXD,4BAWC;AAED,SAAgB,mBAAmB,CAAC,GAAQ;IAC1C,OAAO,OAAO,IAAI,GAAG,IAAI,OAAQ,GAA0B,CAAC,KAAK,KAAK,UAAU,CAAC;AACnF,CAAC;AAFD,kDAEC;AAED,SAAgB,QAAQ,CAAC,GAAQ;IAC/B,OAAO,CACL,OAAO,IAAI,GAAG;QACd,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU;QAC/B,MAAM,IAAI,GAAG;QACb,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU;QAC9B,MAAM,IAAI,GAAG;QACb,OAAO,GAAG,CAAC,IAAI,KAAK,UAAU;QAC9B,OAAO,IAAI,GAAG;QACd,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU;QAC/B,OAAO,IAAI,GAAG;QACd,OAAO,GAAG,CAAC,KAAK,KAAK,UAAU,CAChC,CAAC;AACJ,CAAC;AAbD,4BAaC"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { HierarchicalLogger, LogMethod } from '../index';
|
|
2
|
-
export declare class MockLogger implements HierarchicalLogger {
|
|
3
|
-
debug: LogMethod;
|
|
4
|
-
info: LogMethod;
|
|
5
|
-
warn: LogMethod;
|
|
6
|
-
error: LogMethod;
|
|
7
|
-
fatal: LogMethod;
|
|
8
|
-
child: () => HierarchicalLogger;
|
|
9
|
-
private _children;
|
|
10
|
-
}
|
|
11
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mocks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAGzD,qBAAa,UAAW,YAAW,kBAAkB;IAC5C,KAAK,EAAE,SAAS,CAAa;IAC7B,IAAI,EAAE,SAAS,CAAa;IAC5B,IAAI,EAAE,SAAS,CAAa;IAC5B,KAAK,EAAE,SAAS,CAAa;IAC7B,KAAK,EAAE,SAAS,CAAa;IAE7B,KAAK,EAAE,MAAM,kBAAkB,CAInC;IAGH,OAAO,CAAC,SAAS,CAAoB;CACtC"}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MockLogger = void 0;
|
|
4
|
-
// Export a mock so any users of this library that use jest can use it.
|
|
5
|
-
class MockLogger {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.debug = jest.fn();
|
|
8
|
-
this.info = jest.fn();
|
|
9
|
-
this.warn = jest.fn();
|
|
10
|
-
this.error = jest.fn();
|
|
11
|
-
this.fatal = jest.fn();
|
|
12
|
-
this.child = jest.fn(() => {
|
|
13
|
-
const childLogger = new MockLogger();
|
|
14
|
-
this._children.push(childLogger);
|
|
15
|
-
return childLogger;
|
|
16
|
-
});
|
|
17
|
-
// A property to check children created by this logger.
|
|
18
|
-
this._children = [];
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
exports.MockLogger = MockLogger;
|
|
22
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mocks/index.ts"],"names":[],"mappings":";;;AAEA,uEAAuE;AACvE,MAAa,UAAU;IAAvB;QACS,UAAK,GAAc,IAAI,CAAC,EAAE,EAAE,CAAC;QAC7B,SAAI,GAAc,IAAI,CAAC,EAAE,EAAE,CAAC;QAC5B,SAAI,GAAc,IAAI,CAAC,EAAE,EAAE,CAAC;QAC5B,UAAK,GAAc,IAAI,CAAC,EAAE,EAAE,CAAC;QAC7B,UAAK,GAAc,IAAI,CAAC,EAAE,EAAE,CAAC;QAE7B,UAAK,GAA6B,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE;YACpD,MAAM,WAAW,GAAG,IAAI,UAAU,EAAE,CAAC;YACrC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YACjC,OAAO,WAAW,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH,uDAAuD;QAC/C,cAAS,GAAiB,EAAE,CAAC;IACvC,CAAC;CAAA;AAfD,gCAeC"}
|
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "logger-interface",
|
|
3
|
-
"description": "Typescript interface that provides standard logging levels `debug`, `info`, `warn`, `error`, and `fatal`",
|
|
4
|
-
"version": "2.0.3",
|
|
5
|
-
"contributors": [
|
|
6
|
-
{
|
|
7
|
-
"name": "Callum Osmotherly",
|
|
8
|
-
"email": "cosmotherly@atlassian.com"
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
"name": "Luciano Leggieri",
|
|
12
|
-
"email": "lleggieri@atlassian.com"
|
|
13
|
-
}
|
|
14
|
-
],
|
|
15
|
-
"main": "dist/index",
|
|
16
|
-
"license": "Proprietary",
|
|
17
|
-
"repository": {
|
|
18
|
-
"directory": "src/packages/logging/logger-interface",
|
|
19
|
-
"type": "git",
|
|
20
|
-
"url": "git@bitbucket.org:atlassian/node-monorepo.git"
|
|
21
|
-
},
|
|
22
|
-
"homepage": "https://bitbucket.org/atlassian/node-monorepo/src/master/src/packages/logging/logger-interface",
|
|
23
|
-
"files": [
|
|
24
|
-
"bin/",
|
|
25
|
-
"dist/",
|
|
26
|
-
"package.json",
|
|
27
|
-
"CHANGELOG.md",
|
|
28
|
-
"README.md"
|
|
29
|
-
],
|
|
30
|
-
"types": "dist/index.d.ts",
|
|
31
|
-
"typings": "dist/index.d.ts",
|
|
32
|
-
"config": {
|
|
33
|
-
"registry": "atlassian",
|
|
34
|
-
"isPlatformPackage": true
|
|
35
|
-
}
|
|
36
|
-
}
|
|
@@ -1,226 +0,0 @@
|
|
|
1
|
-
# @atlassian/metrics-interface
|
|
2
|
-
|
|
3
|
-
## 4.0.0
|
|
4
|
-
|
|
5
|
-
### Major Changes
|
|
6
|
-
|
|
7
|
-
- 6215e00df: Upgrade Node version to 20
|
|
8
|
-
|
|
9
|
-
## 3.0.2
|
|
10
|
-
|
|
11
|
-
### Patch Changes
|
|
12
|
-
|
|
13
|
-
- 172390575: added list of onboarded packages and updated package descriptions
|
|
14
|
-
|
|
15
|
-
## 3.0.1
|
|
16
|
-
|
|
17
|
-
### Patch Changes
|
|
18
|
-
|
|
19
|
-
- 39e14c1c: onboarding metrics as platform packages
|
|
20
|
-
|
|
21
|
-
## 3.0.0
|
|
22
|
-
|
|
23
|
-
### Major Changes
|
|
24
|
-
|
|
25
|
-
- e93d72e: Add histogram() method to Metrics interface.
|
|
26
|
-
|
|
27
|
-
### Migration
|
|
28
|
-
|
|
29
|
-
This is a relatively safe change, but it might break your builds if you use `Metrics` type as now it should have a
|
|
30
|
-
"histogram" method.
|
|
31
|
-
|
|
32
|
-
### Example
|
|
33
|
-
|
|
34
|
-
Here's how you can use histograms in your code:
|
|
35
|
-
|
|
36
|
-
```typescript
|
|
37
|
-
import { Metrics } from '@atlassian/metrics-interface';
|
|
38
|
-
|
|
39
|
-
const metrics: Metrics = {
|
|
40
|
-
/* ... */
|
|
41
|
-
};
|
|
42
|
-
|
|
43
|
-
const buckets = [10, 50, 100];
|
|
44
|
-
const tags = {
|
|
45
|
-
/* ... */
|
|
46
|
-
};
|
|
47
|
-
const timer = metrics.histogram('metricName', buckets, extraTags).measure();
|
|
48
|
-
|
|
49
|
-
// ...some I/O operation
|
|
50
|
-
|
|
51
|
-
const extraTags = {
|
|
52
|
-
/* ... */
|
|
53
|
-
};
|
|
54
|
-
timer.stop(extraTags);
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
## 2.3.0
|
|
58
|
-
|
|
59
|
-
### Minor Changes
|
|
60
|
-
|
|
61
|
-
- bdcf6df: Add support for set metric type: https://github.com/statsd/statsd/blob/master/docs/metric_types.md#sets.
|
|
62
|
-
Counts the number of unique values between flushes.
|
|
63
|
-
|
|
64
|
-
```javascript
|
|
65
|
-
metrics.set('aSet', { foo: 'bar' }).add('foo');
|
|
66
|
-
metrics.set('aSet', { foo: 'bar' }).add('bar');
|
|
67
|
-
metrics.set('aSet', { foo: 'bar' }).add('foo');
|
|
68
|
-
|
|
69
|
-
// results in metric aSet reporting a count of 2 (2 unique values 'foo' and 'bar' added to set in the flush interval)
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
## 2.2.0
|
|
73
|
-
|
|
74
|
-
### Minor Changes
|
|
75
|
-
|
|
76
|
-
- 1505248: Use the "node:" style import declaration for NodeJS builtins
|
|
77
|
-
|
|
78
|
-
## 2.1.1
|
|
79
|
-
|
|
80
|
-
### Patch Changes
|
|
81
|
-
|
|
82
|
-
- d46b350: Bind now one time instead of every time measure is called.
|
|
83
|
-
|
|
84
|
-
## 2.1.0
|
|
85
|
-
|
|
86
|
-
### Minor Changes
|
|
87
|
-
|
|
88
|
-
- 1b15f45: Fix for Node 20
|
|
89
|
-
|
|
90
|
-
## 2.0.1
|
|
91
|
-
|
|
92
|
-
### Patch Changes
|
|
93
|
-
|
|
94
|
-
- 174f3f5: incredible-monorepo renamed to node-monorepo
|
|
95
|
-
|
|
96
|
-
## 2.0.0
|
|
97
|
-
|
|
98
|
-
### Major Changes
|
|
99
|
-
|
|
100
|
-
- b6125f0: Upgrade NodeJS typings to v16. Package now targets NodeJS runtime 16 and above, all previous NodeJS versions
|
|
101
|
-
are now unsupported.
|
|
102
|
-
|
|
103
|
-
### Minor Changes
|
|
104
|
-
|
|
105
|
-
- b6125f0: Add support for passing in a function to get the current time, defaults to `performance.now`.
|
|
106
|
-
|
|
107
|
-
## 1.3.3
|
|
108
|
-
|
|
109
|
-
### Patch Changes
|
|
110
|
-
|
|
111
|
-
- c0069ef: Package is now compiled with Typescript 4.4
|
|
112
|
-
|
|
113
|
-
Useful links:
|
|
114
|
-
|
|
115
|
-
- https://github.com/Microsoft/TypeScript-wiki/blob/main/Breaking-Changes.md#more-compliant-indirect-calls-for-imported-functions
|
|
116
|
-
- http://perfectionkills.com/global-eval-what-are-the-options/
|
|
117
|
-
|
|
118
|
-
## 1.3.2
|
|
119
|
-
|
|
120
|
-
### Patch Changes
|
|
121
|
-
|
|
122
|
-
- fae10a6: Fixed an issue with compiled typings files after upgrading to TypeScript 4.3. The imports in the typings.d.ts
|
|
123
|
-
files were compiled with paths relative to the monorepo root, rather than absolute package paths. This problem has now
|
|
124
|
-
been fixed.
|
|
125
|
-
|
|
126
|
-
## 1.3.1
|
|
127
|
-
|
|
128
|
-
### Patch Changes
|
|
129
|
-
|
|
130
|
-
- fae1cc7: Minor type changes and tweaks so the package now builds with TypeScript ~4.3
|
|
131
|
-
|
|
132
|
-
## 1.3.0
|
|
133
|
-
|
|
134
|
-
### Minor Changes
|
|
135
|
-
|
|
136
|
-
- 9913f59: feat: Added configurable timing precision, repalced hrtime with performance from perf_hooks
|
|
137
|
-
|
|
138
|
-
## 1.2.4
|
|
139
|
-
|
|
140
|
-
### Patch Changes
|
|
141
|
-
|
|
142
|
-
- fae14d5: An upgrade to prettier caused some changes to linting
|
|
143
|
-
|
|
144
|
-
## 1.2.3
|
|
145
|
-
|
|
146
|
-
### Patch Changes
|
|
147
|
-
|
|
148
|
-
- fae196c: Added a feature to the monorepo so packages with non js entrypoints can be used
|
|
149
|
-
|
|
150
|
-
## 1.2.2
|
|
151
|
-
|
|
152
|
-
### Patch Changes
|
|
153
|
-
|
|
154
|
-
- fae1709: Fixed an issue during package building, so bumping all packages to ensure distribution assets are valid
|
|
155
|
-
|
|
156
|
-
## 1.2.1
|
|
157
|
-
|
|
158
|
-
### Patch Changes
|
|
159
|
-
|
|
160
|
-
- 97644a1: Set Typescript Compiler target to ES2018
|
|
161
|
-
|
|
162
|
-
## 1.2.0
|
|
163
|
-
|
|
164
|
-
### Minor Changes
|
|
165
|
-
|
|
166
|
-
- 3e7f6c1: feat: metrics.timing() supports passing tags in stop() function, stop() returns value
|
|
167
|
-
|
|
168
|
-
## 1.1.2
|
|
169
|
-
|
|
170
|
-
### Patch Changes
|
|
171
|
-
|
|
172
|
-
- fae1a543: In files where @typescript-eslint/no-namespaces is already ignored, also ignore import/export.
|
|
173
|
-
|
|
174
|
-
## 1.1.1
|
|
175
|
-
|
|
176
|
-
### Patch Changes
|
|
177
|
-
|
|
178
|
-
- fae18d7: linting updates to the monorepo
|
|
179
|
-
|
|
180
|
-
## 1.1.0
|
|
181
|
-
|
|
182
|
-
### Minor Changes
|
|
183
|
-
|
|
184
|
-
- 1f4aaad: feat: metrics.counter has new 'incrBy' and 'decrBy' interface
|
|
185
|
-
|
|
186
|
-
## 1.0.15
|
|
187
|
-
|
|
188
|
-
### Patch Changes
|
|
189
|
-
|
|
190
|
-
- 85bb2aa: monorepo changes: rename packageJson.publishConfig to packageJson.config.publishOverrides
|
|
191
|
-
|
|
192
|
-
## 1.0.14
|
|
193
|
-
|
|
194
|
-
### Patch Changes
|
|
195
|
-
|
|
196
|
-
- 645304b: fix: ensure all monorepo packages do not use ranges in their dependencies (for changeset's automatic bumps)
|
|
197
|
-
|
|
198
|
-
## 1.0.13
|
|
199
|
-
|
|
200
|
-
### Patch Changes
|
|
201
|
-
|
|
202
|
-
- 6af309e: chore: update homepage field in package.json
|
|
203
|
-
|
|
204
|
-
## 1.0.12
|
|
205
|
-
|
|
206
|
-
### Patch Changes
|
|
207
|
-
|
|
208
|
-
- 37e36f9: fix: the main, types and typings fields in package.json were incorrect on publish
|
|
209
|
-
|
|
210
|
-
## 1.0.11
|
|
211
|
-
|
|
212
|
-
### Patch Changes
|
|
213
|
-
|
|
214
|
-
- b9aad92: fix: the previous patch version did not contain dist files
|
|
215
|
-
|
|
216
|
-
## 1.0.10
|
|
217
|
-
|
|
218
|
-
### Patch Changes
|
|
219
|
-
|
|
220
|
-
- c255e4f: Dev improvements: Updated how the package is tested and published
|
|
221
|
-
|
|
222
|
-
## 1.0.9
|
|
223
|
-
|
|
224
|
-
### Patch Changes
|
|
225
|
-
|
|
226
|
-
- 30c71b0: Add eslint import rules.
|
|
@@ -1,63 +0,0 @@
|
|
|
1
|
-
# @atlassian/metrics-interface
|
|
2
|
-
|
|
3
|
-
This module just exports an interface that provides better interoperability for TypeScript services that use any kind of
|
|
4
|
-
metrics.
|
|
5
|
-
|
|
6
|
-
## Usage
|
|
7
|
-
|
|
8
|
-
```typescript
|
|
9
|
-
// Import each type as required by your use-case.
|
|
10
|
-
import { Metrics, Counter, Gauge, Tags, Timing } from '@atlassian/metrics-interface';
|
|
11
|
-
|
|
12
|
-
export class MyMetricsClass implements Metrics {
|
|
13
|
-
// Returns a Metrics instance to be used as child.
|
|
14
|
-
child(name: string, tags?: Tags): Metrics {
|
|
15
|
-
/* ... */
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
// Create a counter metric:
|
|
19
|
-
// const counter = myMetrics.counter('page_visits');
|
|
20
|
-
// counter.incr(); // <-- increase the count
|
|
21
|
-
// counter.decr(); // <-- decrease the count
|
|
22
|
-
counter(name: string, tags?: Tags): Counter {
|
|
23
|
-
/* ... */
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
// Create a simple gauge metric:
|
|
27
|
-
// const gauge = myMetrics.gauge('cpu_percentage');
|
|
28
|
-
// gauge.set(75);
|
|
29
|
-
gauge(name: string, tags?: Tags): Gauge {
|
|
30
|
-
/* ... */
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
// Create a timer metric:
|
|
34
|
-
// const initMetric = myMetrics.timing('initialisation');
|
|
35
|
-
// const timer = initMetric.measure();
|
|
36
|
-
// ...
|
|
37
|
-
// timer.stop();
|
|
38
|
-
timing(name: string, tags?: Tags): Timing {
|
|
39
|
-
/* ... */
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
// Create a histogram metric:
|
|
43
|
-
// const initMetric = myMetrics.histogram('latency', [10, 100, 500]);
|
|
44
|
-
// const timer = initMetric.measure();
|
|
45
|
-
// ...
|
|
46
|
-
// timer.stop();
|
|
47
|
-
histogram(name: string, buckets: number[], tags?: Tags): Timing {
|
|
48
|
-
/* ... */
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
// Emit a custom event for your metrics:
|
|
52
|
-
// myMetrics.event('something_happened', 'foo bar baz quix...');
|
|
53
|
-
event(title: string, description?: string): void {
|
|
54
|
-
/* ... */
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
```
|
|
58
|
-
|
|
59
|
-
## Implementations
|
|
60
|
-
|
|
61
|
-
For great implementations of this interface, see the following:
|
|
62
|
-
|
|
63
|
-
- [statsd-metrics](/platform/node/platform/packages/statsd-metrics-collector/)
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./metrics"), exports);
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B"}
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
export interface Tags {
|
|
2
|
-
[key: string]: string;
|
|
3
|
-
}
|
|
4
|
-
export interface Metrics {
|
|
5
|
-
child(name: string, tags?: Tags): Metrics;
|
|
6
|
-
counter(name: string, tags?: Tags): Counter;
|
|
7
|
-
gauge(name: string, tags?: Tags): Gauge;
|
|
8
|
-
set(name: string, tags?: Tags): Set;
|
|
9
|
-
timing(name: string, tags?: Tags): Timing;
|
|
10
|
-
histogram(name: string, buckets: number[], tags?: Tags): Timing;
|
|
11
|
-
event(title: string, description?: string): void;
|
|
12
|
-
}
|
|
13
|
-
export interface Counter {
|
|
14
|
-
incr(): void;
|
|
15
|
-
decr(): void;
|
|
16
|
-
incrBy(val: number): void;
|
|
17
|
-
decrBy(val: number): void;
|
|
18
|
-
}
|
|
19
|
-
export interface Gauge {
|
|
20
|
-
set(val: number): void;
|
|
21
|
-
}
|
|
22
|
-
export interface Timing {
|
|
23
|
-
set(val: number, extraTags?: Tags): void;
|
|
24
|
-
measure(): Timing.Stop;
|
|
25
|
-
}
|
|
26
|
-
export interface TimingOptions {
|
|
27
|
-
precision?: number;
|
|
28
|
-
now?: () => number;
|
|
29
|
-
}
|
|
30
|
-
export declare namespace Timing {
|
|
31
|
-
interface Stop {
|
|
32
|
-
stop(extraTags?: Tags, opts?: TimingOptions): number;
|
|
33
|
-
}
|
|
34
|
-
const measure: (cb: (val: number, extraTags?: Tags) => void, timingOptions?: TimingOptions) => Stop;
|
|
35
|
-
}
|
|
36
|
-
export interface Set {
|
|
37
|
-
add(val: string | number, extraTags?: Tags): void;
|
|
38
|
-
}
|
|
39
|
-
export declare class NoMetrics implements Metrics {
|
|
40
|
-
child(_name: string): Metrics;
|
|
41
|
-
counter(_name: string): Counter;
|
|
42
|
-
gauge(_name: string): Gauge;
|
|
43
|
-
set(_name: string): Set;
|
|
44
|
-
timing(_name: string): Timing;
|
|
45
|
-
histogram(_name: string): Timing;
|
|
46
|
-
event(_title: string, _description?: string): void;
|
|
47
|
-
}
|
|
48
|
-
//# sourceMappingURL=metrics.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,IAAI;IACnB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,OAAO;IACtB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC;IAC1C,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC;IAC5C,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,KAAK,CAAC;IACxC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,GAAG,CAAC;IACpC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAC1C,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,GAAG,MAAM,CAAC;IAChE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClD;AAED,MAAM,WAAW,OAAO;IACtB,IAAI,IAAI,IAAI,CAAC;IACb,IAAI,IAAI,IAAI,CAAC;IACb,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,KAAK;IACpB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAGD,MAAM,WAAW,MAAM;IACrB,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACzC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,aAAa;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,MAAM,CAAC;CACpB;AAED,yBAAiB,MAAM,CAAC;IACtB,UAAiB,IAAI;QACnB,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,aAAa,GAAG,MAAM,CAAC;KACtD;IAEM,MAAM,OAAO,aAAc,MAAM,cAAc,IAAI,KAAK,IAAI,kBAAkB,aAAa,KAAG,IAWpG,CAAC;CACH;AAED,MAAM,WAAW,GAAG;IAClB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACnD;AAKD,qBAAa,SAAU,YAAW,OAAO;IACvC,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAI7B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAS/B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK;IAM3B,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG;IAMvB,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAW7B,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IAWhC,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI;CACnD"}
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/* eslint-disable @typescript-eslint/no-namespace, import/export */
|
|
3
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.NoMetrics = exports.Timing = void 0;
|
|
5
|
-
const node_perf_hooks_1 = require("node:perf_hooks");
|
|
6
|
-
const perfNow = node_perf_hooks_1.performance.now.bind(node_perf_hooks_1.performance);
|
|
7
|
-
var Timing;
|
|
8
|
-
(function (Timing) {
|
|
9
|
-
Timing.measure = (cb, timingOptions) => {
|
|
10
|
-
const now = timingOptions?.now || /* istanbul ignore next - relies on perf_hooks */ perfNow;
|
|
11
|
-
const start = now();
|
|
12
|
-
return {
|
|
13
|
-
stop: (tags) => {
|
|
14
|
-
const latency = now() - start;
|
|
15
|
-
const result = parseFloat(latency.toFixed(timingOptions?.precision));
|
|
16
|
-
cb(result, tags);
|
|
17
|
-
return result;
|
|
18
|
-
},
|
|
19
|
-
};
|
|
20
|
-
};
|
|
21
|
-
})(Timing || (exports.Timing = Timing = {}));
|
|
22
|
-
// A simple class that implements the interface without actually doing anything.
|
|
23
|
-
// You can use this in tests as a stub, as part of an abstract class, or where
|
|
24
|
-
// you need to have something that implements Metrics without its functionality.
|
|
25
|
-
class NoMetrics {
|
|
26
|
-
child(_name) {
|
|
27
|
-
return this;
|
|
28
|
-
}
|
|
29
|
-
counter(_name) {
|
|
30
|
-
return {
|
|
31
|
-
incr: () => { },
|
|
32
|
-
decr: () => { },
|
|
33
|
-
incrBy: (_val) => { },
|
|
34
|
-
decrBy: (_val) => { },
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
gauge(_name) {
|
|
38
|
-
return {
|
|
39
|
-
set: (_val) => { },
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
set(_name) {
|
|
43
|
-
return {
|
|
44
|
-
add: (_val) => { },
|
|
45
|
-
};
|
|
46
|
-
}
|
|
47
|
-
timing(_name) {
|
|
48
|
-
return {
|
|
49
|
-
set: (_val) => { },
|
|
50
|
-
measure: () => {
|
|
51
|
-
return {
|
|
52
|
-
stop: () => 0,
|
|
53
|
-
};
|
|
54
|
-
},
|
|
55
|
-
};
|
|
56
|
-
}
|
|
57
|
-
histogram(_name) {
|
|
58
|
-
return {
|
|
59
|
-
set: (_val) => { },
|
|
60
|
-
measure: () => {
|
|
61
|
-
return {
|
|
62
|
-
stop: () => 0,
|
|
63
|
-
};
|
|
64
|
-
},
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
event(_title, _description) { }
|
|
68
|
-
}
|
|
69
|
-
exports.NoMetrics = NoMetrics;
|
|
70
|
-
//# sourceMappingURL=metrics.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"metrics.js","sourceRoot":"","sources":["../src/metrics.ts"],"names":[],"mappings":";AAAA,mEAAmE;;;AAEnE,qDAA8C;AAE9C,MAAM,OAAO,GAAG,6BAAW,CAAC,GAAG,CAAC,IAAI,CAAC,6BAAW,CAAC,CAAC;AAsClD,IAAiB,MAAM,CAiBtB;AAjBD,WAAiB,MAAM;IAKR,cAAO,GAAG,CAAC,EAA2C,EAAE,aAA6B,EAAQ,EAAE;QAC1G,MAAM,GAAG,GAAG,aAAa,EAAE,GAAG,IAAI,iDAAiD,CAAC,OAAO,CAAC;QAC5F,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC;QACpB,OAAO;YACL,IAAI,EAAE,CAAC,IAAW,EAAE,EAAE;gBACpB,MAAM,OAAO,GAAG,GAAG,EAAE,GAAG,KAAK,CAAC;gBAC9B,MAAM,MAAM,GAAG,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,CAAC,CAAC;gBACrE,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACjB,OAAO,MAAM,CAAC;YAChB,CAAC;SACF,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC,EAjBgB,MAAM,sBAAN,MAAM,QAiBtB;AAMD,gFAAgF;AAChF,8EAA8E;AAC9E,gFAAgF;AAChF,MAAa,SAAS;IACpB,KAAK,CAAC,KAAa;QACjB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,CAAC,KAAa;QACnB,OAAO;YACL,IAAI,EAAE,GAAS,EAAE,GAAE,CAAC;YACpB,IAAI,EAAE,GAAS,EAAE,GAAE,CAAC;YACpB,MAAM,EAAE,CAAC,IAAY,EAAQ,EAAE,GAAE,CAAC;YAClC,MAAM,EAAE,CAAC,IAAY,EAAQ,EAAE,GAAE,CAAC;SACnC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,KAAa;QACjB,OAAO;YACL,GAAG,EAAE,CAAC,IAAY,EAAQ,EAAE,GAAE,CAAC;SAChC,CAAC;IACJ,CAAC;IAED,GAAG,CAAC,KAAa;QACf,OAAO;YACL,GAAG,EAAE,CAAC,IAAqB,EAAQ,EAAE,GAAE,CAAC;SACzC,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAa;QAClB,OAAO;YACL,GAAG,EAAE,CAAC,IAAY,EAAQ,EAAE,GAAE,CAAC;YAC/B,OAAO,EAAE,GAAgB,EAAE;gBACzB,OAAO;oBACL,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;iBACd,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,KAAa;QACrB,OAAO;YACL,GAAG,EAAE,CAAC,IAAY,EAAQ,EAAE,GAAE,CAAC;YAC/B,OAAO,EAAE,GAAgB,EAAE;gBACzB,OAAO;oBACL,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;iBACd,CAAC;YACJ,CAAC;SACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,MAAc,EAAE,YAAqB,IAAS,CAAC;CACtD;AAjDD,8BAiDC"}
|
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
/// <reference types="jest" />
|
|
2
|
-
import { Counter, Gauge, Metrics, Set, Tags, Timing } from '../index';
|
|
3
|
-
export declare class MockCounter implements Counter {
|
|
4
|
-
name: string;
|
|
5
|
-
tags?: Tags | undefined;
|
|
6
|
-
incr: jest.Mock<any, any, any>;
|
|
7
|
-
decr: jest.Mock<any, any, any>;
|
|
8
|
-
incrBy: jest.Mock<any, any, any>;
|
|
9
|
-
decrBy: jest.Mock<any, any, any>;
|
|
10
|
-
constructor(name: string, tags?: Tags | undefined);
|
|
11
|
-
}
|
|
12
|
-
export declare class MockGauge implements Gauge {
|
|
13
|
-
name: string;
|
|
14
|
-
tags?: Tags | undefined;
|
|
15
|
-
set: jest.Mock<any, any, any>;
|
|
16
|
-
constructor(name: string, tags?: Tags | undefined);
|
|
17
|
-
}
|
|
18
|
-
export declare class MockSet implements Set {
|
|
19
|
-
name: string;
|
|
20
|
-
tags?: Tags | undefined;
|
|
21
|
-
add: jest.Mock<any, any, any>;
|
|
22
|
-
constructor(name: string, tags?: Tags | undefined);
|
|
23
|
-
}
|
|
24
|
-
export declare class MockTiming implements Timing {
|
|
25
|
-
name: string;
|
|
26
|
-
tags?: Tags | undefined;
|
|
27
|
-
buckets?: number[] | undefined;
|
|
28
|
-
set: jest.Mock<any, any, any>;
|
|
29
|
-
measure: jest.Mock<{
|
|
30
|
-
stop: jest.Mock<any, any, any>;
|
|
31
|
-
}, [], any>;
|
|
32
|
-
constructor(name: string, tags?: Tags | undefined, buckets?: number[] | undefined);
|
|
33
|
-
}
|
|
34
|
-
export declare class MockMetrics implements Metrics {
|
|
35
|
-
child: jest.Mock<MockMetrics, [], any>;
|
|
36
|
-
counter: jest.Mock<MockCounter, [name: any, tags: any], any>;
|
|
37
|
-
gauge: jest.Mock<MockGauge, [name: any, tags: any], any>;
|
|
38
|
-
set: jest.Mock<MockSet, [name: any, tags: any], any>;
|
|
39
|
-
timing: jest.Mock<MockTiming, [name: any, tags: any], any>;
|
|
40
|
-
histogram: jest.Mock<MockTiming, [name: any, buckets: any, tags: any], any>;
|
|
41
|
-
event: jest.Mock<any, any, any>;
|
|
42
|
-
}
|
|
43
|
-
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/mocks/index.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAEtE,qBAAa,WAAY,YAAW,OAAO;IAKtB,IAAI,EAAE,MAAM;IAAS,IAAI,CAAC;IAJ7C,IAAI,2BAAa;IACjB,IAAI,2BAAa;IACjB,MAAM,2BAAa;IACnB,MAAM,2BAAa;gBACA,IAAI,EAAE,MAAM,EAAS,IAAI,CAAC,kBAAM;CACpD;AAED,qBAAa,SAAU,YAAW,KAAK;IAElB,IAAI,EAAE,MAAM;IAAS,IAAI,CAAC;IAD7C,GAAG,2BAAa;gBACG,IAAI,EAAE,MAAM,EAAS,IAAI,CAAC,kBAAM;CACpD;AAED,qBAAa,OAAQ,YAAW,GAAG;IAEd,IAAI,EAAE,MAAM;IAAS,IAAI,CAAC;IAD7C,GAAG,2BAAa;gBACG,IAAI,EAAE,MAAM,EAAS,IAAI,CAAC,kBAAM;CACpD;AAED,qBAAa,UAAW,YAAW,MAAM;IAGpB,IAAI,EAAE,MAAM;IAAS,IAAI,CAAC;IAAe,OAAO,CAAC;IAFpE,GAAG,2BAAa;IAChB,OAAO;;gBAAwC;gBAC5B,IAAI,EAAE,MAAM,EAAS,IAAI,CAAC,kBAAM,EAAS,OAAO,CAAC,sBAAU;CAC/E;AAGD,qBAAa,WAAY,YAAW,OAAO;IACzC,KAAK,kCAAoC;IACzC,OAAO,sDAAwD;IAC/D,KAAK,oDAAsD;IAC3D,GAAG,kDAAoD;IACvD,MAAM,qDAAuD;IAC7D,SAAS,mEAAyE;IAClF,KAAK,2BAAa;CACnB"}
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MockMetrics = exports.MockTiming = exports.MockSet = exports.MockGauge = exports.MockCounter = void 0;
|
|
4
|
-
class MockCounter {
|
|
5
|
-
constructor(name, tags) {
|
|
6
|
-
this.name = name;
|
|
7
|
-
this.tags = tags;
|
|
8
|
-
this.incr = jest.fn();
|
|
9
|
-
this.decr = jest.fn();
|
|
10
|
-
this.incrBy = jest.fn();
|
|
11
|
-
this.decrBy = jest.fn();
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
exports.MockCounter = MockCounter;
|
|
15
|
-
class MockGauge {
|
|
16
|
-
constructor(name, tags) {
|
|
17
|
-
this.name = name;
|
|
18
|
-
this.tags = tags;
|
|
19
|
-
this.set = jest.fn();
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
exports.MockGauge = MockGauge;
|
|
23
|
-
class MockSet {
|
|
24
|
-
constructor(name, tags) {
|
|
25
|
-
this.name = name;
|
|
26
|
-
this.tags = tags;
|
|
27
|
-
this.add = jest.fn();
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
exports.MockSet = MockSet;
|
|
31
|
-
class MockTiming {
|
|
32
|
-
constructor(name, tags, buckets) {
|
|
33
|
-
this.name = name;
|
|
34
|
-
this.tags = tags;
|
|
35
|
-
this.buckets = buckets;
|
|
36
|
-
this.set = jest.fn();
|
|
37
|
-
this.measure = jest.fn(() => ({ stop: jest.fn() }));
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
exports.MockTiming = MockTiming;
|
|
41
|
-
// Export a mock so any users of this library that use jest can use it.
|
|
42
|
-
class MockMetrics {
|
|
43
|
-
constructor() {
|
|
44
|
-
this.child = jest.fn(() => new MockMetrics());
|
|
45
|
-
this.counter = jest.fn((name, tags) => new MockCounter(name, tags));
|
|
46
|
-
this.gauge = jest.fn((name, tags) => new MockGauge(name, tags));
|
|
47
|
-
this.set = jest.fn((name, tags) => new MockSet(name, tags));
|
|
48
|
-
this.timing = jest.fn((name, tags) => new MockTiming(name, tags));
|
|
49
|
-
this.histogram = jest.fn((name, buckets, tags) => new MockTiming(name, tags, buckets));
|
|
50
|
-
this.event = jest.fn();
|
|
51
|
-
}
|
|
52
|
-
}
|
|
53
|
-
exports.MockMetrics = MockMetrics;
|
|
54
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/mocks/index.ts"],"names":[],"mappings":";;;AAEA,MAAa,WAAW;IAKtB,YAAmB,IAAY,EAAS,IAAW;QAAhC,SAAI,GAAJ,IAAI,CAAQ;QAAS,SAAI,GAAJ,IAAI,CAAO;QAJnD,SAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACjB,SAAI,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACjB,WAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QACnB,WAAM,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACmC,CAAC;CACxD;AAND,kCAMC;AAED,MAAa,SAAS;IAEpB,YAAmB,IAAY,EAAS,IAAW;QAAhC,SAAI,GAAJ,IAAI,CAAQ;QAAS,SAAI,GAAJ,IAAI,CAAO;QADnD,QAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACsC,CAAC;CACxD;AAHD,8BAGC;AAED,MAAa,OAAO;IAElB,YAAmB,IAAY,EAAS,IAAW;QAAhC,SAAI,GAAJ,IAAI,CAAQ;QAAS,SAAI,GAAJ,IAAI,CAAO;QADnD,QAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACsC,CAAC;CACxD;AAHD,0BAGC;AAED,MAAa,UAAU;IAGrB,YAAmB,IAAY,EAAS,IAAW,EAAS,OAAkB;QAA3D,SAAI,GAAJ,IAAI,CAAQ;QAAS,SAAI,GAAJ,IAAI,CAAO;QAAS,YAAO,GAAP,OAAO,CAAW;QAF9E,QAAG,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;QAChB,YAAO,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;IACkC,CAAC;CACnF;AAJD,gCAIC;AAED,uEAAuE;AACvE,MAAa,WAAW;IAAxB;QACE,UAAK,GAAG,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,IAAI,WAAW,EAAE,CAAC,CAAC;QACzC,YAAO,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAC/D,UAAK,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAC3D,QAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QACvD,WAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;QAC7D,cAAS,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,UAAU,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;QAClF,UAAK,GAAG,IAAI,CAAC,EAAE,EAAE,CAAC;IACpB,CAAC;CAAA;AARD,kCAQC"}
|