@fluidframework/telemetry-utils 2.23.0 → 2.31.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 +221 -213
- package/dist/error.d.ts +1 -1
- package/dist/error.d.ts.map +1 -1
- package/dist/error.js +17 -4
- package/dist/error.js.map +1 -1
- package/dist/mockLogger.d.ts.map +1 -1
- package/dist/mockLogger.js +1 -2
- package/dist/mockLogger.js.map +1 -1
- package/lib/error.d.ts +1 -1
- package/lib/error.d.ts.map +1 -1
- package/lib/error.js +17 -4
- package/lib/error.js.map +1 -1
- package/lib/mockLogger.d.ts.map +1 -1
- package/lib/mockLogger.js +1 -2
- package/lib/mockLogger.js.map +1 -1
- package/lib/tsdoc-metadata.json +1 -1
- package/package.json +9 -12
- package/src/error.ts +21 -7
- package/src/mockLogger.ts +1 -2
- package/prettier.config.cjs +0 -8
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @fluidframework/telemetry-utils
|
|
2
2
|
|
|
3
|
+
## 2.31.0
|
|
4
|
+
|
|
5
|
+
Dependency updates only.
|
|
6
|
+
|
|
7
|
+
## 2.30.0
|
|
8
|
+
|
|
9
|
+
Dependency updates only.
|
|
10
|
+
|
|
3
11
|
## 2.23.0
|
|
4
12
|
|
|
5
13
|
Dependency updates only.
|
|
@@ -16,12 +24,12 @@ Dependency updates only.
|
|
|
16
24
|
|
|
17
25
|
### Minor Changes
|
|
18
26
|
|
|
19
|
-
-
|
|
27
|
+
- The MockLogger class has been removed ([#23473](https://github.com/microsoft/FluidFramework/pull/23473)) [237f04204d](https://github.com/microsoft/FluidFramework/commit/237f04204d2ebd1cf7d80a5ec97fffcd5d8a55a4)
|
|
20
28
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
29
|
+
The `MockLogger` class, which was previously part of the alpha+legacy API in `@fluidframework/telemetry-utils`, has
|
|
30
|
+
been removed.
|
|
31
|
+
No replacement is provided. This class was only intended for use in testing scenarios and should be trivial to
|
|
32
|
+
re-implement in any codebase that still needs it.
|
|
25
33
|
|
|
26
34
|
## 2.13.0
|
|
27
35
|
|
|
@@ -63,120 +71,120 @@ Dependency updates only.
|
|
|
63
71
|
|
|
64
72
|
### Major Changes
|
|
65
73
|
|
|
66
|
-
-
|
|
74
|
+
- telemetry-utils: BREAKING CHANGE: Update MockLogger's events property is no longer externally mutable ([#21470](https://github.com/microsoft/FluidFramework/pull/21470)) [a9cc448107](https://github.com/microsoft/FluidFramework/commit/a9cc44810707d58f64350d468a922ed0a307ede9)
|
|
67
75
|
|
|
68
|
-
|
|
76
|
+
If you depended on this mutability to implement some behavior, you should create your own mock logger implementation.
|
|
69
77
|
|
|
70
|
-
|
|
71
|
-
|
|
78
|
+
If you depended on this mutability to work around the logger's self-clearing behavior after running a match check, you
|
|
79
|
+
can now override this behavior via the `clearEventsAfterCheck` parameter.
|
|
72
80
|
|
|
73
81
|
### Minor Changes
|
|
74
82
|
|
|
75
|
-
-
|
|
83
|
+
- Update to TypeScript 5.4 ([#21214](https://github.com/microsoft/FluidFramework/pull/21214)) [0e6256c722](https://github.com/microsoft/FluidFramework/commit/0e6256c722d8bf024f4325bf02547daeeb18bfa6)
|
|
76
84
|
|
|
77
|
-
|
|
85
|
+
Update package implementations to use TypeScript 5.4.5.
|
|
78
86
|
|
|
79
|
-
-
|
|
87
|
+
- Update to ES 2022 ([#21292](https://github.com/microsoft/FluidFramework/pull/21292)) [68921502f7](https://github.com/microsoft/FluidFramework/commit/68921502f79b1833c4cd6d0fe339bfb126a712c7)
|
|
80
88
|
|
|
81
|
-
|
|
89
|
+
Update tsconfig to target ES 2022.
|
|
82
90
|
|
|
83
|
-
-
|
|
91
|
+
- telemetry-utils: Deprecate `MockLogger` for external use. ([#21497](https://github.com/microsoft/FluidFramework/pull/21497)) [ed09fac561](https://github.com/microsoft/FluidFramework/commit/ed09fac5617ef832b2febfd3427a2949f8777bfe)
|
|
84
92
|
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
93
|
+
No replacement API is given. This type was never intended for use outside of the `fluid-framework` repository.
|
|
94
|
+
If you were depending on this class for testing purposes, we recommend creating your own mock logger implementation,
|
|
95
|
+
or copy and adapt the code from `fluid-framework` as needed.
|
|
88
96
|
|
|
89
97
|
## 2.0.0-rc.4.0.0
|
|
90
98
|
|
|
91
99
|
### Major Changes
|
|
92
100
|
|
|
93
|
-
-
|
|
101
|
+
- telemetry-utils: Internal telemetry types removed from public API surface [96872186d0](https://github.com/microsoft/FluidFramework/commit/96872186d0d0f245c1fece7d19b3743e501679b6)
|
|
94
102
|
|
|
95
|
-
|
|
103
|
+
We have updated the tags for the following telemetry-related types in the FluidFramework: TelemetryEventCategory, TelemetryEventPropertyTypeExt, ITelemetryPropertiesExt, ITelemetryGenericEventExt, ITelemetryErrorEventExt, ITelemetryPerformanceEventExt, ITelemetryLoggerExt. For developers using any of these types, the primary action required is to transition to using the corresponding "base" type. For example, replace ITelemetryPerformanceEventExt with ITelemetryBaseEvent from @core-interfaces.
|
|
96
104
|
|
|
97
105
|
## 2.0.0-rc.3.0.0
|
|
98
106
|
|
|
99
107
|
### Major Changes
|
|
100
108
|
|
|
101
|
-
-
|
|
109
|
+
- Packages now use package.json "exports" and require modern module resolution [97d68aa06b](https://github.com/microsoft/FluidFramework/commit/97d68aa06bd5c022ecb026655814aea222a062ae)
|
|
102
110
|
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
111
|
+
Fluid Framework packages have been updated to use the [package.json "exports"
|
|
112
|
+
field](https://nodejs.org/docs/latest-v18.x/api/packages.html#exports) to define explicit entry points for both
|
|
113
|
+
TypeScript types and implementation code.
|
|
106
114
|
|
|
107
|
-
|
|
115
|
+
This means that using Fluid Framework packages require the following TypeScript settings in tsconfig.json:
|
|
108
116
|
|
|
109
|
-
|
|
110
|
-
|
|
117
|
+
- `"moduleResolution": "Node16"` with `"module": "Node16"`
|
|
118
|
+
- `"moduleResolution": "Bundler"` with `"module": "ESNext"`
|
|
111
119
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
120
|
+
We recommend using Node16/Node16 unless absolutely necessary. That will produce transpiled JavaScript that is suitable
|
|
121
|
+
for use with modern versions of Node.js _and_ Bundlers.
|
|
122
|
+
[See the TypeScript documentation](https://www.typescriptlang.org/tsconfig#moduleResolution) for more information
|
|
123
|
+
regarding the module and moduleResolution options.
|
|
116
124
|
|
|
117
|
-
|
|
118
|
-
|
|
125
|
+
**Node10 moduleResolution is not supported; it does not support Fluid Framework's API structuring pattern that is used
|
|
126
|
+
to distinguish stable APIs from those that are in development.**
|
|
119
127
|
|
|
120
128
|
## 2.0.0-rc.2.0.0
|
|
121
129
|
|
|
122
130
|
### Minor Changes
|
|
123
131
|
|
|
124
|
-
-
|
|
132
|
+
- fluid-framework: EventEmitterWithErrorHandling is no longer publicly exported ([#19717](https://github.com/microsoft/FluidFramework/issues/19717)) [ae1d0be26d](https://github.com/microsoft/FluidFramework/commits/ae1d0be26d61453cff316b3f622a9f3647149167)
|
|
125
133
|
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
134
|
+
EventEmitterWithErrorHandling is intended for authoring DDSes, and thus is only intended for use within the Fluid Framework client packages.
|
|
135
|
+
It is no longer publicly exported: any users should fine their own solution or be upstreamed.
|
|
136
|
+
EventEmitterWithErrorHandling is available for now as `@alpha` to make this migration less disrupting for any existing users.
|
|
129
137
|
|
|
130
|
-
-
|
|
138
|
+
- telemetry-utils: logIfFalse() is removed ([#19597](https://github.com/microsoft/FluidFramework/issues/19597)) [213b5ab761](https://github.com/microsoft/FluidFramework/commits/213b5ab7611c214fda7fa005f89ac37c2f1695c1)
|
|
131
139
|
|
|
132
|
-
|
|
133
|
-
|
|
140
|
+
The deprecated `logIfFalse()` function has been removed. Consumers who want to keep using it can reimplement in in their
|
|
141
|
+
codebase by copying it from a previous version of the `@fluidframework/telemetry-utils` package.
|
|
134
142
|
|
|
135
|
-
-
|
|
143
|
+
- Deprecated error-related enums have been removed ([#19067](https://github.com/microsoft/FluidFramework/issues/19067)) [59793302e5](https://github.com/microsoft/FluidFramework/commits/59793302e56784cfb6ace0e6469345f3565b3312)
|
|
136
144
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
145
|
+
Error-related enums `ContainerErrorType`, `DriverErrorType`, `OdspErrorType` and `RouterliciousErrorType` were previously
|
|
146
|
+
deprecated and are now removed. There are replacement object-based enumerations of `ContainerErrorTypes`,
|
|
147
|
+
`DriverErrorTypes`, `OdspErrorTypes` and `RouterliciousErrorTypes`. Refer to the release notes of [Fluid Framework version
|
|
148
|
+
2.0.0-internal.7.0.0](https://github.com/microsoft/FluidFramework/releases/tag/client_v2.0.0-internal.7.0.0) for details
|
|
149
|
+
on the replacements.
|
|
142
150
|
|
|
143
151
|
## 2.0.0-rc.1.0.0
|
|
144
152
|
|
|
145
153
|
### Minor Changes
|
|
146
154
|
|
|
147
|
-
-
|
|
155
|
+
- Updated server dependencies ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
|
|
148
156
|
|
|
149
|
-
|
|
157
|
+
The following Fluid server dependencies have been updated to the latest version, 3.0.0. [See the full changelog.](https://github.com/microsoft/FluidFramework/releases/tag/server_v3.0.0)
|
|
150
158
|
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
159
|
+
- @fluidframework/gitresources
|
|
160
|
+
- @fluidframework/server-kafka-orderer
|
|
161
|
+
- @fluidframework/server-lambdas
|
|
162
|
+
- @fluidframework/server-lambdas-driver
|
|
163
|
+
- @fluidframework/server-local-server
|
|
164
|
+
- @fluidframework/server-memory-orderer
|
|
165
|
+
- @fluidframework/protocol-base
|
|
166
|
+
- @fluidframework/server-routerlicious
|
|
167
|
+
- @fluidframework/server-routerlicious-base
|
|
168
|
+
- @fluidframework/server-services
|
|
169
|
+
- @fluidframework/server-services-client
|
|
170
|
+
- @fluidframework/server-services-core
|
|
171
|
+
- @fluidframework/server-services-ordering-kafkanode
|
|
172
|
+
- @fluidframework/server-services-ordering-rdkafka
|
|
173
|
+
- @fluidframework/server-services-ordering-zookeeper
|
|
174
|
+
- @fluidframework/server-services-shared
|
|
175
|
+
- @fluidframework/server-services-telemetry
|
|
176
|
+
- @fluidframework/server-services-utils
|
|
177
|
+
- @fluidframework/server-test-utils
|
|
178
|
+
- tinylicious
|
|
171
179
|
|
|
172
|
-
-
|
|
180
|
+
- Updated @fluidframework/protocol-definitions ([#19122](https://github.com/microsoft/FluidFramework/issues/19122)) [25366b4229](https://github.com/microsoft/FluidFramework/commits/25366b422918cb43685c5f328b50450749592902)
|
|
173
181
|
|
|
174
|
-
|
|
175
|
-
|
|
182
|
+
The @fluidframework/protocol-definitions dependency has been upgraded to v3.1.0. [See the full
|
|
183
|
+
changelog.](https://github.com/microsoft/FluidFramework/blob/main/common/lib/protocol-definitions/CHANGELOG.md#310)
|
|
176
184
|
|
|
177
|
-
-
|
|
185
|
+
- Remove deprecated config types from telemetry-utils ([#18839](https://github.com/microsoft/FluidFramework/issues/18839)) [42f17a267c](https://github.com/microsoft/FluidFramework/commits/42f17a267cf796e262da08395cf9fc3cede4bce5)
|
|
178
186
|
|
|
179
|
-
|
|
187
|
+
The types `ConfigTypes` and `IConfigProviderBase` were deprecated and are now removed from @fluidframework/telemetry-utils. They continue to exist in @fluidframework/core-interfaces. Please update your reference to use these types from @fluidframework/core-interfaces.
|
|
180
188
|
|
|
181
189
|
## 2.0.0-internal.8.0.0
|
|
182
190
|
|
|
@@ -186,16 +194,16 @@ Dependency updates only.
|
|
|
186
194
|
|
|
187
195
|
### Minor Changes
|
|
188
196
|
|
|
189
|
-
-
|
|
197
|
+
- telemetry-utils: Deprecate ConfigTypes and IConfigProviderBase ([#18597](https://github.com/microsoft/FluidFramework/issues/18597)) [39b9ff57c0](https://github.com/microsoft/FluidFramework/commits/39b9ff57c0184b72f0e3f9425922dda944995265)
|
|
190
198
|
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
199
|
+
The types `ConfigTypes` and `IConfigProviderBase` have been deprecated in the @fluidframework/telemetry-utils package.
|
|
200
|
+
The types can now be found in the @fluidframework/core-interfaces package. Please replace any uses with the types from
|
|
201
|
+
@fluidframework/core-interfaces.
|
|
194
202
|
|
|
195
|
-
-
|
|
203
|
+
- telemetry-utils: Deprecated logIfFalse ([#18047](https://github.com/microsoft/FluidFramework/issues/18047)) [57614ffdc6](https://github.com/microsoft/FluidFramework/commits/57614ffdc6e3fbd22ddbe5ed589c75d3d195aa48)
|
|
196
204
|
|
|
197
|
-
|
|
198
|
-
|
|
205
|
+
This functionality was not intended for export and will be removed in a future release.
|
|
206
|
+
No replacement API is offered because the logic is trivial to reproduce as needed.
|
|
199
207
|
|
|
200
208
|
## 2.0.0-internal.7.3.0
|
|
201
209
|
|
|
@@ -213,182 +221,182 @@ Dependency updates only.
|
|
|
213
221
|
|
|
214
222
|
### Major Changes
|
|
215
223
|
|
|
216
|
-
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
224
|
+
- Dependencies on @fluidframework/protocol-definitions package updated to 3.0.0 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
225
|
+
|
|
226
|
+
This included the following changes from the protocol-definitions release:
|
|
227
|
+
|
|
228
|
+
- Updating signal interfaces for some planned improvements. The intention is split the interface between signals
|
|
229
|
+
submitted by clients to the server and the resulting signals sent from the server to clients.
|
|
230
|
+
- A new optional type member is available on the ISignalMessage interface and a new ISentSignalMessage interface has
|
|
231
|
+
been added, which will be the typing for signals sent from the client to the server. Both extend a new
|
|
232
|
+
ISignalMessageBase interface that contains common members.
|
|
233
|
+
- The @fluidframework/common-definitions package dependency has been updated to version 1.0.0.
|
|
234
|
+
|
|
235
|
+
- Server upgrade: dependencies on Fluid server packages updated to 2.0.1 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
236
|
+
|
|
237
|
+
Dependencies on the following Fluid server package have been updated to version 2.0.1:
|
|
238
|
+
|
|
239
|
+
- @fluidframework/gitresources: 2.0.1
|
|
240
|
+
- @fluidframework/server-kafka-orderer: 2.0.1
|
|
241
|
+
- @fluidframework/server-lambdas: 2.0.1
|
|
242
|
+
- @fluidframework/server-lambdas-driver: 2.0.1
|
|
243
|
+
- @fluidframework/server-local-server: 2.0.1
|
|
244
|
+
- @fluidframework/server-memory-orderer: 2.0.1
|
|
245
|
+
- @fluidframework/protocol-base: 2.0.1
|
|
246
|
+
- @fluidframework/server-routerlicious: 2.0.1
|
|
247
|
+
- @fluidframework/server-routerlicious-base: 2.0.1
|
|
248
|
+
- @fluidframework/server-services: 2.0.1
|
|
249
|
+
- @fluidframework/server-services-client: 2.0.1
|
|
250
|
+
- @fluidframework/server-services-core: 2.0.1
|
|
251
|
+
- @fluidframework/server-services-ordering-kafkanode: 2.0.1
|
|
252
|
+
- @fluidframework/server-services-ordering-rdkafka: 2.0.1
|
|
253
|
+
- @fluidframework/server-services-ordering-zookeeper: 2.0.1
|
|
254
|
+
- @fluidframework/server-services-shared: 2.0.1
|
|
255
|
+
- @fluidframework/server-services-telemetry: 2.0.1
|
|
256
|
+
- @fluidframework/server-services-utils: 2.0.1
|
|
257
|
+
- @fluidframework/server-test-utils: 2.0.1
|
|
258
|
+
- tinylicious: 2.0.1
|
|
259
|
+
|
|
260
|
+
- Minimum TypeScript version now 5.1.6 [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
261
|
+
|
|
262
|
+
The minimum supported TypeScript version for Fluid 2.0 clients is now 5.1.6.
|
|
263
|
+
|
|
264
|
+
- @fluidframework/container-utils package removed [871b3493dd](https://github.com/microsoft/FluidFramework/commits/871b3493dd0d7ea3a89be64998ceb6cb9021a04e)
|
|
265
|
+
|
|
266
|
+
All members of the **@fluidframework/container-utils** package have been deprecated and the package is now removed.
|
|
267
|
+
|
|
268
|
+
Migration by API member:
|
|
269
|
+
|
|
270
|
+
- `ClientSessionExpiredError` (deprecated in `2.0.0-internal.6.2.0`): No replacement API offered.
|
|
271
|
+
- `DataCorruptionError` (deprecated in `2.0.0-internal.6.2.0`): Import from [@fluidframework/telemetry-utils](https://www.npmjs.com/package/@fluidframework/telemetry-utils) instead.
|
|
272
|
+
- `DataProcessingError` (deprecated in `2.0.0-internal.6.2.0`): Import from [@fluidframework/telemetry-utils](https://www.npmjs.com/package/@fluidframework/telemetry-utils) instead.
|
|
273
|
+
- `DeltaManagerProxyBase` (deprecated in `2.0.0-internal.6.1.0`): No replacement API offered.
|
|
274
|
+
- `extractSafePropertiesFromMessage` (deprecated in `2.0.0-internal.6.2.0`): Import from [@fluidframework/telemetry-utils](https://www.npmjs.com/package/@fluidframework/telemetry-utils) instead.
|
|
275
|
+
- `GenericError` (deprecated in `2.0.0-internal.6.2.0`): Import from [@fluidframework/telemetry-utils](https://www.npmjs.com/package/@fluidframework/telemetry-utils) instead.
|
|
276
|
+
- `ThrottlingWarning` (deprecated in `2.0.0-internal.6.2.0`): No replacement API offered.
|
|
277
|
+
- `UsageError` (deprecated in `2.0.0-internal.6.2.0`): Import from [@fluidframework/telemetry-utils](https://www.npmjs.com/package/@fluidframework/telemetry-utils) instead.
|
|
270
278
|
|
|
271
279
|
## 2.0.0-internal.6.4.0
|
|
272
280
|
|
|
273
281
|
### Minor Changes
|
|
274
282
|
|
|
275
|
-
-
|
|
283
|
+
- Upcoming: The type of the logger property/param in various APIs will be changing ([#17350](https://github.com/microsoft/FluidFramework/issues/17350)) [27284bcda3](https://github.com/microsoft/FluidFramework/commits/27284bcda3d63cc4306cf76806f8a075db0db60f)
|
|
276
284
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
285
|
+
- @fluidframework/runtime-definitions
|
|
286
|
+
- `IFluidDataStoreRuntime.logger` will be re-typed as `ITelemetryBaseLogger`
|
|
287
|
+
- @fluidframework/odsp-driver
|
|
288
|
+
- `protected OdspDocumentServiceFactoryCore.createDocumentServiceCore`'s parameter `odspLogger` will be re-typed as `ITelemetryLoggerExt`
|
|
289
|
+
- `protected LocalOdspDocumentServiceFactory.createDocumentServiceCore`'s parameter `odspLogger` will be re-typed as `ITelemetryLoggerExt`
|
|
282
290
|
|
|
283
|
-
|
|
291
|
+
Additionally, several of @fluidframework/telemetry-utils's exports are being marked as internal and should not be consumed outside of other FF packages.
|
|
284
292
|
|
|
285
293
|
## 2.0.0-internal.6.3.0
|
|
286
294
|
|
|
287
295
|
### Minor Changes
|
|
288
296
|
|
|
289
|
-
-
|
|
297
|
+
- Cleaning up duplicate or misnamed telemetry types ([#17149](https://github.com/microsoft/FluidFramework/issues/17149)) [f9236942fa](https://github.com/microsoft/FluidFramework/commits/f9236942faf03cde860bfcbc7c28f8fbd81d3868)
|
|
290
298
|
|
|
291
|
-
|
|
299
|
+
We have two sets of telemetry-related interfaces:
|
|
292
300
|
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
301
|
+
- The "Base" ones
|
|
302
|
+
- These have a very bare API surface
|
|
303
|
+
- They are used on public API surfaces to transmit logs across layers
|
|
304
|
+
- The internal ones
|
|
305
|
+
- These have a richer API surface (multiple log functions with different categories,
|
|
306
|
+
support for logging flat arrays and objects)
|
|
307
|
+
- They are used for instrumenting our code, and then normalize and pass off the logs via the Base interface
|
|
300
308
|
|
|
301
|
-
|
|
309
|
+
There are two problems with the given state of the world:
|
|
302
310
|
|
|
303
|
-
|
|
304
|
-
|
|
311
|
+
1. The "Base" ones were not named consistently, so the distinction was not as apparent as it could be
|
|
312
|
+
2. The internal ones were copied to `@fluidframework/telemetry-utils` and futher extended, but the original duplicates remain.
|
|
305
313
|
|
|
306
|
-
|
|
314
|
+
This change addresses these by adding "Base" to the name of each base type, and deprecating the old duplicate internal types.
|
|
307
315
|
|
|
308
|
-
|
|
316
|
+
Additionally, the following types were adjusted:
|
|
309
317
|
|
|
310
|
-
|
|
311
|
-
|
|
318
|
+
- `TelemetryEventCategory` is moving from `@fluidframework/core-interfaces` to `@fluidframework/telemetry-utils`
|
|
319
|
+
- Several types modeling "tagged" telemetry properties are deprecated in favor of a generic type `Tagged<V>`
|
|
312
320
|
|
|
313
321
|
## 2.0.0-internal.6.2.0
|
|
314
322
|
|
|
315
323
|
### Minor Changes
|
|
316
324
|
|
|
317
|
-
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
325
|
+
- Remove use of @fluidframework/common-definitions ([#16638](https://github.com/microsoft/FluidFramework/issues/16638)) [a8c81509c9](https://github.com/microsoft/FluidFramework/commits/a8c81509c9bf09cfb2092ebcf7265205f9eb6dbf)
|
|
326
|
+
|
|
327
|
+
The **@fluidframework/common-definitions** package is being deprecated, so the following interfaces and types are now
|
|
328
|
+
imported from the **@fluidframework/core-interfaces** package:
|
|
329
|
+
|
|
330
|
+
- interface IDisposable
|
|
331
|
+
- interface IErrorEvent
|
|
332
|
+
- interface IErrorEvent
|
|
333
|
+
- interface IEvent
|
|
334
|
+
- interface IEventProvider
|
|
335
|
+
- interface ILoggingError
|
|
336
|
+
- interface ITaggedTelemetryPropertyType
|
|
337
|
+
- interface ITelemetryBaseEvent
|
|
338
|
+
- interface ITelemetryBaseLogger
|
|
339
|
+
- interface ITelemetryErrorEvent
|
|
340
|
+
- interface ITelemetryGenericEvent
|
|
341
|
+
- interface ITelemetryLogger
|
|
342
|
+
- interface ITelemetryPerformanceEvent
|
|
343
|
+
- interface ITelemetryProperties
|
|
344
|
+
- type ExtendEventProvider
|
|
345
|
+
- type IEventThisPlaceHolder
|
|
346
|
+
- type IEventTransformer
|
|
347
|
+
- type ReplaceIEventThisPlaceHolder
|
|
348
|
+
- type ReplaceIEventThisPlaceHolder
|
|
349
|
+
- type TelemetryEventCategory
|
|
350
|
+
- type TelemetryEventPropertyType
|
|
343
351
|
|
|
344
352
|
## 2.0.0-internal.6.1.0
|
|
345
353
|
|
|
346
354
|
### Minor Changes
|
|
347
355
|
|
|
348
|
-
-
|
|
356
|
+
- Removed `TelemetryNullLogger` class is again exported from @fluidframework/telemetry-utils ([#16841](https://github.com/microsoft/FluidFramework/issues/16841)) [697f46a838](https://github.com/microsoft/FluidFramework/commits/697f46a838706a046c402ba96624b8f07ebc3b07)
|
|
349
357
|
|
|
350
|
-
|
|
351
|
-
|
|
358
|
+
The `TelemetryNullLogger` class has been brought back to ease the transition to `2.0.0-internal.6.x`
|
|
359
|
+
_but is still deprecated_ and will be removed in `2.0.0-internal.7.0.0`.
|
|
352
360
|
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
361
|
+
For internal use within the FluidFramework codebase, use `createChildLogger()` with no arguments instead.
|
|
362
|
+
For external consumers we recommend writing a trivial implementation of `ITelemetryBaseLogger`
|
|
363
|
+
(from the `@fluidframework/core-interfaces` package) where the `send()` method does nothing and using that.
|
|
356
364
|
|
|
357
365
|
## 2.0.0-internal.6.0.0
|
|
358
366
|
|
|
359
367
|
### Major Changes
|
|
360
368
|
|
|
361
|
-
-
|
|
369
|
+
- Remove Deprecated Loggers [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
362
370
|
|
|
363
|
-
|
|
371
|
+
This change removes the previously deprecated logger implementations. The following replacements are available:
|
|
364
372
|
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
373
|
+
- replace ChildLogger.create, new TelemetryNullLogger, and new BaseTelemetryNullLogger with createChildLogger
|
|
374
|
+
- replace new MultiSinkLogger with createMultiSinkLogger
|
|
375
|
+
- replace TelemetryUTLogger with MockLogger
|
|
376
|
+
- DebugLogger has no intended replacement
|
|
369
377
|
|
|
370
|
-
-
|
|
378
|
+
- MockLogger is no longer a TelemetryLogger [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
371
379
|
|
|
372
|
-
|
|
380
|
+
TelemetryLogger was deprecated and has now been removed, so MockLogger can no longer inherit from it. MockLogger is now a ITelemetryBaseLogger, to get an ITelemetryLogger, or ITelemetryLoggerExt there is a new convenience method, `MockLogger.toTelemetryLogger()`
|
|
373
381
|
|
|
374
|
-
-
|
|
382
|
+
- Upgraded typescript transpilation target to ES2020 [8abce8cdb4](https://github.com/microsoft/FluidFramework/commits/8abce8cdb4e2832fb6405fb44e393bef03d5648a)
|
|
375
383
|
|
|
376
|
-
|
|
384
|
+
Upgraded typescript transpilation target to ES2020. This is done in order to decrease the bundle sizes of Fluid Framework packages. This has provided size improvements across the board for ex. Loader, Driver, Runtime etc. Reduced bundle sizes helps to load lesser code in apps and hence also helps to improve the perf.If any app wants to target any older versions of browsers with which this target version is not compatible, then they can use packages like babel to transpile to a older target.
|
|
377
385
|
|
|
378
386
|
## 2.0.0-internal.5.4.0
|
|
379
387
|
|
|
380
388
|
### Minor Changes
|
|
381
389
|
|
|
382
|
-
-
|
|
390
|
+
- Deprecate Internal TelemetryLogger Implementations ([#16385](https://github.com/microsoft/FluidFramework/issues/16385)) [64023cacb1](https://github.com/microsoft/FluidFramework/commits/64023cacb13767c46c0472ecc22559aaad67adad)
|
|
383
391
|
|
|
384
|
-
|
|
392
|
+
This change deprecates our internal TelemetryLogger implementations and unifies our exported and consumed surface area on our telemetry interfaces.
|
|
385
393
|
|
|
386
|
-
|
|
394
|
+
For the deprecated implementations the following replacement function should be used:
|
|
387
395
|
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
396
|
+
- replace ChildLogger.create, new TelemetryNullLogger, and new BaseTelemetryNullLogger with createChildLogger
|
|
397
|
+
- replace new MultiSinkLogger with createMultiSinkLogger
|
|
398
|
+
- replace TelemetryUTLogger with MockLogger
|
|
399
|
+
- DebugLogger.create will be made internal with no intended replacement
|
|
392
400
|
|
|
393
401
|
## 2.0.0-internal.5.3.0
|
|
394
402
|
|
|
@@ -402,21 +410,21 @@ Dependency updates only.
|
|
|
402
410
|
|
|
403
411
|
### Minor Changes
|
|
404
412
|
|
|
405
|
-
-
|
|
413
|
+
- Logger interface now supports logging a flat object ([#15759](https://github.com/microsoft/FluidFramework/issues/15759)) [8ae4fe32b1](https://github.com/microsoft/FluidFramework/commits/8ae4fe32b11d9bdfe6d2d43950970c95bdc660a6)
|
|
406
414
|
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
415
|
+
The internal logger interface used when instrumenting the code now supports logging a flat object,
|
|
416
|
+
which will be JSON.stringified before being sent to the host's base logger.
|
|
417
|
+
This is technically a breaking change but based on typical logger configuration, should not require any changes to accommodate.
|
|
410
418
|
|
|
411
419
|
## 2.0.0-internal.5.0.0
|
|
412
420
|
|
|
413
421
|
### Major Changes
|
|
414
422
|
|
|
415
|
-
-
|
|
416
|
-
|
|
417
|
-
|
|
423
|
+
- `ITelemetryLoggerExt` is a replacement for `ITelemetryLogger`, which adds additional types that can be logged as property values. ([#15667](https://github.com/microsoft/FluidFramework/pull-requests/15667)) [8c851e4c4b](https://github.com/microsoft/FluidFramework/commits/8c851e4c4b9a18a5189ace0608a1d8c3190a606b)
|
|
424
|
+
This interface is not expected to be used outside the codebase, and all Logger implementations already use the new interface.
|
|
425
|
+
In this release, the new type is used throughout the codebase to allow richer instrumentation.
|
|
418
426
|
|
|
419
|
-
|
|
427
|
+
It's unlikely this will manifest as a break to consumers of the package, but it's not impossible.
|
|
420
428
|
|
|
421
429
|
## 2.0.0-internal.4.4.0
|
|
422
430
|
|
package/dist/error.d.ts
CHANGED
|
@@ -75,7 +75,7 @@ export declare class DataProcessingError extends LoggingError implements IErrorB
|
|
|
75
75
|
/**
|
|
76
76
|
* Create a new `DataProcessingError` detected and raised within the Fluid Framework.
|
|
77
77
|
*/
|
|
78
|
-
static create(errorMessage: string, dataProcessingCodepath: string, sequencedMessage?: ISequencedDocumentMessage, props?: ITelemetryPropertiesExt): IFluidErrorBase;
|
|
78
|
+
static create(errorMessage: string, dataProcessingCodepath: string, sequencedMessage?: ISequencedDocumentMessage, props?: ITelemetryPropertiesExt, stackTraceLimit?: number): IFluidErrorBase;
|
|
79
79
|
/**
|
|
80
80
|
* Wrap the given error in a `DataProcessingError`, unless the error is already of a known type
|
|
81
81
|
* with the exception of a normalized {@link LoggingError}, which will still be wrapped.
|