Commit 5c6584c
authored
OTel Benchmarker, Fixes AB#3404902 (#2786)
[AB#3404902](https://identitydivision.visualstudio.com/fac9d424-53d2-45c0-91b5-ef6ba7a6bf26/_workitems/edit/3404902)
Add a benchmarker that can be hooked up with OTelUtility. This is
disabled by default.
To Enable it, set this when the process (e.g. broker) is initiated.
<img width="941" height="159" alt="image"
src="https://github.com/user-attachments/assets/3828e19c-9f32-4721-b1e2-217d1b0bcdaf"
/>
This benchmarker will record the timestamp every time an attribute/event
is set in the given span(s).
It would calculate (average, by percentile) and print a summary to a
file that would look like this.
```
=== Statistical Benchmark Session: 2025-10-15 15:02:42.608 | Avg Total Duration: 663ms | Avg Concurrent Size: 3.32 | Batch Size: 1000 ===
| Status Entry | Metric | Time Since Previous | Time Since Start |
|--------------------------------------------------|--------|---------------------|------------------|
| timestamp_request_hitting_broker | Avg | 0ms | 0ms |
| | P50 | 0ms | 0ms |
| | P95 | 0ms | 0ms |
|--------------------------------------------------|--------|---------------------|------------------|
| timestamp_ats_starts | Avg | 0ms | 0ms |
| | P50 | 0ms | 0ms |
| | P95 | 0ms | 0ms |
|--------------------------------------------------|--------|---------------------|------------------|
| calling_package_name | Avg | 0ms | 0ms |
| | P50 | 0ms | 0ms |
| | P95 | 0ms | 0ms |
|--------------------------------------------------|--------|---------------------|------------------|
| device_idle_mode | Avg | 0ms | 0ms |
| | P50 | 0ms | 0ms |
| | P95 | 1ms | 1ms |
|--------------------------------------------------|--------|---------------------|------------------|
| power_optimization_settings | Avg | 0ms | 0ms |
| | P50 | 0ms | 0ms |
| | P95 | 0ms | 1ms |
|--------------------------------------------------|--------|---------------------|------------------|
| account_home_account_id_supplied_to_broker_reque | Avg | 0ms | 1ms |
| | P50 | 1ms | 1ms |
| | P95 | 2ms | 4ms |
|--------------------------------------------------|--------|---------------------|------------------|
| account_local_account_id_supplied_to_broker_requ | Avg | 0ms | 1ms |
| | P50 | 0ms | 1ms |
| | P95 | 0ms | 4ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_cache_get_account_by_local_account_ | Avg | 19ms | 21ms |
| | P50 | 19ms | 20ms |
| | P95 | 28ms | 31ms |
|--------------------------------------------------|--------|---------------------|------------------|
| target_cloud | Avg | 0ms | 21ms |
| | P50 | 0ms | 21ms |
| | P95 | 0ms | 31ms |
|--------------------------------------------------|--------|---------------------|------------------|
| target_audience | Avg | 0ms | 21ms |
| | P50 | 0ms | 21ms |
| | P95 | 0ms | 31ms |
|--------------------------------------------------|--------|---------------------|------------------|
| is_using_strong_key_with_tb_ca | Avg | 31ms | 54ms |
| | P50 | 28ms | 50ms |
| | P95 | 61ms | 85ms |
|--------------------------------------------------|--------|---------------------|------------------|
| is_msa_passthrough_request | Avg | 16ms | 71ms |
| | P50 | 16ms | 68ms |
| | P95 | 32ms | 115ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_load_prt | Avg | 21ms | 127ms |
| | P50 | 19ms | 120ms |
| | P95 | 42ms | 204ms |
|--------------------------------------------------|--------|---------------------|------------------|
| num_concurrent_silent_requests | Avg | 1ms | 129ms |
| | P50 | 1ms | 122ms |
| | P95 | 2ms | 206ms |
|--------------------------------------------------|--------|---------------------|------------------|
| timestamp_ats_executed_by_dispatcher | Avg | 0ms | 129ms |
| | P50 | 0ms | 122ms |
| | P95 | 0ms | 206ms |
|--------------------------------------------------|--------|---------------------|------------------|
| application_name | Avg | 0ms | 129ms |
| | P50 | 0ms | 122ms |
| | P95 | 0ms | 206ms |
|--------------------------------------------------|--------|---------------------|------------------|
| public_api_id | Avg | 0ms | 129ms |
| | P50 | 0ms | 122ms |
| | P95 | 0ms | 206ms |
|--------------------------------------------------|--------|---------------------|------------------|
| controller_name | Avg | 0ms | 129ms |
| | P50 | 0ms | 122ms |
| | P95 | 0ms | 206ms |
|--------------------------------------------------|--------|---------------------|------------------|
| required_broker_protocol_version | Avg | 0ms | 130ms |
| | P50 | 1ms | 124ms |
| | P95 | 2ms | 207ms |
|--------------------------------------------------|--------|---------------------|------------------|
| client_sku | Avg | 0ms | 131ms |
| | P50 | 0ms | 124ms |
| | P95 | 0ms | 207ms |
|--------------------------------------------------|--------|---------------------|------------------|
| sku_version | Avg | 0ms | 131ms |
| | P50 | 0ms | 124ms |
| | P95 | 0ms | 207ms |
|--------------------------------------------------|--------|---------------------|------------------|
| correlation_id | Avg | 0ms | 131ms |
| | P50 | 0ms | 124ms |
| | P95 | 0ms | 207ms |
|--------------------------------------------------|--------|---------------------|------------------|
| force_refresh | Avg | 0ms | 131ms |
| | P50 | 0ms | 124ms |
| | P95 | 0ms | 207ms |
|--------------------------------------------------|--------|---------------------|------------------|
| auth_scheme_name | Avg | 0ms | 131ms |
| | P50 | 0ms | 124ms |
| | P95 | 0ms | 207ms |
|--------------------------------------------------|--------|---------------------|------------------|
| claims_request_json | Avg | 0ms | 131ms |
| | P50 | 0ms | 124ms |
| | P95 | 0ms | 207ms |
|--------------------------------------------------|--------|---------------------|------------------|
| tenant_id | Avg | 1ms | 132ms |
| | P50 | 1ms | 125ms |
| | P95 | 4ms | 209ms |
|--------------------------------------------------|--------|---------------------|------------------|
| account_type | Avg | 1ms | 134ms |
| | P50 | 1ms | 127ms |
| | P95 | 3ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| calling_package_version | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| broker_version | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| negotiated_broker_protocol_version | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| is_nested_app_request | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| is_instance_aware | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| environment | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| session_key_loader_type | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| is_shared_device | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| is_joined_flow | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| reg_source | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| reg_type | Avg | 0ms | 134ms |
| | P50 | 0ms | 127ms |
| | P95 | 0ms | 214ms |
|--------------------------------------------------|--------|---------------------|------------------|
| lock_acquisition_time_acquire_registered_device_ | Avg | 0ms | 140ms |
| | P50 | 0ms | 133ms |
| | P95 | 0ms | 221ms |
|--------------------------------------------------|--------|---------------------|------------------|
| is_registered_device_prt | Avg | 0ms | 147ms |
| | P50 | 0ms | 140ms |
| | P95 | 0ms | 231ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_registered_device_prt | Avg | 0ms | 147ms |
| | P50 | 0ms | 140ms |
| | P95 | 0ms | 231ms |
|--------------------------------------------------|--------|---------------------|------------------|
| lock_acquisition_time_acquire_at_outer_lock | Avg | 0ms | 147ms |
| | P50 | 0ms | 140ms |
| | P95 | 0ms | 231ms |
|--------------------------------------------------|--------|---------------------|------------------|
| lock_acquisition_time_acquire_at_inner_lock | Avg | 0ms | 147ms |
| | P50 | 0ms | 140ms |
| | P95 | 0ms | 231ms |
|--------------------------------------------------|--------|---------------------|------------------|
| prt_protocol_version | Avg | 15ms | 233ms |
| | P50 | 14ms | 229ms |
| | P95 | 30ms | 350ms |
|--------------------------------------------------|--------|---------------------|------------------|
| acquire_token_silent_with_nonce | Avg | 0ms | 234ms |
| | P50 | 1ms | 230ms |
| | P95 | 1ms | 351ms |
|--------------------------------------------------|--------|---------------------|------------------|
| kdf_version | Avg | 0ms | 234ms |
| | P50 | 0ms | 230ms |
| | P95 | 0ms | 351ms |
|--------------------------------------------------|--------|---------------------|------------------|
| derived_key_jwt_signing_performance | Avg | 1ms | 236ms |
| | P50 | 1ms | 233ms |
| | P95 | 2ms | 354ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_jwt_signing_session_key | Avg | 0ms | 236ms |
| | P50 | 0ms | 233ms |
| | P95 | 0ms | 354ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_create_token_request_internal | Avg | 0ms | 237ms |
| | P50 | 0ms | 233ms |
| | P95 | 0ms | 354ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_create_token_request | Avg | 0ms | 237ms |
| | P50 | 0ms | 233ms |
| | P95 | 0ms | 354ms |
|--------------------------------------------------|--------|---------------------|------------------|
| response_content_type | Avg | 310ms | 548ms |
| | P50 | 297ms | 535ms |
| | P95 | 398ms | 698ms |
|--------------------------------------------------|--------|---------------------|------------------|
| ccs_request_id | Avg | 0ms | 548ms |
| | P50 | 0ms | 535ms |
| | P95 | 0ms | 698ms |
|--------------------------------------------------|--------|---------------------|------------------|
| ccs_request_sequence | Avg | 0ms | 548ms |
| | P50 | 0ms | 535ms |
| | P95 | 0ms | 698ms |
|--------------------------------------------------|--------|---------------------|------------------|
| response_body_length | Avg | 0ms | 548ms |
| | P50 | 0ms | 535ms |
| | P95 | 0ms | 698ms |
|--------------------------------------------------|--------|---------------------|------------------|
| http_status_code | Avg | 0ms | 548ms |
| | P50 | 0ms | 535ms |
| | P95 | 0ms | 698ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_network_acquire_at | Avg | 0ms | 548ms |
| | P50 | 0ms | 535ms |
| | P95 | 0ms | 698ms |
|--------------------------------------------------|--------|---------------------|------------------|
| jwt_valid | Avg | 1ms | 550ms |
| | P50 | 2ms | 538ms |
| | P95 | 4ms | 700ms |
|--------------------------------------------------|--------|---------------------|------------------|
| jwt_alg | Avg | 0ms | 550ms |
| | P50 | 0ms | 538ms |
| | P95 | 0ms | 700ms |
|--------------------------------------------------|--------|---------------------|------------------|
| iv_decoded_length | Avg | 0ms | 550ms |
| | P50 | 0ms | 538ms |
| | P95 | 0ms | 700ms |
|--------------------------------------------------|--------|---------------------|------------------|
| payload_ciphertext_length | Avg | 0ms | 550ms |
| | P50 | 0ms | 538ms |
| | P95 | 0ms | 700ms |
|--------------------------------------------------|--------|---------------------|------------------|
| derived_key_ctx_length | Avg | 0ms | 550ms |
| | P50 | 0ms | 538ms |
| | P95 | 0ms | 700ms |
|--------------------------------------------------|--------|---------------------|------------------|
| authentication_tag_length | Avg | 0ms | 550ms |
| | P50 | 0ms | 538ms |
| | P95 | 0ms | 700ms |
|--------------------------------------------------|--------|---------------------|------------------|
| derived_key_aesgcm_decryption_performance | Avg | 1ms | 552ms |
| | P50 | 1ms | 539ms |
| | P95 | 2ms | 702ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_decrypt_jwe | Avg | 0ms | 552ms |
| | P50 | 0ms | 539ms |
| | P95 | 0ms | 702ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_network_acquire_prt | Avg | 0ms | 554ms |
| | P50 | 0ms | 541ms |
| | P95 | 0ms | 705ms |
|--------------------------------------------------|--------|---------------------|------------------|
| elapsed_time_save_token_result | Avg | 102ms | 656ms |
| | P50 | 90ms | 643ms |
| | P95 | 173ms | 830ms |
|--------------------------------------------------|--------|---------------------|------------------|
| is_serviced_from_cache | Avg | 0ms | 656ms |
| | P50 | 0ms | 643ms |
| | P95 | 0ms | 830ms |
|--------------------------------------------------|--------|---------------------|------------------|
| SetStatus:OK | Avg | 0ms | 656ms |
| | P50 | 0ms | 643ms |
| | P95 | 0ms | 830ms |
|--------------------------------------------------|--------|---------------------|------------------|
| timestamp_ats_finished | Avg | 0ms | 656ms |
| | P50 | 0ms | 643ms |
| | P95 | 0ms | 830ms |
|--------------------------------------------------|--------|---------------------|------------------|
| stop_returning_rt_result | Avg | 0ms | 657ms |
| | P50 | 0ms | 643ms |
| | P95 | 1ms | 831ms |
|--------------------------------------------------|--------|---------------------|------------------|
```1 parent dc33950 commit 5c6584c
File tree
12 files changed
+1053
-143
lines changed- common4j
- src/main/com/microsoft/identity/common/java
- commands
- controllers
- opentelemetry
12 files changed
+1053
-143
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
3 | 4 | | |
4 | 5 | | |
5 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
166 | 166 | | |
167 | 167 | | |
168 | 168 | | |
| 169 | + | |
169 | 170 | | |
170 | 171 | | |
171 | 172 | | |
| |||
205 | 206 | | |
206 | 207 | | |
207 | 208 | | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
208 | 213 | | |
209 | 214 | | |
210 | 215 | | |
| |||
216 | 221 | | |
217 | 222 | | |
218 | 223 | | |
| 224 | + | |
219 | 225 | | |
220 | 226 | | |
221 | 227 | | |
| |||
Lines changed: 6 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
22 | 22 | | |
23 | 23 | | |
24 | 24 | | |
| 25 | + | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
| |||
150 | 151 | | |
151 | 152 | | |
152 | 153 | | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
153 | 159 | | |
154 | 160 | | |
155 | 161 | | |
| |||
Lines changed: 9 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
| 92 | + | |
92 | 93 | | |
93 | 94 | | |
94 | 95 | | |
| |||
114 | 115 | | |
115 | 116 | | |
116 | 117 | | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
117 | 126 | | |
118 | 127 | | |
119 | 128 | | |
| |||
Lines changed: 183 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
0 commit comments