@azure/msal-common 13.0.0 → 14.0.0-alpha.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 +21 -21
- package/README.md +62 -62
- package/dist/account/AccountInfo.d.ts +2 -2
- package/dist/account/AccountInfo.d.ts.map +1 -1
- package/dist/account/AuthToken.d.ts.map +1 -1
- package/dist/account/AuthToken.js +13 -14
- package/dist/account/AuthToken.js.map +1 -1
- package/dist/account/CcsCredential.d.ts +1 -1
- package/dist/account/CcsCredential.d.ts.map +1 -1
- package/dist/account/CcsCredential.js +1 -1
- package/dist/account/CcsCredential.js.map +1 -1
- package/dist/account/ClientCredentials.d.ts +2 -2
- package/dist/account/ClientCredentials.d.ts.map +1 -1
- package/dist/account/ClientInfo.d.ts +1 -1
- package/dist/account/ClientInfo.d.ts.map +1 -1
- package/dist/account/ClientInfo.js +6 -4
- package/dist/account/ClientInfo.js.map +1 -1
- package/dist/account/DecodedAuthToken.d.ts.map +1 -1
- package/dist/account/TokenClaims.d.ts +1 -1
- package/dist/account/TokenClaims.d.ts.map +1 -1
- package/dist/authority/Authority.d.ts.map +1 -1
- package/dist/authority/Authority.js +464 -546
- package/dist/authority/Authority.js.map +1 -1
- package/dist/authority/AuthorityFactory.d.ts.map +1 -1
- package/dist/authority/AuthorityFactory.js +19 -34
- package/dist/authority/AuthorityFactory.js.map +1 -1
- package/dist/authority/AuthorityMetadata.d.ts.map +1 -1
- package/dist/authority/AuthorityMetadata.js +873 -4
- package/dist/authority/AuthorityMetadata.js.map +1 -1
- package/dist/authority/AuthorityOptions.d.ts +1 -1
- package/dist/authority/AuthorityOptions.d.ts.map +1 -1
- package/dist/authority/AuthorityOptions.js +1 -1
- package/dist/authority/AuthorityOptions.js.map +1 -1
- package/dist/authority/AuthorityType.js +1 -1
- package/dist/authority/AuthorityType.js.map +1 -1
- package/dist/authority/AzureRegion.d.ts +1 -1
- package/dist/authority/AzureRegion.d.ts.map +1 -1
- package/dist/authority/AzureRegionConfiguration.d.ts +1 -1
- package/dist/authority/AzureRegionConfiguration.d.ts.map +1 -1
- package/dist/authority/CloudDiscoveryMetadata.d.ts +1 -1
- package/dist/authority/CloudDiscoveryMetadata.d.ts.map +1 -1
- package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts +1 -1
- package/dist/authority/CloudInstanceDiscoveryErrorResponse.d.ts.map +1 -1
- package/dist/authority/CloudInstanceDiscoveryErrorResponse.js +1 -1
- package/dist/authority/CloudInstanceDiscoveryErrorResponse.js.map +1 -1
- package/dist/authority/CloudInstanceDiscoveryResponse.d.ts +1 -1
- package/dist/authority/CloudInstanceDiscoveryResponse.d.ts.map +1 -1
- package/dist/authority/CloudInstanceDiscoveryResponse.js +1 -1
- package/dist/authority/CloudInstanceDiscoveryResponse.js.map +1 -1
- package/dist/authority/ImdsOptions.d.ts +1 -1
- package/dist/authority/ImdsOptions.d.ts.map +1 -1
- package/dist/authority/OpenIdConfigResponse.d.ts +1 -1
- package/dist/authority/OpenIdConfigResponse.d.ts.map +1 -1
- package/dist/authority/OpenIdConfigResponse.js +1 -1
- package/dist/authority/OpenIdConfigResponse.js.map +1 -1
- package/dist/authority/ProtocolMode.js +1 -1
- package/dist/authority/ProtocolMode.js.map +1 -1
- package/dist/authority/RegionDiscovery.d.ts.map +1 -1
- package/dist/authority/RegionDiscovery.js +85 -107
- package/dist/authority/RegionDiscovery.js.map +1 -1
- package/dist/authority/RegionDiscoveryMetadata.d.ts +1 -1
- package/dist/authority/RegionDiscoveryMetadata.d.ts.map +1 -1
- package/dist/broker/nativeBroker/INativeBrokerPlugin.d.ts.map +1 -1
- package/dist/cache/CacheManager.d.ts.map +1 -1
- package/dist/cache/CacheManager.js +440 -475
- package/dist/cache/CacheManager.js.map +1 -1
- package/dist/cache/entities/AccessTokenEntity.d.ts.map +1 -1
- package/dist/cache/entities/AccessTokenEntity.js +21 -22
- package/dist/cache/entities/AccessTokenEntity.js.map +1 -1
- package/dist/cache/entities/AccountEntity.d.ts.map +1 -1
- package/dist/cache/entities/AccountEntity.js +78 -66
- package/dist/cache/entities/AccountEntity.js.map +1 -1
- package/dist/cache/entities/AppMetadataEntity.d.ts.map +1 -1
- package/dist/cache/entities/AppMetadataEntity.js +16 -17
- package/dist/cache/entities/AppMetadataEntity.js.map +1 -1
- package/dist/cache/entities/AuthorityMetadataEntity.d.ts.map +1 -1
- package/dist/cache/entities/AuthorityMetadataEntity.js +22 -19
- package/dist/cache/entities/AuthorityMetadataEntity.js.map +1 -1
- package/dist/cache/entities/CacheRecord.d.ts.map +1 -1
- package/dist/cache/entities/CacheRecord.js +4 -5
- package/dist/cache/entities/CacheRecord.js.map +1 -1
- package/dist/cache/entities/CredentialEntity.d.ts.map +1 -1
- package/dist/cache/entities/CredentialEntity.js +35 -34
- package/dist/cache/entities/CredentialEntity.js.map +1 -1
- package/dist/cache/entities/IdTokenEntity.d.ts.map +1 -1
- package/dist/cache/entities/IdTokenEntity.js +8 -14
- package/dist/cache/entities/IdTokenEntity.js.map +1 -1
- package/dist/cache/entities/RefreshTokenEntity.d.ts.map +1 -1
- package/dist/cache/entities/RefreshTokenEntity.js +8 -14
- package/dist/cache/entities/RefreshTokenEntity.js.map +1 -1
- package/dist/cache/entities/ServerTelemetryEntity.d.ts.map +1 -1
- package/dist/cache/entities/ServerTelemetryEntity.js +8 -9
- package/dist/cache/entities/ServerTelemetryEntity.js.map +1 -1
- package/dist/cache/entities/ThrottlingEntity.js +9 -11
- package/dist/cache/entities/ThrottlingEntity.js.map +1 -1
- package/dist/cache/interface/ICacheManager.d.ts.map +1 -1
- package/dist/cache/persistence/TokenCacheContext.d.ts.map +1 -1
- package/dist/cache/persistence/TokenCacheContext.js +16 -25
- package/dist/cache/persistence/TokenCacheContext.js.map +1 -1
- package/dist/cache/utils/CacheTypes.d.ts +11 -11
- package/dist/cache/utils/CacheTypes.d.ts.map +1 -1
- package/dist/client/AuthorizationCodeClient.d.ts.map +1 -1
- package/dist/client/AuthorizationCodeClient.js +341 -384
- package/dist/client/AuthorizationCodeClient.js.map +1 -1
- package/dist/client/BaseClient.d.ts.map +1 -1
- package/dist/client/BaseClient.js +27 -35
- package/dist/client/BaseClient.js.map +1 -1
- package/dist/client/RefreshTokenClient.d.ts.map +1 -1
- package/dist/client/RefreshTokenClient.js +208 -241
- package/dist/client/RefreshTokenClient.js.map +1 -1
- package/dist/client/SilentFlowClient.d.ts.map +1 -1
- package/dist/client/SilentFlowClient.js +77 -105
- package/dist/client/SilentFlowClient.js.map +1 -1
- package/dist/config/AppTokenProvider.d.ts +2 -2
- package/dist/config/AppTokenProvider.d.ts.map +1 -1
- package/dist/config/ClientConfiguration.d.ts +9 -9
- package/dist/config/ClientConfiguration.d.ts.map +1 -1
- package/dist/config/ClientConfiguration.js +40 -43
- package/dist/config/ClientConfiguration.js.map +1 -1
- package/dist/crypto/ICrypto.d.ts +2 -2
- package/dist/crypto/ICrypto.d.ts.map +1 -1
- package/dist/crypto/ICrypto.js +27 -58
- package/dist/crypto/ICrypto.js.map +1 -1
- package/dist/crypto/JoseHeader.d.ts +1 -1
- package/dist/crypto/JoseHeader.d.ts.map +1 -1
- package/dist/crypto/JoseHeader.js +8 -9
- package/dist/crypto/JoseHeader.js.map +1 -1
- package/dist/crypto/PopTokenGenerator.d.ts +2 -2
- package/dist/crypto/PopTokenGenerator.d.ts.map +1 -1
- package/dist/crypto/PopTokenGenerator.js +47 -71
- package/dist/crypto/PopTokenGenerator.js.map +1 -1
- package/dist/crypto/SignedHttpRequest.d.ts +1 -1
- package/dist/crypto/SignedHttpRequest.d.ts.map +1 -1
- package/dist/error/AuthError.d.ts.map +1 -1
- package/dist/error/AuthError.js +25 -28
- package/dist/error/AuthError.js.map +1 -1
- package/dist/error/ClientAuthError.d.ts +8 -0
- package/dist/error/ClientAuthError.d.ts.map +1 -1
- package/dist/error/ClientAuthError.js +187 -181
- package/dist/error/ClientAuthError.js.map +1 -1
- package/dist/error/ClientConfigurationError.d.ts.map +1 -1
- package/dist/error/ClientConfigurationError.js +82 -86
- package/dist/error/ClientConfigurationError.js.map +1 -1
- package/dist/error/InteractionRequiredAuthError.d.ts.map +1 -1
- package/dist/error/InteractionRequiredAuthError.js +36 -35
- package/dist/error/InteractionRequiredAuthError.js.map +1 -1
- package/dist/error/JoseHeaderError.d.ts.map +1 -1
- package/dist/error/JoseHeaderError.js +14 -18
- package/dist/error/JoseHeaderError.js.map +1 -1
- package/dist/error/ServerError.d.ts.map +1 -1
- package/dist/error/ServerError.js +7 -11
- package/dist/error/ServerError.js.map +1 -1
- package/dist/index.cjs.js +4221 -4476
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +20 -21
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -6
- package/dist/index.js.map +1 -1
- package/dist/logger/Logger.d.ts +1 -1
- package/dist/logger/Logger.d.ts.map +1 -1
- package/dist/logger/Logger.js +70 -60
- package/dist/logger/Logger.js.map +1 -1
- package/dist/network/INetworkModule.d.ts +1 -1
- package/dist/network/INetworkModule.d.ts.map +1 -1
- package/dist/network/INetworkModule.js +7 -7
- package/dist/network/INetworkModule.js.map +1 -1
- package/dist/network/NetworkManager.d.ts +4 -3
- package/dist/network/NetworkManager.d.ts.map +1 -1
- package/dist/network/NetworkManager.js +21 -35
- package/dist/network/NetworkManager.js.map +1 -1
- package/dist/network/RequestThumbprint.d.ts +1 -1
- package/dist/network/RequestThumbprint.d.ts.map +1 -1
- package/dist/network/ThrottlingUtils.d.ts.map +1 -1
- package/dist/network/ThrottlingUtils.js +37 -36
- package/dist/network/ThrottlingUtils.js.map +1 -1
- package/dist/packageMetadata.d.ts +1 -1
- package/dist/packageMetadata.d.ts.map +1 -1
- package/dist/packageMetadata.js +3 -3
- package/dist/packageMetadata.js.map +1 -1
- package/dist/request/AuthenticationHeaderParser.d.ts.map +1 -1
- package/dist/request/AuthenticationHeaderParser.js +17 -18
- package/dist/request/AuthenticationHeaderParser.js.map +1 -1
- package/dist/request/BaseAuthRequest.d.ts +1 -1
- package/dist/request/BaseAuthRequest.d.ts.map +1 -1
- package/dist/request/CommonAuthorizationCodeRequest.d.ts +1 -1
- package/dist/request/CommonAuthorizationCodeRequest.d.ts.map +1 -1
- package/dist/request/CommonAuthorizationUrlRequest.d.ts +1 -1
- package/dist/request/CommonAuthorizationUrlRequest.d.ts.map +1 -1
- package/dist/request/CommonClientCredentialRequest.d.ts +1 -1
- package/dist/request/CommonClientCredentialRequest.d.ts.map +1 -1
- package/dist/request/CommonDeviceCodeRequest.d.ts +1 -1
- package/dist/request/CommonDeviceCodeRequest.d.ts.map +1 -1
- package/dist/request/CommonEndSessionRequest.d.ts +1 -1
- package/dist/request/CommonEndSessionRequest.d.ts.map +1 -1
- package/dist/request/CommonOnBehalfOfRequest.d.ts +1 -1
- package/dist/request/CommonOnBehalfOfRequest.d.ts.map +1 -1
- package/dist/request/CommonRefreshTokenRequest.d.ts +1 -1
- package/dist/request/CommonRefreshTokenRequest.d.ts.map +1 -1
- package/dist/request/CommonSilentFlowRequest.d.ts +1 -1
- package/dist/request/CommonSilentFlowRequest.d.ts.map +1 -1
- package/dist/request/CommonUsernamePasswordRequest.d.ts +1 -1
- package/dist/request/CommonUsernamePasswordRequest.d.ts.map +1 -1
- package/dist/request/NativeRequest.d.ts +1 -1
- package/dist/request/NativeRequest.d.ts.map +1 -1
- package/dist/request/NativeSignOutRequest.d.ts +1 -1
- package/dist/request/NativeSignOutRequest.d.ts.map +1 -1
- package/dist/request/RequestParameterBuilder.d.ts.map +1 -1
- package/dist/request/RequestParameterBuilder.js +111 -113
- package/dist/request/RequestParameterBuilder.js.map +1 -1
- package/dist/request/RequestValidator.d.ts.map +1 -1
- package/dist/request/RequestValidator.js +23 -28
- package/dist/request/RequestValidator.js.map +1 -1
- package/dist/request/ScopeSet.d.ts.map +1 -1
- package/dist/request/ScopeSet.js +70 -70
- package/dist/request/ScopeSet.js.map +1 -1
- package/dist/response/AuthenticationResult.d.ts +1 -1
- package/dist/response/AuthenticationResult.d.ts.map +1 -1
- package/dist/response/AuthorizationCodePayload.d.ts +1 -1
- package/dist/response/AuthorizationCodePayload.d.ts.map +1 -1
- package/dist/response/DeviceCodeResponse.d.ts +2 -2
- package/dist/response/DeviceCodeResponse.d.ts.map +1 -1
- package/dist/response/ExternalTokenResponse.d.ts +1 -1
- package/dist/response/ExternalTokenResponse.d.ts.map +1 -1
- package/dist/response/IMDSBadResponse.d.ts +1 -1
- package/dist/response/IMDSBadResponse.d.ts.map +1 -1
- package/dist/response/ResponseHandler.d.ts.map +1 -1
- package/dist/response/ResponseHandler.js +195 -180
- package/dist/response/ResponseHandler.js.map +1 -1
- package/dist/response/ServerAuthorizationCodeResponse.d.ts +1 -1
- package/dist/response/ServerAuthorizationCodeResponse.d.ts.map +1 -1
- package/dist/response/ServerAuthorizationTokenResponse.d.ts +1 -1
- package/dist/response/ServerAuthorizationTokenResponse.d.ts.map +1 -1
- package/dist/telemetry/performance/IPerformanceClient.d.ts +3 -4
- package/dist/telemetry/performance/IPerformanceClient.d.ts.map +1 -1
- package/dist/telemetry/performance/PerformanceClient.d.ts +2 -10
- package/dist/telemetry/performance/PerformanceClient.d.ts.map +1 -1
- package/dist/telemetry/performance/PerformanceClient.js +134 -129
- package/dist/telemetry/performance/PerformanceClient.js.map +1 -1
- package/dist/telemetry/performance/PerformanceEvent.d.ts +4 -4
- package/dist/telemetry/performance/PerformanceEvent.d.ts.map +1 -1
- package/dist/telemetry/performance/PerformanceEvent.js +2 -2
- package/dist/telemetry/performance/PerformanceEvent.js.map +1 -1
- package/dist/telemetry/performance/StubPerformanceClient.d.ts +5 -3
- package/dist/telemetry/performance/StubPerformanceClient.d.ts.map +1 -1
- package/dist/telemetry/performance/StubPerformanceClient.js +23 -32
- package/dist/telemetry/performance/StubPerformanceClient.js.map +1 -1
- package/dist/telemetry/server/ServerTelemetryManager.d.ts +1 -2
- package/dist/telemetry/server/ServerTelemetryManager.d.ts.map +1 -1
- package/dist/telemetry/server/ServerTelemetryManager.js +106 -68
- package/dist/telemetry/server/ServerTelemetryManager.js.map +1 -1
- package/dist/telemetry/server/ServerTelemetryRequest.d.ts +1 -1
- package/dist/telemetry/server/ServerTelemetryRequest.d.ts.map +1 -1
- package/dist/url/UrlString.d.ts.map +1 -1
- package/dist/url/UrlString.js +85 -74
- package/dist/url/UrlString.js.map +1 -1
- package/dist/utils/Constants.d.ts.map +1 -1
- package/dist/utils/Constants.js +28 -27
- package/dist/utils/Constants.js.map +1 -1
- package/dist/utils/MsalTypes.d.ts +1 -1
- package/dist/utils/MsalTypes.d.ts.map +1 -1
- package/dist/utils/ProtocolUtils.d.ts +2 -2
- package/dist/utils/ProtocolUtils.d.ts.map +1 -1
- package/dist/utils/ProtocolUtils.js +27 -24
- package/dist/utils/ProtocolUtils.js.map +1 -1
- package/dist/utils/StringUtils.d.ts.map +1 -1
- package/dist/utils/StringUtils.js +44 -42
- package/dist/utils/StringUtils.js.map +1 -1
- package/dist/utils/TimeUtils.d.ts.map +1 -1
- package/dist/utils/TimeUtils.js +16 -19
- package/dist/utils/TimeUtils.js.map +1 -1
- package/package.json +79 -76
- package/dist/_virtual/_tslib.js +0 -90
- package/dist/_virtual/_tslib.js.map +0 -1
- package/dist/client/ClientCredentialClient.d.ts +0 -38
- package/dist/client/ClientCredentialClient.d.ts.map +0 -1
- package/dist/client/ClientCredentialClient.js +0 -203
- package/dist/client/ClientCredentialClient.js.map +0 -1
- package/dist/client/DeviceCodeClient.d.ts +0 -57
- package/dist/client/DeviceCodeClient.d.ts.map +0 -1
- package/dist/client/DeviceCodeClient.js +0 -250
- package/dist/client/DeviceCodeClient.js.map +0 -1
- package/dist/client/OnBehalfOfClient.d.ts +0 -51
- package/dist/client/OnBehalfOfClient.d.ts.map +0 -1
- package/dist/client/OnBehalfOfClient.js +0 -248
- package/dist/client/OnBehalfOfClient.js.map +0 -1
- package/dist/client/UsernamePasswordClient.d.ts +0 -29
- package/dist/client/UsernamePasswordClient.d.ts.map +0 -1
- package/dist/client/UsernamePasswordClient.js +0 -129
- package/dist/client/UsernamePasswordClient.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ServerAuthorizationTokenResponse.d.ts","sourceRoot":"","sources":["../../src/response/ServerAuthorizationTokenResponse.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,
|
|
1
|
+
{"version":3,"file":"ServerAuthorizationTokenResponse.d.ts","sourceRoot":"","sources":["../../src/response/ServerAuthorizationTokenResponse.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,gCAAgC,GAAG;IAE3C,UAAU,CAAC,EAAE,oBAAoB,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { Counters, PerformanceEvent, PerformanceEvents, StaticFields } from "./PerformanceEvent";
|
|
2
2
|
import { IPerformanceMeasurement } from "./IPerformanceMeasurement";
|
|
3
|
-
export
|
|
4
|
-
export
|
|
3
|
+
export type PerformanceCallbackFunction = (events: PerformanceEvent[]) => void;
|
|
4
|
+
export type InProgressPerformanceEvent = {
|
|
5
5
|
endMeasurement: (event?: Partial<PerformanceEvent>) => PerformanceEvent | null;
|
|
6
6
|
discardMeasurement: () => void;
|
|
7
7
|
addStaticFields: (staticFields: StaticFields) => void;
|
|
@@ -17,7 +17,6 @@ export interface IPerformanceClient {
|
|
|
17
17
|
removePerformanceCallback(callbackId: string): boolean;
|
|
18
18
|
addPerformanceCallback(callback: PerformanceCallbackFunction): string;
|
|
19
19
|
emitEvents(events: PerformanceEvent[], correlationId: string): void;
|
|
20
|
-
startPerformanceMeasuremeant(measureName: string, correlationId: string): IPerformanceMeasurement;
|
|
21
20
|
startPerformanceMeasurement(measureName: string, correlationId: string): IPerformanceMeasurement;
|
|
22
21
|
generateId(): string;
|
|
23
22
|
calculateQueuedTime(preQueueTime: number, currentTime: number): number;
|
|
@@ -27,7 +26,7 @@ export interface IPerformanceClient {
|
|
|
27
26
|
/**
|
|
28
27
|
* Queue measurement type
|
|
29
28
|
*/
|
|
30
|
-
export
|
|
29
|
+
export type QueueMeasurement = {
|
|
31
30
|
/**
|
|
32
31
|
* Name of performance event
|
|
33
32
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IPerformanceClient.d.ts","sourceRoot":"","sources":["../../../src/telemetry/performance/IPerformanceClient.ts"],"names":[],"mappings":"AAKA,OAAO,
|
|
1
|
+
{"version":3,"file":"IPerformanceClient.d.ts","sourceRoot":"","sources":["../../../src/telemetry/performance/IPerformanceClient.ts"],"names":[],"mappings":"AAKA,OAAO,EACH,QAAQ,EACR,gBAAgB,EAChB,iBAAiB,EACjB,YAAY,EACf,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AAEpE,MAAM,MAAM,2BAA2B,GAAG,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,IAAI,CAAC;AAE/E,MAAM,MAAM,0BAA0B,GAAG;IACrC,cAAc,EAAE,CACZ,KAAK,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAChC,gBAAgB,GAAG,IAAI,CAAC;IAC7B,kBAAkB,EAAE,MAAM,IAAI,CAAC;IAC/B,eAAe,EAAE,CAAC,YAAY,EAAE,YAAY,KAAK,IAAI,CAAC;IACtD,SAAS,EAAE,CAAC,QAAQ,EAAE,QAAQ,KAAK,IAAI,CAAC;IACxC,KAAK,EAAE,gBAAgB,CAAC;IACxB,WAAW,EAAE,uBAAuB,CAAC;CACxC,CAAC;AAEF,MAAM,WAAW,kBAAkB;IAC/B,gBAAgB,CACZ,WAAW,EAAE,iBAAiB,EAC9B,aAAa,CAAC,EAAE,MAAM,GACvB,0BAA0B,CAAC;IAC9B,cAAc,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,GAAG,IAAI,CAAC;IACjE,mBAAmB,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACjD,eAAe,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACzE,yBAAyB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC;IACvD,sBAAsB,CAAC,QAAQ,EAAE,2BAA2B,GAAG,MAAM,CAAC;IACtE,UAAU,CAAC,MAAM,EAAE,gBAAgB,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IACpE,2BAA2B,CACvB,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,GACtB,uBAAuB,CAAC;IAC3B,UAAU,IAAI,MAAM,CAAC;IACrB,mBAAmB,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;IACvE,mBAAmB,CACf,SAAS,EAAE,iBAAiB,EAC5B,aAAa,CAAC,EAAE,MAAM,EACtB,SAAS,CAAC,EAAE,MAAM,EAClB,iBAAiB,CAAC,EAAE,OAAO,GAC5B,IAAI,CAAC;IACR,eAAe,CAAC,SAAS,EAAE,iBAAiB,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/E;AAED;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B;;OAEG;IACH,SAAS,EAAE,iBAAiB,CAAC;IAE7B;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC/B,CAAC"}
|
|
@@ -62,16 +62,8 @@ export declare abstract class PerformanceClient implements IPerformanceClient {
|
|
|
62
62
|
* @param {string} correlationId
|
|
63
63
|
* @returns {IPerformanceMeasurement}
|
|
64
64
|
*/
|
|
65
|
-
startPerformanceMeasurement(measureName: string,
|
|
66
|
-
|
|
67
|
-
* Starts and returns an platform-specific implementation of IPerformanceMeasurement.
|
|
68
|
-
* Note: this incorrectly-named function will be removed at the next major version bump.
|
|
69
|
-
*
|
|
70
|
-
* @param {string} measureName
|
|
71
|
-
* @param {string} correlationId
|
|
72
|
-
* @returns {IPerformanceMeasurement}
|
|
73
|
-
*/
|
|
74
|
-
startPerformanceMeasuremeant(measureName: string, correlationId: string): IPerformanceMeasurement;
|
|
65
|
+
startPerformanceMeasurement(measureName: string, // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
66
|
+
correlationId: string): IPerformanceMeasurement;
|
|
75
67
|
/**
|
|
76
68
|
* Sets pre-queue time by correlation Id
|
|
77
69
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PerformanceClient.d.ts","sourceRoot":"","sources":["../../../src/telemetry/performance/PerformanceClient.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AACxE,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EACH,0BAA0B,EAC1B,kBAAkB,EAClB,2BAA2B,EAC3B,gBAAgB,EACnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EACH,QAAQ,EAER,gBAAgB,EAChB,iBAAiB,EAEjB,YAAY,EACf,MAAM,oBAAoB,CAAC;AAE5B,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,8BAAsB,iBAAkB,YAAW,kBAAkB;IACjE,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,cAAc,EAAE,MAAM,CAAC;IACjC,SAAS,CAAC,oBAAoB,EAAE,oBAAoB,CAAC;IACrD,SAAS,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,2BAA2B,CAAC,CAAC;IAE9D;;;;OAIG;IACH,SAAS,CAAC,qBAAqB,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAE/D;;;;;OAKG;IACH,SAAS,CAAC,2BAA2B,EAAE,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IAElE;;;;;OAKG;IACH,SAAS,CAAC,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAElE;;;;;;;;;;OAUG;
|
|
1
|
+
{"version":3,"file":"PerformanceClient.d.ts","sourceRoot":"","sources":["../../../src/telemetry/performance/PerformanceClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
/*! @azure/msal-common
|
|
1
|
+
/*! @azure/msal-common v14.0.0-alpha.1 2023-05-08 */
|
|
2
2
|
'use strict';
|
|
3
|
-
import { __assign } from '../../_virtual/_tslib.js';
|
|
4
3
|
import { IntFields, PerformanceEventStatus } from './PerformanceEvent.js';
|
|
5
4
|
|
|
6
5
|
/*
|
|
7
6
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
|
8
7
|
* Licensed under the MIT License.
|
|
9
8
|
*/
|
|
10
|
-
|
|
9
|
+
class PerformanceClient {
|
|
11
10
|
/**
|
|
12
11
|
* Creates an instance of PerformanceClient,
|
|
13
12
|
* an abstract class containing core performance telemetry logic.
|
|
@@ -19,7 +18,7 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
19
18
|
* @param {string} libraryName Name of the library
|
|
20
19
|
* @param {string} libraryVersion Version of the library
|
|
21
20
|
*/
|
|
22
|
-
|
|
21
|
+
constructor(clientId, authority, logger, libraryName, libraryVersion, applicationTelemetry) {
|
|
23
22
|
this.authority = authority;
|
|
24
23
|
this.libraryName = libraryName;
|
|
25
24
|
this.libraryVersion = libraryVersion;
|
|
@@ -39,29 +38,18 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
39
38
|
* @param {string} correlationId
|
|
40
39
|
* @returns {IPerformanceMeasurement}
|
|
41
40
|
*/
|
|
42
|
-
|
|
43
|
-
|
|
41
|
+
startPerformanceMeasurement(measureName, // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
42
|
+
correlationId // eslint-disable-line @typescript-eslint/no-unused-vars
|
|
43
|
+
) {
|
|
44
44
|
return {};
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
* Starts and returns an platform-specific implementation of IPerformanceMeasurement.
|
|
48
|
-
* Note: this incorrectly-named function will be removed at the next major version bump.
|
|
49
|
-
*
|
|
50
|
-
* @param {string} measureName
|
|
51
|
-
* @param {string} correlationId
|
|
52
|
-
* @returns {IPerformanceMeasurement}
|
|
53
|
-
*/
|
|
54
|
-
/* eslint-disable-next-line @typescript-eslint/no-unused-vars */
|
|
55
|
-
PerformanceClient.prototype.startPerformanceMeasuremeant = function (measureName, correlationId) {
|
|
56
|
-
return {};
|
|
57
|
-
};
|
|
45
|
+
}
|
|
58
46
|
/**
|
|
59
47
|
* Get integral fields.
|
|
60
48
|
* Override to change the set.
|
|
61
49
|
*/
|
|
62
|
-
|
|
50
|
+
getIntFields() {
|
|
63
51
|
return IntFields;
|
|
64
|
-
}
|
|
52
|
+
}
|
|
65
53
|
/**
|
|
66
54
|
* Gets map of pre-queue times by correlation Id
|
|
67
55
|
*
|
|
@@ -69,18 +57,18 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
69
57
|
* @param {string} correlationId
|
|
70
58
|
* @returns {number}
|
|
71
59
|
*/
|
|
72
|
-
|
|
73
|
-
|
|
60
|
+
getPreQueueTime(eventName, correlationId) {
|
|
61
|
+
const preQueueEvent = this.preQueueTimeByCorrelationId.get(correlationId);
|
|
74
62
|
if (!preQueueEvent) {
|
|
75
|
-
this.logger.trace(
|
|
63
|
+
this.logger.trace(`PerformanceClient.getPreQueueTime: no pre-queue times found for correlationId: ${correlationId}, unable to add queue measurement`);
|
|
76
64
|
return;
|
|
77
65
|
}
|
|
78
66
|
else if (preQueueEvent.name !== eventName) {
|
|
79
|
-
this.logger.trace(
|
|
67
|
+
this.logger.trace(`PerformanceClient.getPreQueueTime: no pre-queue time found for ${eventName}, unable to add queue measurement`);
|
|
80
68
|
return;
|
|
81
69
|
}
|
|
82
70
|
return preQueueEvent.time;
|
|
83
|
-
}
|
|
71
|
+
}
|
|
84
72
|
/**
|
|
85
73
|
* Calculates the difference between current time and time when function was queued.
|
|
86
74
|
* Note: It is possible to have 0 as the queue time if the current time and the queued time was the same.
|
|
@@ -89,13 +77,13 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
89
77
|
* @param {number} currentTime
|
|
90
78
|
* @returns {number}
|
|
91
79
|
*/
|
|
92
|
-
|
|
80
|
+
calculateQueuedTime(preQueueTime, currentTime) {
|
|
93
81
|
if (preQueueTime < 1) {
|
|
94
|
-
this.logger.trace(
|
|
82
|
+
this.logger.trace(`PerformanceClient: preQueueTime should be a positive integer and not ${preQueueTime}`);
|
|
95
83
|
return 0;
|
|
96
84
|
}
|
|
97
85
|
if (currentTime < 1) {
|
|
98
|
-
this.logger.trace(
|
|
86
|
+
this.logger.trace(`PerformanceClient: currentTime should be a positive integer and not ${currentTime}`);
|
|
99
87
|
return 0;
|
|
100
88
|
}
|
|
101
89
|
if (currentTime < preQueueTime) {
|
|
@@ -103,7 +91,7 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
103
91
|
return 0;
|
|
104
92
|
}
|
|
105
93
|
return currentTime - preQueueTime;
|
|
106
|
-
}
|
|
94
|
+
}
|
|
107
95
|
/**
|
|
108
96
|
* Adds queue measurement time to QueueMeasurements array for given correlation ID.
|
|
109
97
|
*
|
|
@@ -113,35 +101,39 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
113
101
|
* @param {?boolean} manuallyCompleted - indicator for manually completed queue measurements
|
|
114
102
|
* @returns
|
|
115
103
|
*/
|
|
116
|
-
|
|
104
|
+
addQueueMeasurement(eventName, correlationId, queueTime, manuallyCompleted) {
|
|
117
105
|
if (!correlationId) {
|
|
118
|
-
this.logger.trace(
|
|
106
|
+
this.logger.trace(`PerformanceClient.addQueueMeasurement: correlationId not provided for ${eventName}, cannot add queue measurement`);
|
|
119
107
|
return;
|
|
120
108
|
}
|
|
121
109
|
if (queueTime === 0) {
|
|
122
110
|
// Possible for there to be no queue time after calculation
|
|
123
|
-
this.logger.trace(
|
|
111
|
+
this.logger.trace(`PerformanceClient.addQueueMeasurement: queue time provided for ${eventName} is ${queueTime}`);
|
|
124
112
|
}
|
|
125
113
|
else if (!queueTime) {
|
|
126
|
-
this.logger.trace(
|
|
114
|
+
this.logger.trace(`PerformanceClient.addQueueMeasurement: no queue time provided for ${eventName}`);
|
|
127
115
|
return;
|
|
128
116
|
}
|
|
129
|
-
|
|
117
|
+
const queueMeasurement = {
|
|
118
|
+
eventName,
|
|
119
|
+
queueTime,
|
|
120
|
+
manuallyCompleted,
|
|
121
|
+
};
|
|
130
122
|
// Adds to existing correlation Id if present in queueMeasurements
|
|
131
|
-
|
|
123
|
+
const existingMeasurements = this.queueMeasurements.get(correlationId);
|
|
132
124
|
if (existingMeasurements) {
|
|
133
125
|
existingMeasurements.push(queueMeasurement);
|
|
134
126
|
this.queueMeasurements.set(correlationId, existingMeasurements);
|
|
135
127
|
}
|
|
136
128
|
else {
|
|
137
129
|
// Sets new correlation Id if not present in queueMeasurements
|
|
138
|
-
this.logger.trace(
|
|
139
|
-
|
|
130
|
+
this.logger.trace(`PerformanceClient.addQueueMeasurement: adding correlationId ${correlationId} to queue measurements`);
|
|
131
|
+
const measurementArray = [queueMeasurement];
|
|
140
132
|
this.queueMeasurements.set(correlationId, measurementArray);
|
|
141
133
|
}
|
|
142
134
|
// Delete processed pre-queue event.
|
|
143
135
|
this.preQueueTimeByCorrelationId.delete(correlationId);
|
|
144
|
-
}
|
|
136
|
+
}
|
|
145
137
|
/**
|
|
146
138
|
* Starts measuring performance for a given operation. Returns a function that should be used to end the measurement.
|
|
147
139
|
*
|
|
@@ -149,19 +141,16 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
149
141
|
* @param {?string} [correlationId]
|
|
150
142
|
* @returns {InProgressPerformanceEvent}
|
|
151
143
|
*/
|
|
152
|
-
|
|
153
|
-
var _this = this;
|
|
154
|
-
var _a, _b;
|
|
144
|
+
startMeasurement(measureName, correlationId) {
|
|
155
145
|
// Generate a placeholder correlation if the request does not provide one
|
|
156
|
-
|
|
146
|
+
const eventCorrelationId = correlationId || this.generateId();
|
|
157
147
|
if (!correlationId) {
|
|
158
|
-
this.logger.info(
|
|
148
|
+
this.logger.info(`PerformanceClient: No correlation id provided for ${measureName}, generating`, eventCorrelationId);
|
|
159
149
|
}
|
|
160
|
-
|
|
161
|
-
this.
|
|
162
|
-
var performanceMeasurement = this.startPerformanceMeasuremeant(measureName, eventCorrelationId);
|
|
150
|
+
this.logger.trace(`PerformanceClient: Performance measurement started for ${measureName}`, eventCorrelationId);
|
|
151
|
+
const performanceMeasurement = this.startPerformanceMeasurement(measureName, eventCorrelationId);
|
|
163
152
|
performanceMeasurement.startMeasurement();
|
|
164
|
-
|
|
153
|
+
const inProgressEvent = {
|
|
165
154
|
eventId: this.generateId(),
|
|
166
155
|
status: PerformanceEventStatus.InProgress,
|
|
167
156
|
authority: this.authority,
|
|
@@ -171,29 +160,34 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
171
160
|
name: measureName,
|
|
172
161
|
startTimeMs: Date.now(),
|
|
173
162
|
correlationId: eventCorrelationId,
|
|
174
|
-
appName:
|
|
175
|
-
appVersion:
|
|
163
|
+
appName: this.applicationTelemetry?.appName,
|
|
164
|
+
appVersion: this.applicationTelemetry?.appVersion,
|
|
176
165
|
};
|
|
177
166
|
// Store in progress events so they can be discarded if not ended properly
|
|
178
167
|
this.cacheEventByCorrelationId(inProgressEvent);
|
|
179
168
|
// Return the event and functions the caller can use to properly end/flush the measurement
|
|
180
169
|
return {
|
|
181
|
-
endMeasurement:
|
|
182
|
-
return
|
|
170
|
+
endMeasurement: (event) => {
|
|
171
|
+
return this.endMeasurement({
|
|
172
|
+
// Initial set of event properties
|
|
173
|
+
...inProgressEvent,
|
|
174
|
+
// Properties set when event ends
|
|
175
|
+
...event,
|
|
176
|
+
}, performanceMeasurement);
|
|
183
177
|
},
|
|
184
|
-
discardMeasurement:
|
|
185
|
-
return
|
|
178
|
+
discardMeasurement: () => {
|
|
179
|
+
return this.discardMeasurements(inProgressEvent.correlationId);
|
|
186
180
|
},
|
|
187
|
-
addStaticFields:
|
|
188
|
-
return
|
|
181
|
+
addStaticFields: (fields) => {
|
|
182
|
+
return this.addStaticFields(fields, inProgressEvent.correlationId);
|
|
189
183
|
},
|
|
190
|
-
increment:
|
|
191
|
-
return
|
|
184
|
+
increment: (counters) => {
|
|
185
|
+
return this.increment(counters, inProgressEvent.correlationId);
|
|
192
186
|
},
|
|
193
187
|
measurement: performanceMeasurement,
|
|
194
|
-
event: inProgressEvent
|
|
188
|
+
event: inProgressEvent,
|
|
195
189
|
};
|
|
196
|
-
}
|
|
190
|
+
}
|
|
197
191
|
/**
|
|
198
192
|
* Stops measuring the performance for an operation. Should only be called directly by PerformanceClient classes,
|
|
199
193
|
* as consumers should instead use the function returned by startMeasurement.
|
|
@@ -204,78 +198,87 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
204
198
|
* @param {IPerformanceMeasurement} measurement
|
|
205
199
|
* @returns {(PerformanceEvent | null)}
|
|
206
200
|
*/
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
var _a, _b;
|
|
210
|
-
var rootEvent = this.eventsByCorrelationId.get(event.correlationId);
|
|
201
|
+
endMeasurement(event, measurement) {
|
|
202
|
+
const rootEvent = this.eventsByCorrelationId.get(event.correlationId);
|
|
211
203
|
if (!rootEvent) {
|
|
212
|
-
this.logger.trace(
|
|
204
|
+
this.logger.trace(`PerformanceClient: Measurement not found for ${event.eventId}`, event.correlationId);
|
|
213
205
|
return null;
|
|
214
206
|
}
|
|
215
|
-
|
|
216
|
-
|
|
207
|
+
const isRoot = event.eventId === rootEvent.eventId;
|
|
208
|
+
let queueInfo = {
|
|
217
209
|
totalQueueTime: 0,
|
|
218
210
|
totalQueueCount: 0,
|
|
219
|
-
manuallyCompletedCount: 0
|
|
211
|
+
manuallyCompletedCount: 0,
|
|
220
212
|
};
|
|
221
213
|
if (isRoot) {
|
|
222
214
|
queueInfo = this.getQueueInfo(event.correlationId);
|
|
223
215
|
this.discardCache(rootEvent.correlationId);
|
|
224
216
|
}
|
|
225
217
|
else {
|
|
226
|
-
|
|
218
|
+
rootEvent.incompleteSubMeasurements?.delete(event.eventId);
|
|
227
219
|
}
|
|
228
|
-
measurement
|
|
229
|
-
|
|
220
|
+
measurement?.endMeasurement();
|
|
221
|
+
const durationMs = measurement?.flushMeasurement();
|
|
230
222
|
// null indicates no measurement was taken (e.g. needed performance APIs not present)
|
|
231
223
|
if (!durationMs) {
|
|
232
224
|
this.logger.trace("PerformanceClient: Performance measurement not taken", rootEvent.correlationId);
|
|
233
225
|
return null;
|
|
234
226
|
}
|
|
235
|
-
this.logger.trace(
|
|
227
|
+
this.logger.trace(`PerformanceClient: Performance measurement ended for ${event.name}: ${durationMs} ms`, event.correlationId);
|
|
236
228
|
// Add sub-measurement attribute to root event.
|
|
237
229
|
if (!isRoot) {
|
|
238
230
|
rootEvent[event.name + "DurationMs"] = Math.floor(durationMs);
|
|
239
|
-
return
|
|
231
|
+
return { ...rootEvent };
|
|
240
232
|
}
|
|
241
|
-
|
|
242
|
-
|
|
233
|
+
let finalEvent = { ...rootEvent, ...event };
|
|
234
|
+
let incompleteSubsCount = 0;
|
|
243
235
|
// Incomplete sub-measurements are discarded. They are likely an instrumentation bug that should be fixed.
|
|
244
|
-
|
|
245
|
-
|
|
236
|
+
finalEvent.incompleteSubMeasurements?.forEach((subMeasurement) => {
|
|
237
|
+
this.logger.trace(`PerformanceClient: Incomplete submeasurement ${subMeasurement.name} found for ${event.name}`, finalEvent.correlationId);
|
|
246
238
|
incompleteSubsCount++;
|
|
247
239
|
});
|
|
248
240
|
finalEvent.incompleteSubMeasurements = undefined;
|
|
249
|
-
finalEvent =
|
|
241
|
+
finalEvent = {
|
|
242
|
+
...finalEvent,
|
|
243
|
+
durationMs: Math.round(durationMs),
|
|
244
|
+
queuedTimeMs: queueInfo.totalQueueTime,
|
|
245
|
+
queuedCount: queueInfo.totalQueueCount,
|
|
246
|
+
queuedManuallyCompletedCount: queueInfo.manuallyCompletedCount,
|
|
247
|
+
status: PerformanceEventStatus.Completed,
|
|
248
|
+
incompleteSubsCount,
|
|
249
|
+
};
|
|
250
250
|
this.truncateIntegralFields(finalEvent, this.getIntFields());
|
|
251
251
|
this.emitEvents([finalEvent], event.correlationId);
|
|
252
252
|
return finalEvent;
|
|
253
|
-
}
|
|
253
|
+
}
|
|
254
254
|
/**
|
|
255
255
|
* Saves extra information to be emitted when the measurements are flushed
|
|
256
256
|
* @param fields
|
|
257
257
|
* @param correlationId
|
|
258
258
|
*/
|
|
259
|
-
|
|
259
|
+
addStaticFields(fields, correlationId) {
|
|
260
260
|
this.logger.trace("PerformanceClient: Updating static fields");
|
|
261
|
-
|
|
261
|
+
const event = this.eventsByCorrelationId.get(correlationId);
|
|
262
262
|
if (event) {
|
|
263
|
-
this.eventsByCorrelationId.set(correlationId,
|
|
263
|
+
this.eventsByCorrelationId.set(correlationId, {
|
|
264
|
+
...event,
|
|
265
|
+
...fields,
|
|
266
|
+
});
|
|
264
267
|
}
|
|
265
268
|
else {
|
|
266
269
|
this.logger.trace("PerformanceClient: Event not found for", correlationId);
|
|
267
270
|
}
|
|
268
|
-
}
|
|
271
|
+
}
|
|
269
272
|
/**
|
|
270
273
|
* Increment counters to be emitted when the measurements are flushed
|
|
271
274
|
* @param counters {Counters}
|
|
272
275
|
* @param correlationId {string} correlation identifier
|
|
273
276
|
*/
|
|
274
|
-
|
|
277
|
+
increment(counters, correlationId) {
|
|
275
278
|
this.logger.trace("PerformanceClient: Updating counters");
|
|
276
|
-
|
|
279
|
+
const event = this.eventsByCorrelationId.get(correlationId);
|
|
277
280
|
if (event) {
|
|
278
|
-
for (
|
|
281
|
+
for (const counter in counters) {
|
|
279
282
|
if (!event.hasOwnProperty(counter)) {
|
|
280
283
|
event[counter] = 0;
|
|
281
284
|
}
|
|
@@ -285,7 +288,7 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
285
288
|
else {
|
|
286
289
|
this.logger.trace("PerformanceClient: Event not found for", correlationId);
|
|
287
290
|
}
|
|
288
|
-
}
|
|
291
|
+
}
|
|
289
292
|
/**
|
|
290
293
|
* Upserts event into event cache.
|
|
291
294
|
* First key is the correlation id, second key is the event id.
|
|
@@ -295,114 +298,116 @@ var PerformanceClient = /** @class */ (function () {
|
|
|
295
298
|
* @private
|
|
296
299
|
* @param {PerformanceEvent} event
|
|
297
300
|
*/
|
|
298
|
-
|
|
299
|
-
|
|
301
|
+
cacheEventByCorrelationId(event) {
|
|
302
|
+
const rootEvent = this.eventsByCorrelationId.get(event.correlationId);
|
|
300
303
|
if (rootEvent) {
|
|
301
|
-
this.logger.trace(
|
|
302
|
-
rootEvent.incompleteSubMeasurements =
|
|
303
|
-
|
|
304
|
+
this.logger.trace(`PerformanceClient: Performance measurement for ${event.name} added/updated`, event.correlationId);
|
|
305
|
+
rootEvent.incompleteSubMeasurements =
|
|
306
|
+
rootEvent.incompleteSubMeasurements || new Map();
|
|
307
|
+
rootEvent.incompleteSubMeasurements.set(event.eventId, {
|
|
308
|
+
name: event.name,
|
|
309
|
+
startTimeMs: event.startTimeMs,
|
|
310
|
+
});
|
|
304
311
|
}
|
|
305
312
|
else {
|
|
306
|
-
this.logger.trace(
|
|
307
|
-
this.eventsByCorrelationId.set(event.correlationId,
|
|
313
|
+
this.logger.trace(`PerformanceClient: Performance measurement for ${event.name} started`, event.correlationId);
|
|
314
|
+
this.eventsByCorrelationId.set(event.correlationId, { ...event });
|
|
308
315
|
}
|
|
309
|
-
}
|
|
310
|
-
|
|
311
|
-
|
|
316
|
+
}
|
|
317
|
+
getQueueInfo(correlationId) {
|
|
318
|
+
const queueMeasurementForCorrelationId = this.queueMeasurements.get(correlationId);
|
|
312
319
|
if (!queueMeasurementForCorrelationId) {
|
|
313
|
-
this.logger.trace(
|
|
320
|
+
this.logger.trace(`PerformanceClient: no queue measurements found for for correlationId: ${correlationId}`);
|
|
314
321
|
}
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
queueMeasurementForCorrelationId
|
|
322
|
+
let totalQueueTime = 0;
|
|
323
|
+
let totalQueueCount = 0;
|
|
324
|
+
let manuallyCompletedCount = 0;
|
|
325
|
+
queueMeasurementForCorrelationId?.forEach((measurement) => {
|
|
319
326
|
totalQueueTime += measurement.queueTime;
|
|
320
327
|
totalQueueCount++;
|
|
321
328
|
manuallyCompletedCount += measurement.manuallyCompleted ? 1 : 0;
|
|
322
329
|
});
|
|
323
330
|
return {
|
|
324
|
-
totalQueueTime
|
|
325
|
-
totalQueueCount
|
|
326
|
-
manuallyCompletedCount
|
|
331
|
+
totalQueueTime,
|
|
332
|
+
totalQueueCount,
|
|
333
|
+
manuallyCompletedCount,
|
|
327
334
|
};
|
|
328
|
-
}
|
|
335
|
+
}
|
|
329
336
|
/**
|
|
330
337
|
* Removes measurements for a given correlation id.
|
|
331
338
|
*
|
|
332
339
|
* @param {string} correlationId
|
|
333
340
|
*/
|
|
334
|
-
|
|
341
|
+
discardMeasurements(correlationId) {
|
|
335
342
|
this.logger.trace("PerformanceClient: Performance measurements discarded", correlationId);
|
|
336
343
|
this.eventsByCorrelationId.delete(correlationId);
|
|
337
|
-
}
|
|
344
|
+
}
|
|
338
345
|
/**
|
|
339
346
|
* Removes cache for a given correlation id.
|
|
340
347
|
*
|
|
341
348
|
* @param {string} correlationId correlation identifier
|
|
342
349
|
*/
|
|
343
|
-
|
|
350
|
+
discardCache(correlationId) {
|
|
344
351
|
this.discardMeasurements(correlationId);
|
|
345
352
|
this.logger.trace("PerformanceClient: QueueMeasurements discarded", correlationId);
|
|
346
353
|
this.queueMeasurements.delete(correlationId);
|
|
347
354
|
this.logger.trace("PerformanceClient: Pre-queue times discarded", correlationId);
|
|
348
355
|
this.preQueueTimeByCorrelationId.delete(correlationId);
|
|
349
|
-
}
|
|
356
|
+
}
|
|
350
357
|
/**
|
|
351
358
|
* Registers a callback function to receive performance events.
|
|
352
359
|
*
|
|
353
360
|
* @param {PerformanceCallbackFunction} callback
|
|
354
361
|
* @returns {string}
|
|
355
362
|
*/
|
|
356
|
-
|
|
357
|
-
|
|
363
|
+
addPerformanceCallback(callback) {
|
|
364
|
+
const callbackId = this.generateId();
|
|
358
365
|
this.callbacks.set(callbackId, callback);
|
|
359
|
-
this.logger.verbose(
|
|
366
|
+
this.logger.verbose(`PerformanceClient: Performance callback registered with id: ${callbackId}`);
|
|
360
367
|
return callbackId;
|
|
361
|
-
}
|
|
368
|
+
}
|
|
362
369
|
/**
|
|
363
370
|
* Removes a callback registered with addPerformanceCallback.
|
|
364
371
|
*
|
|
365
372
|
* @param {string} callbackId
|
|
366
373
|
* @returns {boolean}
|
|
367
374
|
*/
|
|
368
|
-
|
|
369
|
-
|
|
375
|
+
removePerformanceCallback(callbackId) {
|
|
376
|
+
const result = this.callbacks.delete(callbackId);
|
|
370
377
|
if (result) {
|
|
371
|
-
this.logger.verbose(
|
|
378
|
+
this.logger.verbose(`PerformanceClient: Performance callback ${callbackId} removed.`);
|
|
372
379
|
}
|
|
373
380
|
else {
|
|
374
|
-
this.logger.verbose(
|
|
381
|
+
this.logger.verbose(`PerformanceClient: Performance callback ${callbackId} not removed.`);
|
|
375
382
|
}
|
|
376
383
|
return result;
|
|
377
|
-
}
|
|
384
|
+
}
|
|
378
385
|
/**
|
|
379
386
|
* Emits events to all registered callbacks.
|
|
380
387
|
*
|
|
381
388
|
* @param {PerformanceEvent[]} events
|
|
382
389
|
* @param {?string} [correlationId]
|
|
383
390
|
*/
|
|
384
|
-
|
|
385
|
-
var _this = this;
|
|
391
|
+
emitEvents(events, correlationId) {
|
|
386
392
|
this.logger.verbose("PerformanceClient: Emitting performance events", correlationId);
|
|
387
|
-
this.callbacks.forEach(
|
|
388
|
-
|
|
393
|
+
this.callbacks.forEach((callback, callbackId) => {
|
|
394
|
+
this.logger.trace(`PerformanceClient: Emitting event to callback ${callbackId}`, correlationId);
|
|
389
395
|
callback.apply(null, [events]);
|
|
390
396
|
});
|
|
391
|
-
}
|
|
397
|
+
}
|
|
392
398
|
/**
|
|
393
399
|
* Enforce truncation of integral fields in performance event.
|
|
394
400
|
* @param {PerformanceEvent} event performance event to update.
|
|
395
401
|
* @param {Set<string>} intFields integral fields.
|
|
396
402
|
*/
|
|
397
|
-
|
|
398
|
-
intFields.forEach(
|
|
403
|
+
truncateIntegralFields(event, intFields) {
|
|
404
|
+
intFields.forEach((key) => {
|
|
399
405
|
if (key in event && typeof event[key] === "number") {
|
|
400
406
|
event[key] = Math.floor(event[key]);
|
|
401
407
|
}
|
|
402
408
|
});
|
|
403
|
-
}
|
|
404
|
-
|
|
405
|
-
}());
|
|
409
|
+
}
|
|
410
|
+
}
|
|
406
411
|
|
|
407
412
|
export { PerformanceClient };
|
|
408
413
|
//# sourceMappingURL=PerformanceClient.js.map
|