@3sixty/telemetry-models 0.0.0-stage → 0.20.0-next.1
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/LICENSE +201 -0
- package/README.md +24 -2
- package/dist/es/connectors/multiTelemetryConnector.js +184 -0
- package/dist/es/connectors/multiTelemetryConnector.js.map +1 -0
- package/dist/es/connectors/silentTelemetryConnector.js +59 -0
- package/dist/es/connectors/silentTelemetryConnector.js.map +1 -0
- package/dist/es/factories/metricsProducerFactory.js +13 -0
- package/dist/es/factories/metricsProducerFactory.js.map +1 -0
- package/dist/es/factories/telemetryConnectorFactory.js +9 -0
- package/dist/es/factories/telemetryConnectorFactory.js.map +1 -0
- package/dist/es/helpers/metricHelper.js +139 -0
- package/dist/es/helpers/metricHelper.js.map +1 -0
- package/dist/es/index.js +30 -0
- package/dist/es/index.js.map +1 -0
- package/dist/es/models/IMetricsCollectorComponent.js +2 -0
- package/dist/es/models/IMetricsCollectorComponent.js.map +1 -0
- package/dist/es/models/IMetricsProducer.js +2 -0
- package/dist/es/models/IMetricsProducer.js.map +1 -0
- package/dist/es/models/IMultiTelemetryConnectorConstructorOptions.js +4 -0
- package/dist/es/models/IMultiTelemetryConnectorConstructorOptions.js.map +1 -0
- package/dist/es/models/ITelemetryComponent.js +2 -0
- package/dist/es/models/ITelemetryComponent.js.map +1 -0
- package/dist/es/models/ITelemetryConnector.js +2 -0
- package/dist/es/models/ITelemetryConnector.js.map +1 -0
- package/dist/es/models/ITelemetryMetric.js +2 -0
- package/dist/es/models/ITelemetryMetric.js.map +1 -0
- package/dist/es/models/ITelemetryMetricValue.js +4 -0
- package/dist/es/models/ITelemetryMetricValue.js.map +1 -0
- package/dist/es/models/ITelemetryMetricValueEntry.js +2 -0
- package/dist/es/models/ITelemetryMetricValueEntry.js.map +1 -0
- package/dist/es/models/api/ITelemetryAddMetricValueRequest.js +2 -0
- package/dist/es/models/api/ITelemetryAddMetricValueRequest.js.map +1 -0
- package/dist/es/models/api/ITelemetryCreateMetricRequest.js +2 -0
- package/dist/es/models/api/ITelemetryCreateMetricRequest.js.map +1 -0
- package/dist/es/models/api/ITelemetryGetMetricRequest.js +4 -0
- package/dist/es/models/api/ITelemetryGetMetricRequest.js.map +1 -0
- package/dist/es/models/api/ITelemetryGetMetricResponse.js +2 -0
- package/dist/es/models/api/ITelemetryGetMetricResponse.js.map +1 -0
- package/dist/es/models/api/ITelemetryGetMetricValueRequest.js +4 -0
- package/dist/es/models/api/ITelemetryGetMetricValueRequest.js.map +1 -0
- package/dist/es/models/api/ITelemetryGetMetricValueResponse.js +2 -0
- package/dist/es/models/api/ITelemetryGetMetricValueResponse.js.map +1 -0
- package/dist/es/models/api/ITelemetryListRequest.js +4 -0
- package/dist/es/models/api/ITelemetryListRequest.js.map +1 -0
- package/dist/es/models/api/ITelemetryListResponse.js +2 -0
- package/dist/es/models/api/ITelemetryListResponse.js.map +1 -0
- package/dist/es/models/api/ITelemetryRemoveMetricRequest.js +4 -0
- package/dist/es/models/api/ITelemetryRemoveMetricRequest.js.map +1 -0
- package/dist/es/models/api/ITelemetryUpdateMetricRequest.js +4 -0
- package/dist/es/models/api/ITelemetryUpdateMetricRequest.js.map +1 -0
- package/dist/es/models/api/ITelemetryValuesListRequest.js +4 -0
- package/dist/es/models/api/ITelemetryValuesListRequest.js.map +1 -0
- package/dist/es/models/api/ITelemetryValuesListResponse.js +2 -0
- package/dist/es/models/api/ITelemetryValuesListResponse.js.map +1 -0
- package/dist/es/models/metricCounterOperation.js +17 -0
- package/dist/es/models/metricCounterOperation.js.map +1 -0
- package/dist/es/models/metricType.js +21 -0
- package/dist/es/models/metricType.js.map +1 -0
- package/dist/types/connectors/multiTelemetryConnector.d.ts +124 -0
- package/dist/types/connectors/silentTelemetryConnector.d.ts +56 -0
- package/dist/types/factories/metricsProducerFactory.d.ts +10 -0
- package/dist/types/factories/telemetryConnectorFactory.d.ts +6 -0
- package/dist/types/helpers/metricHelper.d.ts +67 -0
- package/dist/types/index.d.ts +27 -0
- package/dist/types/models/IMetricsCollectorComponent.d.ts +6 -0
- package/dist/types/models/IMetricsProducer.d.ts +27 -0
- package/dist/types/models/IMultiTelemetryConnectorConstructorOptions.d.ts +9 -0
- package/dist/types/models/ITelemetryComponent.d.ts +109 -0
- package/dist/types/models/ITelemetryConnector.d.ts +109 -0
- package/dist/types/models/ITelemetryMetric.d.ts +31 -0
- package/dist/types/models/ITelemetryMetricValue.d.ts +23 -0
- package/dist/types/models/ITelemetryMetricValueEntry.d.ts +20 -0
- package/dist/types/models/api/ITelemetryAddMetricValueRequest.d.ts +30 -0
- package/dist/types/models/api/ITelemetryCreateMetricRequest.d.ts +11 -0
- package/dist/types/models/api/ITelemetryGetMetricRequest.d.ts +14 -0
- package/dist/types/models/api/ITelemetryGetMetricResponse.d.ts +20 -0
- package/dist/types/models/api/ITelemetryGetMetricValueRequest.d.ts +18 -0
- package/dist/types/models/api/ITelemetryGetMetricValueResponse.d.ts +10 -0
- package/dist/types/models/api/ITelemetryListRequest.d.ts +22 -0
- package/dist/types/models/api/ITelemetryListResponse.d.ts +19 -0
- package/dist/types/models/api/ITelemetryRemoveMetricRequest.d.ts +14 -0
- package/dist/types/models/api/ITelemetryUpdateMetricRequest.d.ts +31 -0
- package/dist/types/models/api/ITelemetryValuesListRequest.d.ts +35 -0
- package/dist/types/models/api/ITelemetryValuesListResponse.d.ts +24 -0
- package/dist/types/models/metricCounterOperation.d.ts +17 -0
- package/dist/types/models/metricType.d.ts +21 -0
- package/docs/changelog.md +9 -0
- package/docs/examples.md +142 -0
- package/docs/reference/classes/MetricHelper.md +232 -0
- package/docs/reference/classes/MultiTelemetryConnector.md +359 -0
- package/docs/reference/classes/SilentTelemetryConnector.md +193 -0
- package/docs/reference/index.md +42 -0
- package/docs/reference/interfaces/IMetricsCollectorComponent.md +7 -0
- package/docs/reference/interfaces/IMetricsProducer.md +45 -0
- package/docs/reference/interfaces/IMultiTelemetryConnectorConstructorOptions.md +11 -0
- package/docs/reference/interfaces/ITelemetryAddMetricValueRequest.md +41 -0
- package/docs/reference/interfaces/ITelemetryComponent.md +273 -0
- package/docs/reference/interfaces/ITelemetryConnector.md +273 -0
- package/docs/reference/interfaces/ITelemetryCreateMetricRequest.md +12 -0
- package/docs/reference/interfaces/ITelemetryGetMetricRequest.md +17 -0
- package/docs/reference/interfaces/ITelemetryGetMetricResponse.md +23 -0
- package/docs/reference/interfaces/ITelemetryGetMetricValueRequest.md +23 -0
- package/docs/reference/interfaces/ITelemetryGetMetricValueResponse.md +11 -0
- package/docs/reference/interfaces/ITelemetryListRequest.md +29 -0
- package/docs/reference/interfaces/ITelemetryListResponse.md +23 -0
- package/docs/reference/interfaces/ITelemetryMetric.md +52 -0
- package/docs/reference/interfaces/ITelemetryMetricValue.md +39 -0
- package/docs/reference/interfaces/ITelemetryMetricValueEntry.md +31 -0
- package/docs/reference/interfaces/ITelemetryRemoveMetricRequest.md +17 -0
- package/docs/reference/interfaces/ITelemetryUpdateMetricRequest.md +43 -0
- package/docs/reference/interfaces/ITelemetryValuesListRequest.md +49 -0
- package/docs/reference/interfaces/ITelemetryValuesListResponse.md +29 -0
- package/docs/reference/type-aliases/MetricCounterOperation.md +5 -0
- package/docs/reference/type-aliases/MetricType.md +5 -0
- package/docs/reference/variables/MetricCounterOperation.md +19 -0
- package/docs/reference/variables/MetricType.md +25 -0
- package/docs/reference/variables/MetricsProducerFactory.md +9 -0
- package/docs/reference/variables/TelemetryConnectorFactory.md +5 -0
- package/locales/en.json +7 -0
- package/package.json +51 -5
|
@@ -0,0 +1,359 @@
|
|
|
1
|
+
# Class: MultiTelemetryConnector
|
|
2
|
+
|
|
3
|
+
Class for performing telemetry operations on multiple connectors.
|
|
4
|
+
|
|
5
|
+
## Implements
|
|
6
|
+
|
|
7
|
+
- [`ITelemetryConnector`](../interfaces/ITelemetryConnector.md)
|
|
8
|
+
|
|
9
|
+
## Constructors
|
|
10
|
+
|
|
11
|
+
### Constructor
|
|
12
|
+
|
|
13
|
+
> **new MultiTelemetryConnector**(`options`): `MultiTelemetryConnector`
|
|
14
|
+
|
|
15
|
+
Create a new instance of MultiTelemetryConnector.
|
|
16
|
+
|
|
17
|
+
#### Parameters
|
|
18
|
+
|
|
19
|
+
##### options
|
|
20
|
+
|
|
21
|
+
[`IMultiTelemetryConnectorConstructorOptions`](../interfaces/IMultiTelemetryConnectorConstructorOptions.md)
|
|
22
|
+
|
|
23
|
+
The options for the connector.
|
|
24
|
+
|
|
25
|
+
#### Returns
|
|
26
|
+
|
|
27
|
+
`MultiTelemetryConnector`
|
|
28
|
+
|
|
29
|
+
## Properties
|
|
30
|
+
|
|
31
|
+
### NAMESPACE {#namespace}
|
|
32
|
+
|
|
33
|
+
> `readonly` `static` **NAMESPACE**: `string` = `"multi"`
|
|
34
|
+
|
|
35
|
+
The namespace for the class.
|
|
36
|
+
|
|
37
|
+
***
|
|
38
|
+
|
|
39
|
+
### CLASS\_NAME {#class_name}
|
|
40
|
+
|
|
41
|
+
> `readonly` `static` **CLASS\_NAME**: `string`
|
|
42
|
+
|
|
43
|
+
Runtime name for the class.
|
|
44
|
+
|
|
45
|
+
## Methods
|
|
46
|
+
|
|
47
|
+
### className() {#classname}
|
|
48
|
+
|
|
49
|
+
> **className**(): `string`
|
|
50
|
+
|
|
51
|
+
Returns the class name of the component.
|
|
52
|
+
|
|
53
|
+
#### Returns
|
|
54
|
+
|
|
55
|
+
`string`
|
|
56
|
+
|
|
57
|
+
The class name of the component.
|
|
58
|
+
|
|
59
|
+
#### Implementation of
|
|
60
|
+
|
|
61
|
+
`ITelemetryConnector.className`
|
|
62
|
+
|
|
63
|
+
***
|
|
64
|
+
|
|
65
|
+
### createMetric() {#createmetric}
|
|
66
|
+
|
|
67
|
+
> **createMetric**(`metric`): `Promise`\<`void`\>
|
|
68
|
+
|
|
69
|
+
Create one or more metrics.
|
|
70
|
+
|
|
71
|
+
#### Parameters
|
|
72
|
+
|
|
73
|
+
##### metric
|
|
74
|
+
|
|
75
|
+
[`ITelemetryMetric`](../interfaces/ITelemetryMetric.md) \| [`ITelemetryMetric`](../interfaces/ITelemetryMetric.md)[]
|
|
76
|
+
|
|
77
|
+
The metric details, or the details of several metrics.
|
|
78
|
+
|
|
79
|
+
#### Returns
|
|
80
|
+
|
|
81
|
+
`Promise`\<`void`\>
|
|
82
|
+
|
|
83
|
+
A promise that resolves when the metrics have been created on all connectors.
|
|
84
|
+
|
|
85
|
+
#### Implementation of
|
|
86
|
+
|
|
87
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`createMetric`](../interfaces/ITelemetryConnector.md#createmetric)
|
|
88
|
+
|
|
89
|
+
***
|
|
90
|
+
|
|
91
|
+
### getMetric() {#getmetric}
|
|
92
|
+
|
|
93
|
+
> **getMetric**(`id`): `Promise`\<\{ `metric`: [`ITelemetryMetric`](../interfaces/ITelemetryMetric.md); `value?`: [`ITelemetryMetricValue`](../interfaces/ITelemetryMetricValue.md); \}\>
|
|
94
|
+
|
|
95
|
+
Get the metric details and it's most recent value.
|
|
96
|
+
|
|
97
|
+
#### Parameters
|
|
98
|
+
|
|
99
|
+
##### id
|
|
100
|
+
|
|
101
|
+
`string`
|
|
102
|
+
|
|
103
|
+
The metric id.
|
|
104
|
+
|
|
105
|
+
#### Returns
|
|
106
|
+
|
|
107
|
+
`Promise`\<\{ `metric`: [`ITelemetryMetric`](../interfaces/ITelemetryMetric.md); `value?`: [`ITelemetryMetricValue`](../interfaces/ITelemetryMetricValue.md); \}\>
|
|
108
|
+
|
|
109
|
+
The metric details and it's most recent value.
|
|
110
|
+
|
|
111
|
+
#### Implementation of
|
|
112
|
+
|
|
113
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`getMetric`](../interfaces/ITelemetryConnector.md#getmetric)
|
|
114
|
+
|
|
115
|
+
***
|
|
116
|
+
|
|
117
|
+
### getMetricValue() {#getmetricvalue}
|
|
118
|
+
|
|
119
|
+
> **getMetricValue**(`id`, `valueId`): `Promise`\<[`ITelemetryMetricValue`](../interfaces/ITelemetryMetricValue.md)\>
|
|
120
|
+
|
|
121
|
+
Get a specific metric value by its id.
|
|
122
|
+
|
|
123
|
+
#### Parameters
|
|
124
|
+
|
|
125
|
+
##### id
|
|
126
|
+
|
|
127
|
+
`string`
|
|
128
|
+
|
|
129
|
+
The id of the metric.
|
|
130
|
+
|
|
131
|
+
##### valueId
|
|
132
|
+
|
|
133
|
+
`string`
|
|
134
|
+
|
|
135
|
+
The id of the metric value.
|
|
136
|
+
|
|
137
|
+
#### Returns
|
|
138
|
+
|
|
139
|
+
`Promise`\<[`ITelemetryMetricValue`](../interfaces/ITelemetryMetricValue.md)\>
|
|
140
|
+
|
|
141
|
+
The metric value.
|
|
142
|
+
|
|
143
|
+
#### Implementation of
|
|
144
|
+
|
|
145
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`getMetricValue`](../interfaces/ITelemetryConnector.md#getmetricvalue)
|
|
146
|
+
|
|
147
|
+
***
|
|
148
|
+
|
|
149
|
+
### updateMetric() {#updatemetric}
|
|
150
|
+
|
|
151
|
+
> **updateMetric**(`metric`): `Promise`\<`void`\>
|
|
152
|
+
|
|
153
|
+
Update metric.
|
|
154
|
+
|
|
155
|
+
#### Parameters
|
|
156
|
+
|
|
157
|
+
##### metric
|
|
158
|
+
|
|
159
|
+
`Omit`\<[`ITelemetryMetric`](../interfaces/ITelemetryMetric.md), `"type"`\>
|
|
160
|
+
|
|
161
|
+
The metric details.
|
|
162
|
+
|
|
163
|
+
#### Returns
|
|
164
|
+
|
|
165
|
+
`Promise`\<`void`\>
|
|
166
|
+
|
|
167
|
+
A promise that resolves when the metric has been updated on all connectors.
|
|
168
|
+
|
|
169
|
+
#### Implementation of
|
|
170
|
+
|
|
171
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`updateMetric`](../interfaces/ITelemetryConnector.md#updatemetric)
|
|
172
|
+
|
|
173
|
+
***
|
|
174
|
+
|
|
175
|
+
### addMetricValue() {#addmetricvalue}
|
|
176
|
+
|
|
177
|
+
> **addMetricValue**(`id`, `value`, `customData?`): `Promise`\<`string`\>
|
|
178
|
+
|
|
179
|
+
Add a metric value.
|
|
180
|
+
|
|
181
|
+
#### Parameters
|
|
182
|
+
|
|
183
|
+
##### id
|
|
184
|
+
|
|
185
|
+
`string`
|
|
186
|
+
|
|
187
|
+
The id of the metric.
|
|
188
|
+
|
|
189
|
+
##### value
|
|
190
|
+
|
|
191
|
+
`number` \| [`MetricCounterOperation`](../type-aliases/MetricCounterOperation.md)
|
|
192
|
+
|
|
193
|
+
The value for the add operation.
|
|
194
|
+
|
|
195
|
+
##### customData?
|
|
196
|
+
|
|
197
|
+
\{\[`key`: `string`\]: `unknown`; \}
|
|
198
|
+
|
|
199
|
+
The custom data for the add operation.
|
|
200
|
+
|
|
201
|
+
#### Returns
|
|
202
|
+
|
|
203
|
+
`Promise`\<`string`\>
|
|
204
|
+
|
|
205
|
+
The created metric value id.
|
|
206
|
+
|
|
207
|
+
#### Implementation of
|
|
208
|
+
|
|
209
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`addMetricValue`](../interfaces/ITelemetryConnector.md#addmetricvalue)
|
|
210
|
+
|
|
211
|
+
***
|
|
212
|
+
|
|
213
|
+
### addMetricValues() {#addmetricvalues}
|
|
214
|
+
|
|
215
|
+
> **addMetricValues**(`values`): `Promise`\<`string`[]\>
|
|
216
|
+
|
|
217
|
+
Add multiple metric values.
|
|
218
|
+
|
|
219
|
+
#### Parameters
|
|
220
|
+
|
|
221
|
+
##### values
|
|
222
|
+
|
|
223
|
+
[`ITelemetryMetricValueEntry`](../interfaces/ITelemetryMetricValueEntry.md)[]
|
|
224
|
+
|
|
225
|
+
The metric values to add.
|
|
226
|
+
|
|
227
|
+
#### Returns
|
|
228
|
+
|
|
229
|
+
`Promise`\<`string`[]\>
|
|
230
|
+
|
|
231
|
+
The created metric value ids, in the order the values were supplied.
|
|
232
|
+
|
|
233
|
+
#### Implementation of
|
|
234
|
+
|
|
235
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`addMetricValues`](../interfaces/ITelemetryConnector.md#addmetricvalues)
|
|
236
|
+
|
|
237
|
+
***
|
|
238
|
+
|
|
239
|
+
### removeMetric() {#removemetric}
|
|
240
|
+
|
|
241
|
+
> **removeMetric**(`id`): `Promise`\<`void`\>
|
|
242
|
+
|
|
243
|
+
Remove metric.
|
|
244
|
+
|
|
245
|
+
#### Parameters
|
|
246
|
+
|
|
247
|
+
##### id
|
|
248
|
+
|
|
249
|
+
`string`
|
|
250
|
+
|
|
251
|
+
The id of the metric.
|
|
252
|
+
|
|
253
|
+
#### Returns
|
|
254
|
+
|
|
255
|
+
`Promise`\<`void`\>
|
|
256
|
+
|
|
257
|
+
A promise that resolves when the metric has been removed from all connectors.
|
|
258
|
+
|
|
259
|
+
#### Implementation of
|
|
260
|
+
|
|
261
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`removeMetric`](../interfaces/ITelemetryConnector.md#removemetric)
|
|
262
|
+
|
|
263
|
+
***
|
|
264
|
+
|
|
265
|
+
### query() {#query}
|
|
266
|
+
|
|
267
|
+
> **query**(`type?`, `cursor?`, `limit?`): `Promise`\<\{ `entities`: [`ITelemetryMetric`](../interfaces/ITelemetryMetric.md)[]; `cursor?`: `string`; \}\>
|
|
268
|
+
|
|
269
|
+
Query the metrics.
|
|
270
|
+
|
|
271
|
+
#### Parameters
|
|
272
|
+
|
|
273
|
+
##### type?
|
|
274
|
+
|
|
275
|
+
[`MetricType`](../type-aliases/MetricType.md)
|
|
276
|
+
|
|
277
|
+
The type of the metric.
|
|
278
|
+
|
|
279
|
+
##### cursor?
|
|
280
|
+
|
|
281
|
+
`string`
|
|
282
|
+
|
|
283
|
+
The cursor to request the next chunk of entities.
|
|
284
|
+
|
|
285
|
+
##### limit?
|
|
286
|
+
|
|
287
|
+
`number`
|
|
288
|
+
|
|
289
|
+
Limit the number of entities to return.
|
|
290
|
+
|
|
291
|
+
#### Returns
|
|
292
|
+
|
|
293
|
+
`Promise`\<\{ `entities`: [`ITelemetryMetric`](../interfaces/ITelemetryMetric.md)[]; `cursor?`: `string`; \}\>
|
|
294
|
+
|
|
295
|
+
All the entities for the storage matching the conditions,
|
|
296
|
+
and a cursor which can be used to request more entities.
|
|
297
|
+
|
|
298
|
+
#### Throws
|
|
299
|
+
|
|
300
|
+
NotImplementedError if the implementation does not support retrieval.
|
|
301
|
+
|
|
302
|
+
#### Implementation of
|
|
303
|
+
|
|
304
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`query`](../interfaces/ITelemetryConnector.md#query)
|
|
305
|
+
|
|
306
|
+
***
|
|
307
|
+
|
|
308
|
+
### queryValues() {#queryvalues}
|
|
309
|
+
|
|
310
|
+
> **queryValues**(`id`, `timeStart?`, `timeEnd?`, `cursor?`, `limit?`): `Promise`\<\{ `metric`: [`ITelemetryMetric`](../interfaces/ITelemetryMetric.md); `entities`: [`ITelemetryMetricValue`](../interfaces/ITelemetryMetricValue.md)[]; `cursor?`: `string`; \}\>
|
|
311
|
+
|
|
312
|
+
Query the metric values.
|
|
313
|
+
|
|
314
|
+
#### Parameters
|
|
315
|
+
|
|
316
|
+
##### id
|
|
317
|
+
|
|
318
|
+
`string`
|
|
319
|
+
|
|
320
|
+
The id of the metric.
|
|
321
|
+
|
|
322
|
+
##### timeStart?
|
|
323
|
+
|
|
324
|
+
`number`
|
|
325
|
+
|
|
326
|
+
The inclusive time as the start of the metric entries.
|
|
327
|
+
|
|
328
|
+
##### timeEnd?
|
|
329
|
+
|
|
330
|
+
`number`
|
|
331
|
+
|
|
332
|
+
The inclusive time as the end of the metric entries.
|
|
333
|
+
|
|
334
|
+
##### cursor?
|
|
335
|
+
|
|
336
|
+
`string`
|
|
337
|
+
|
|
338
|
+
The cursor to request the next chunk of entities.
|
|
339
|
+
|
|
340
|
+
##### limit?
|
|
341
|
+
|
|
342
|
+
`number`
|
|
343
|
+
|
|
344
|
+
Limit the number of entities to return.
|
|
345
|
+
|
|
346
|
+
#### Returns
|
|
347
|
+
|
|
348
|
+
`Promise`\<\{ `metric`: [`ITelemetryMetric`](../interfaces/ITelemetryMetric.md); `entities`: [`ITelemetryMetricValue`](../interfaces/ITelemetryMetricValue.md)[]; `cursor?`: `string`; \}\>
|
|
349
|
+
|
|
350
|
+
All the entities for the storage matching the conditions,
|
|
351
|
+
and a cursor which can be used to request more entities.
|
|
352
|
+
|
|
353
|
+
#### Throws
|
|
354
|
+
|
|
355
|
+
NotImplementedError if the implementation does not support retrieval.
|
|
356
|
+
|
|
357
|
+
#### Implementation of
|
|
358
|
+
|
|
359
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`queryValues`](../interfaces/ITelemetryConnector.md#queryvalues)
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
# Class: SilentTelemetryConnector
|
|
2
|
+
|
|
3
|
+
Class for performing telemetry operations to nowhere.
|
|
4
|
+
|
|
5
|
+
## Implements
|
|
6
|
+
|
|
7
|
+
- [`ITelemetryConnector`](../interfaces/ITelemetryConnector.md)
|
|
8
|
+
|
|
9
|
+
## Constructors
|
|
10
|
+
|
|
11
|
+
### Constructor
|
|
12
|
+
|
|
13
|
+
> **new SilentTelemetryConnector**(): `SilentTelemetryConnector`
|
|
14
|
+
|
|
15
|
+
#### Returns
|
|
16
|
+
|
|
17
|
+
`SilentTelemetryConnector`
|
|
18
|
+
|
|
19
|
+
## Properties
|
|
20
|
+
|
|
21
|
+
### NAMESPACE {#namespace}
|
|
22
|
+
|
|
23
|
+
> `readonly` `static` **NAMESPACE**: `string` = `"silent"`
|
|
24
|
+
|
|
25
|
+
The namespace for the class.
|
|
26
|
+
|
|
27
|
+
***
|
|
28
|
+
|
|
29
|
+
### CLASS\_NAME {#class_name}
|
|
30
|
+
|
|
31
|
+
> `readonly` `static` **CLASS\_NAME**: `string`
|
|
32
|
+
|
|
33
|
+
Runtime name for the class.
|
|
34
|
+
|
|
35
|
+
## Methods
|
|
36
|
+
|
|
37
|
+
### className() {#classname}
|
|
38
|
+
|
|
39
|
+
> **className**(): `string`
|
|
40
|
+
|
|
41
|
+
Returns the class name of the component.
|
|
42
|
+
|
|
43
|
+
#### Returns
|
|
44
|
+
|
|
45
|
+
`string`
|
|
46
|
+
|
|
47
|
+
The class name of the component.
|
|
48
|
+
|
|
49
|
+
#### Implementation of
|
|
50
|
+
|
|
51
|
+
`ITelemetryConnector.className`
|
|
52
|
+
|
|
53
|
+
***
|
|
54
|
+
|
|
55
|
+
### createMetric() {#createmetric}
|
|
56
|
+
|
|
57
|
+
> **createMetric**(`metric`): `Promise`\<`void`\>
|
|
58
|
+
|
|
59
|
+
Create one or more metrics.
|
|
60
|
+
|
|
61
|
+
#### Parameters
|
|
62
|
+
|
|
63
|
+
##### metric
|
|
64
|
+
|
|
65
|
+
[`ITelemetryMetric`](../interfaces/ITelemetryMetric.md) \| [`ITelemetryMetric`](../interfaces/ITelemetryMetric.md)[]
|
|
66
|
+
|
|
67
|
+
The metric details, or the details of several metrics.
|
|
68
|
+
|
|
69
|
+
#### Returns
|
|
70
|
+
|
|
71
|
+
`Promise`\<`void`\>
|
|
72
|
+
|
|
73
|
+
A promise that resolves when the metric has been created.
|
|
74
|
+
|
|
75
|
+
#### Implementation of
|
|
76
|
+
|
|
77
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`createMetric`](../interfaces/ITelemetryConnector.md#createmetric)
|
|
78
|
+
|
|
79
|
+
***
|
|
80
|
+
|
|
81
|
+
### updateMetric() {#updatemetric}
|
|
82
|
+
|
|
83
|
+
> **updateMetric**(`metric`): `Promise`\<`void`\>
|
|
84
|
+
|
|
85
|
+
Update metric.
|
|
86
|
+
|
|
87
|
+
#### Parameters
|
|
88
|
+
|
|
89
|
+
##### metric
|
|
90
|
+
|
|
91
|
+
`Omit`\<[`ITelemetryMetric`](../interfaces/ITelemetryMetric.md), `"type"`\>
|
|
92
|
+
|
|
93
|
+
The metric details.
|
|
94
|
+
|
|
95
|
+
#### Returns
|
|
96
|
+
|
|
97
|
+
`Promise`\<`void`\>
|
|
98
|
+
|
|
99
|
+
A promise that resolves when the metric has been updated.
|
|
100
|
+
|
|
101
|
+
#### Implementation of
|
|
102
|
+
|
|
103
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`updateMetric`](../interfaces/ITelemetryConnector.md#updatemetric)
|
|
104
|
+
|
|
105
|
+
***
|
|
106
|
+
|
|
107
|
+
### addMetricValue() {#addmetricvalue}
|
|
108
|
+
|
|
109
|
+
> **addMetricValue**(`id`, `value`, `customData?`): `Promise`\<`string`\>
|
|
110
|
+
|
|
111
|
+
Update metric value.
|
|
112
|
+
|
|
113
|
+
#### Parameters
|
|
114
|
+
|
|
115
|
+
##### id
|
|
116
|
+
|
|
117
|
+
`string`
|
|
118
|
+
|
|
119
|
+
The id of the metric.
|
|
120
|
+
|
|
121
|
+
##### value
|
|
122
|
+
|
|
123
|
+
`number` \| [`MetricCounterOperation`](../type-aliases/MetricCounterOperation.md)
|
|
124
|
+
|
|
125
|
+
The value for the update operation.
|
|
126
|
+
|
|
127
|
+
##### customData?
|
|
128
|
+
|
|
129
|
+
\{\[`key`: `string`\]: `unknown`; \}
|
|
130
|
+
|
|
131
|
+
The custom data for the update operation.
|
|
132
|
+
|
|
133
|
+
#### Returns
|
|
134
|
+
|
|
135
|
+
`Promise`\<`string`\>
|
|
136
|
+
|
|
137
|
+
The created metric value id.
|
|
138
|
+
|
|
139
|
+
#### Implementation of
|
|
140
|
+
|
|
141
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`addMetricValue`](../interfaces/ITelemetryConnector.md#addmetricvalue)
|
|
142
|
+
|
|
143
|
+
***
|
|
144
|
+
|
|
145
|
+
### addMetricValues() {#addmetricvalues}
|
|
146
|
+
|
|
147
|
+
> **addMetricValues**(`values`): `Promise`\<`string`[]\>
|
|
148
|
+
|
|
149
|
+
Add multiple metric values.
|
|
150
|
+
|
|
151
|
+
#### Parameters
|
|
152
|
+
|
|
153
|
+
##### values
|
|
154
|
+
|
|
155
|
+
[`ITelemetryMetricValueEntry`](../interfaces/ITelemetryMetricValueEntry.md)[]
|
|
156
|
+
|
|
157
|
+
The metric values to add.
|
|
158
|
+
|
|
159
|
+
#### Returns
|
|
160
|
+
|
|
161
|
+
`Promise`\<`string`[]\>
|
|
162
|
+
|
|
163
|
+
The created metric value ids.
|
|
164
|
+
|
|
165
|
+
#### Implementation of
|
|
166
|
+
|
|
167
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`addMetricValues`](../interfaces/ITelemetryConnector.md#addmetricvalues)
|
|
168
|
+
|
|
169
|
+
***
|
|
170
|
+
|
|
171
|
+
### removeMetric() {#removemetric}
|
|
172
|
+
|
|
173
|
+
> **removeMetric**(`id`): `Promise`\<`void`\>
|
|
174
|
+
|
|
175
|
+
Remove metric.
|
|
176
|
+
|
|
177
|
+
#### Parameters
|
|
178
|
+
|
|
179
|
+
##### id
|
|
180
|
+
|
|
181
|
+
`string`
|
|
182
|
+
|
|
183
|
+
The id of the metric.
|
|
184
|
+
|
|
185
|
+
#### Returns
|
|
186
|
+
|
|
187
|
+
`Promise`\<`void`\>
|
|
188
|
+
|
|
189
|
+
A promise that resolves when the metric and all its values have been removed.
|
|
190
|
+
|
|
191
|
+
#### Implementation of
|
|
192
|
+
|
|
193
|
+
[`ITelemetryConnector`](../interfaces/ITelemetryConnector.md).[`removeMetric`](../interfaces/ITelemetryConnector.md#removemetric)
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# @3sixty/telemetry-models
|
|
2
|
+
|
|
3
|
+
## Classes
|
|
4
|
+
|
|
5
|
+
- [MultiTelemetryConnector](classes/MultiTelemetryConnector.md)
|
|
6
|
+
- [SilentTelemetryConnector](classes/SilentTelemetryConnector.md)
|
|
7
|
+
- [MetricHelper](classes/MetricHelper.md)
|
|
8
|
+
|
|
9
|
+
## Interfaces
|
|
10
|
+
|
|
11
|
+
- [IMetricsCollectorComponent](interfaces/IMetricsCollectorComponent.md)
|
|
12
|
+
- [IMetricsProducer](interfaces/IMetricsProducer.md)
|
|
13
|
+
- [IMultiTelemetryConnectorConstructorOptions](interfaces/IMultiTelemetryConnectorConstructorOptions.md)
|
|
14
|
+
- [ITelemetryComponent](interfaces/ITelemetryComponent.md)
|
|
15
|
+
- [ITelemetryConnector](interfaces/ITelemetryConnector.md)
|
|
16
|
+
- [ITelemetryMetric](interfaces/ITelemetryMetric.md)
|
|
17
|
+
- [ITelemetryMetricValue](interfaces/ITelemetryMetricValue.md)
|
|
18
|
+
- [ITelemetryMetricValueEntry](interfaces/ITelemetryMetricValueEntry.md)
|
|
19
|
+
- [ITelemetryAddMetricValueRequest](interfaces/ITelemetryAddMetricValueRequest.md)
|
|
20
|
+
- [ITelemetryCreateMetricRequest](interfaces/ITelemetryCreateMetricRequest.md)
|
|
21
|
+
- [ITelemetryGetMetricRequest](interfaces/ITelemetryGetMetricRequest.md)
|
|
22
|
+
- [ITelemetryGetMetricResponse](interfaces/ITelemetryGetMetricResponse.md)
|
|
23
|
+
- [ITelemetryGetMetricValueRequest](interfaces/ITelemetryGetMetricValueRequest.md)
|
|
24
|
+
- [ITelemetryGetMetricValueResponse](interfaces/ITelemetryGetMetricValueResponse.md)
|
|
25
|
+
- [ITelemetryListRequest](interfaces/ITelemetryListRequest.md)
|
|
26
|
+
- [ITelemetryListResponse](interfaces/ITelemetryListResponse.md)
|
|
27
|
+
- [ITelemetryRemoveMetricRequest](interfaces/ITelemetryRemoveMetricRequest.md)
|
|
28
|
+
- [ITelemetryUpdateMetricRequest](interfaces/ITelemetryUpdateMetricRequest.md)
|
|
29
|
+
- [ITelemetryValuesListRequest](interfaces/ITelemetryValuesListRequest.md)
|
|
30
|
+
- [ITelemetryValuesListResponse](interfaces/ITelemetryValuesListResponse.md)
|
|
31
|
+
|
|
32
|
+
## Type Aliases
|
|
33
|
+
|
|
34
|
+
- [MetricCounterOperation](type-aliases/MetricCounterOperation.md)
|
|
35
|
+
- [MetricType](type-aliases/MetricType.md)
|
|
36
|
+
|
|
37
|
+
## Variables
|
|
38
|
+
|
|
39
|
+
- [MetricsProducerFactory](variables/MetricsProducerFactory.md)
|
|
40
|
+
- [TelemetryConnectorFactory](variables/TelemetryConnectorFactory.md)
|
|
41
|
+
- [MetricCounterOperation](variables/MetricCounterOperation.md)
|
|
42
|
+
- [MetricType](variables/MetricType.md)
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Interface: IMetricsProducer
|
|
2
|
+
|
|
3
|
+
Contract for a metrics producer.
|
|
4
|
+
|
|
5
|
+
A producer declares its metrics with `register()` once and pushes current
|
|
6
|
+
values with `collect()` on every poll cycle. Producers are discovered via
|
|
7
|
+
`MetricsProducerFactory` and orchestrated by a `MetricsCollectorService`.
|
|
8
|
+
|
|
9
|
+
Producers are factory-only entries - they are not lifecycle components of
|
|
10
|
+
the engine. The orchestrating service owns the polling timer.
|
|
11
|
+
|
|
12
|
+
## Extends
|
|
13
|
+
|
|
14
|
+
- `IComponent`
|
|
15
|
+
|
|
16
|
+
## Methods
|
|
17
|
+
|
|
18
|
+
### register() {#register}
|
|
19
|
+
|
|
20
|
+
> **register**(): `Promise`\<`void`\>
|
|
21
|
+
|
|
22
|
+
Register every metric this producer emits with the telemetry component.
|
|
23
|
+
Called once when the orchestrating service starts.
|
|
24
|
+
|
|
25
|
+
#### Returns
|
|
26
|
+
|
|
27
|
+
`Promise`\<`void`\>
|
|
28
|
+
|
|
29
|
+
A promise that resolves when all metrics have been registered.
|
|
30
|
+
|
|
31
|
+
***
|
|
32
|
+
|
|
33
|
+
### collect() {#collect}
|
|
34
|
+
|
|
35
|
+
> **collect**(): `Promise`\<[`ITelemetryMetricValueEntry`](ITelemetryMetricValueEntry.md)[]\>
|
|
36
|
+
|
|
37
|
+
Read the current values for every metric this producer emits.
|
|
38
|
+
Called on every poll cycle. The values are returned rather than recorded, so the
|
|
39
|
+
orchestrating service can record a whole cycle in one operation.
|
|
40
|
+
|
|
41
|
+
#### Returns
|
|
42
|
+
|
|
43
|
+
`Promise`\<[`ITelemetryMetricValueEntry`](ITelemetryMetricValueEntry.md)[]\>
|
|
44
|
+
|
|
45
|
+
The current values for this producer's metrics.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Interface: IMultiTelemetryConnectorConstructorOptions
|
|
2
|
+
|
|
3
|
+
The options for the multi telemetry connector constructor.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### telemetryConnectorTypes {#telemetryconnectortypes}
|
|
8
|
+
|
|
9
|
+
> **telemetryConnectorTypes**: `string`[]
|
|
10
|
+
|
|
11
|
+
The telemetry connector types to multiplex.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# Interface: ITelemetryAddMetricValueRequest
|
|
2
|
+
|
|
3
|
+
Add a telemetry metric value.
|
|
4
|
+
|
|
5
|
+
## Properties
|
|
6
|
+
|
|
7
|
+
### pathParams {#pathparams}
|
|
8
|
+
|
|
9
|
+
> **pathParams**: `object`
|
|
10
|
+
|
|
11
|
+
The path parameters.
|
|
12
|
+
|
|
13
|
+
#### id
|
|
14
|
+
|
|
15
|
+
> **id**: `string`
|
|
16
|
+
|
|
17
|
+
The id of the metric.
|
|
18
|
+
|
|
19
|
+
***
|
|
20
|
+
|
|
21
|
+
### body {#body}
|
|
22
|
+
|
|
23
|
+
> **body**: `object`
|
|
24
|
+
|
|
25
|
+
The data to be used in the update.
|
|
26
|
+
|
|
27
|
+
#### value
|
|
28
|
+
|
|
29
|
+
> **value**: `number` \| [`MetricCounterOperation`](../type-aliases/MetricCounterOperation.md)
|
|
30
|
+
|
|
31
|
+
The value for the update operation.
|
|
32
|
+
|
|
33
|
+
#### customData?
|
|
34
|
+
|
|
35
|
+
> `optional` **customData?**: `object`
|
|
36
|
+
|
|
37
|
+
The custom data for the update operation.
|
|
38
|
+
|
|
39
|
+
##### Index Signature
|
|
40
|
+
|
|
41
|
+
\[`key`: `string`\]: `unknown`
|