You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This change will allow Crypto Tools to introduce a Metrics Agent in a
136
-
non-breaking way as the Metrics Agent will be an optional parameter
135
+
This change will allow Crypto Tools to introduce a Metrics Worker in a
136
+
non-breaking way as the Metrics Worker will be an optional parameter
137
137
at customer facing API call sites.
138
138
139
139
Currently, the ESDK client APIs models are defined [here](https://github.com/aws/aws-encryption-sdk/blob/mainline/AwsEncryptionSDK/dafny/AwsEncryptionSdk/Model/esdk.smithy#L60-L126).
### Issue 0: Should Metric Agents be supported on client construction?
180
+
### Issue 0: Should Metrics Workers be supported on client construction?
181
+
182
+
This options assumes that a Metrics Worker on client instantiation
183
+
is optional. Making the Metrics Worker required would face pushback
184
+
and overall losses customer trust.
181
185
182
186
#### Yes
183
187
184
-
#### No
188
+
Set it and forget it. This would make it easy for our customers to only have
189
+
to supply their metrics workers in one place rather than to reason about which
190
+
operations should get metrics. Additionally, this option would be a blanket
191
+
over the entire CT stack and output all metrics the library tracks.
192
+
193
+
This option also gives customers a very nice integration point of always capture
194
+
metrics to this one worker and to only sometimes capture metrics to this
195
+
other worker.
196
+
197
+
#### No (recommended)
198
+
199
+
Since this would be an optional argument to the client, adding the option
200
+
in a separate minor release is a two-way door. Even if at launch CT decides
201
+
to add the optional argument later on to remove the option would be a one-way
202
+
door since customers who use the optional feature would get build errors.
203
+
204
+
As CT learns from its customers, more and more
205
+
of them seems to prefer or rather are forced to do request overrides for
206
+
specific requests.
207
+
208
+
Additionally, there is nuanced behavior that CT would need to decide to determine
209
+
the appropriate behavior when a client is configured with a metrics worker and
210
+
supplied with a metrics worker at the API call site.
211
+
CT would need to settle on this behavior regardless of making it optional, but it
212
+
allows CT to get metrics into the hands of customers much faster.
185
213
186
214
## Appendix
187
215
188
-
The following API changes are not complete. These changes assume that the new optional parameter is supplied to any additional downstream consumer that may or may not be listed here.
216
+
The following API changes are not complete. These changes assume that the new optional parameter
217
+
is supplied to any additional downstream consumer that may or may not be listed here.
0 commit comments