UNPKG

@azure/monitor-opentelemetry

Version:
56 lines 2.26 kB
import type { TokenCredential } from "@azure/core-auth"; import type { IsSubscribedOptionalParams, PublishOptionalParams, CollectionConfigurationInfo } from "../../../generated/index.js"; /** * Response type that includes the body and response headers from the Live Metrics service. * @internal */ export interface QuickpulseResponse extends CollectionConfigurationInfo { /** Whether the instrumentation key is subscribed. */ xMsQpsSubscribed?: string; /** Configuration ETag. */ xMsQpsConfigurationEtag?: string; /** Polling interval hint (only for ping). */ xMsQpsServicePollingIntervalHint?: string; /** Endpoint redirect (only for ping). */ xMsQpsServiceEndpointRedirectV2?: string; } /** * Quickpulse sender class * @internal */ export declare class QuickpulseSender { private quickpulseClient; private instrumentationKey; private endpointUrl; private credential; private credentialScopes; constructor(options: { endpointUrl: string; instrumentationKey: string; credential?: TokenCredential; credentialScopes?: string | string[]; }); private createQuickpulseClient; /** * isSubscribed Quickpulse service * @internal */ isSubscribed(optionalParams: IsSubscribedOptionalParams): Promise<QuickpulseResponse | undefined>; /** * publish Quickpulse service * @internal */ publish(optionalParams: PublishOptionalParams): Promise<QuickpulseResponse | undefined>; /** * Apply a server-issued Live Metrics redirect (`x-ms-qps-service-endpoint-redirect-v2`) by * re-pointing the underlying client at the new host. * * Cross-origin redirects are refused (no state mutated) when the target is neither the configured * Live Metrics host nor under a known Azure Monitor ingestion domain suffix. Refusing them is * required to prevent an attacker-controlled redirect from causing the bearer auth policy to * attach a freshly-signed AAD token (scope `https://monitor.azure.com/.default`) — and the * telemetry body — to a foreign host on the next ping/publish call. */ handlePermanentRedirect(location: string | undefined): void; } //# sourceMappingURL=sender.d.ts.map