UNPKG

@azure/monitor-opentelemetry

Version:
107 lines 4.96 kB
"use strict"; // Copyright (c) Microsoft Corporation. // Licensed under the MIT License. Object.defineProperty(exports, "__esModule", { value: true }); exports._publishSend = _publishSend; exports._publishDeserialize = _publishDeserialize; exports.publish = publish; exports._isSubscribedSend = _isSubscribedSend; exports._isSubscribedDeserialize = _isSubscribedDeserialize; exports.isSubscribed = isSubscribed; const models_js_1 = require("../models/models.js"); const urlTemplate_js_1 = require("../static-helpers/urlTemplate.js"); const core_client_1 = require("@azure-rest/core-client"); function _publishSend(context, ikey, options = { requestOptions: {} }) { const path = (0, urlTemplate_js_1.expandUrlTemplate)("/QuickPulseService.svc/post{?api%2Dversion,ikey}", { "api%2Dversion": context.apiVersion ?? "2024-04-01-preview", ikey: ikey, }, { allowReserved: options?.requestOptions?.skipUrlEncoding, }); return context .path(path) .post({ ...(0, core_client_1.operationOptionsToRequestParameters)(options), contentType: "application/json", headers: { ...(options?.configurationEtag !== undefined ? { "x-ms-qps-configuration-etag": options?.configurationEtag } : {}), ...(options?.transmissionTime !== undefined ? { "x-ms-qps-transmission-time": options?.transmissionTime } : {}), accept: "application/json", ...options.requestOptions?.headers, }, body: !options["monitoringDataPoints"] ? options["monitoringDataPoints"] : (0, models_js_1.monitoringDataPointArraySerializer)(options["monitoringDataPoints"]), }); } async function _publishDeserialize(result) { const expectedStatuses = ["200"]; if (!expectedStatuses.includes(result.status)) { const error = (0, core_client_1.createRestError)(result); error.details = (0, models_js_1.serviceErrorDeserializer)(result.body); throw error; } return (0, models_js_1.collectionConfigurationInfoDeserializer)(result.body); } /** Publish live metrics to the Live Metrics service when there is an active subscription to the metrics. */ async function publish(context, ikey, options = { requestOptions: {} }) { const result = await _publishSend(context, ikey, options); return _publishDeserialize(result); } function _isSubscribedSend(context, ikey, options = { requestOptions: {} }) { const path = (0, urlTemplate_js_1.expandUrlTemplate)("/QuickPulseService.svc/ping{?api%2Dversion,ikey}", { "api%2Dversion": context.apiVersion ?? "2024-04-01-preview", ikey: ikey, }, { allowReserved: options?.requestOptions?.skipUrlEncoding, }); return context .path(path) .post({ ...(0, core_client_1.operationOptionsToRequestParameters)(options), contentType: "application/json", headers: { ...(options?.transmissionTime !== undefined ? { "x-ms-qps-transmission-time": options?.transmissionTime } : {}), ...(options?.machineName !== undefined ? { "x-ms-qps-machine-name": options?.machineName } : {}), ...(options?.instanceName !== undefined ? { "x-ms-qps-instance-name": options?.instanceName } : {}), ...(options?.streamId !== undefined ? { "x-ms-qps-stream-id": options?.streamId } : {}), ...(options?.roleName !== undefined ? { "x-ms-qps-role-name": options?.roleName } : {}), ...(options?.invariantVersion !== undefined ? { "x-ms-qps-invariant-version": options?.invariantVersion } : {}), ...(options?.configurationEtag !== undefined ? { "x-ms-qps-configuration-etag": options?.configurationEtag } : {}), accept: "application/json", ...options.requestOptions?.headers, }, body: !options["monitoringDataPoint"] ? options["monitoringDataPoint"] : (0, models_js_1.monitoringDataPointSerializer)(options["monitoringDataPoint"]), }); } async function _isSubscribedDeserialize(result) { const expectedStatuses = ["200"]; if (!expectedStatuses.includes(result.status)) { const error = (0, core_client_1.createRestError)(result); error.details = (0, models_js_1.serviceErrorDeserializer)(result.body); throw error; } return (0, models_js_1.collectionConfigurationInfoDeserializer)(result.body); } /** Determine whether there is any subscription to the metrics and documents. */ async function isSubscribed(context, ikey, options = { requestOptions: {} }) { const result = await _isSubscribedSend(context, ikey, options); return _isSubscribedDeserialize(result); } //# sourceMappingURL=operations.js.map