diff --git a/.eslintrc.json b/.eslintrc.json index 78d7534f5c..481e18997c 100755 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -219,7 +219,9 @@ "azurecore", "**/{vs,sql}/base/common/**", "**/{vs,sql}/base/parts/*/common/**", - "**/{vs,sql}/platform/*/common/**" + "**/{vs,sql}/platform/*/common/**", + "@microsoft/1ds-post-js", + "@microsoft/1ds-core-js" ] }, { @@ -257,7 +259,9 @@ "**/{vs,sql}/base/{common,node}/**", "**/{vs,sql}/base/parts/*/{common,node}/**", "**/{vs,sql}/platform/*/{common,node}/**", - "@vscode/*", "@parcel/*", "*" // node modules + "@vscode/*", "@parcel/*", "*", // node modules + "@microsoft/1ds-post-js", + "@microsoft/1ds-core-js" ] }, { @@ -306,7 +310,9 @@ "**/{vs,sql}/base/test/{common,browser}/**", "**/{vs,sql}/base/parts/*/common/**", // {{SQL CARBON EDIT}} "**/{vs,sql}/platform/*/{common,browser}/**", - "**/{vs,sql}/platform/*/test/{common,browser}/**" + "**/{vs,sql}/platform/*/test/{common,browser}/**", + "@microsoft/1ds-post-js", + "@microsoft/1ds-core-js" ] }, { diff --git a/build/lib/stats.js b/build/lib/stats.js index 0b45bab573..45cc0eabf9 100644 --- a/build/lib/stats.js +++ b/build/lib/stats.js @@ -1,8 +1,8 @@ +"use strict"; /*--------------------------------------------------------------------------------------------- * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.createStatsStream = void 0; const es = require("event-stream"); diff --git a/build/lib/stats.ts b/build/lib/stats.ts index 15e4ff9073..7e00928a0b 100644 --- a/build/lib/stats.ts +++ b/build/lib/stats.ts @@ -3,8 +3,6 @@ * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -'use strict'; - import * as es from 'event-stream'; import * as fancyLog from 'fancy-log'; import * as ansiColors from 'ansi-colors'; diff --git a/extensions/admin-tool-ext-win/package.json b/extensions/admin-tool-ext-win/package.json index b0d67540f3..791125c52e 100644 --- a/extensions/admin-tool-ext-win/package.json +++ b/extensions/admin-tool-ext-win/package.json @@ -7,7 +7,7 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/extensions/admin-tool-ext-win/license/Azure%20Data%20Studio%20Extension%20-%20Standalone%20(free)%20Use%20Terms.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "^1.30.1", "azdata": ">=1.8.0" diff --git a/extensions/agent/package.json b/extensions/agent/package.json index d6c7b4f266..ccc708e02d 100644 --- a/extensions/agent/package.json +++ b/extensions/agent/package.json @@ -7,7 +7,7 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "^1.25.0" }, diff --git a/extensions/asde-deployment/package.json b/extensions/asde-deployment/package.json index 4c4521b20e..0f955db0f8 100644 --- a/extensions/asde-deployment/package.json +++ b/extensions/asde-deployment/package.json @@ -7,7 +7,6 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-444c3af9-8e69-4462-ab49-4191e6ad1916", "engines": { "vscode": "*", "azdata": ">=1.25.0" diff --git a/extensions/azurehybridtoolkit/package.json b/extensions/azurehybridtoolkit/package.json index ea2880c68a..52ea6ab246 100644 --- a/extensions/azurehybridtoolkit/package.json +++ b/extensions/azurehybridtoolkit/package.json @@ -7,7 +7,7 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "*", "azdata": "*" diff --git a/extensions/azuremonitor/package.json b/extensions/azuremonitor/package.json index 5f8368f1b7..37c5c5d83c 100644 --- a/extensions/azuremonitor/package.json +++ b/extensions/azuremonitor/package.json @@ -3,7 +3,7 @@ "description": "%azuremonitor.description%", "version": "0.1.9", "publisher": "Microsoft", - "aiKey": "AIF-444c3af9-8e69-4462-ab49-4191e6ad1916", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "*" ], @@ -213,7 +213,7 @@ "figures": "^2.0.0", "find-remove": "1.2.1", "@microsoft/ads-service-downloader": "1.0.4", - "vscode-extension-telemetry": "0.4.2", + "@microsoft/ads-extension-telemetry": "^1.3.1", "vscode-languageclient": "5.2.1", "vscode-nls": "^4.0.0" }, diff --git a/extensions/azuremonitor/src/telemetry.ts b/extensions/azuremonitor/src/telemetry.ts index 433abf95d1..939690e3d5 100644 --- a/extensions/azuremonitor/src/telemetry.ts +++ b/extensions/azuremonitor/src/telemetry.ts @@ -5,7 +5,7 @@ import * as vscode from 'vscode'; import * as nls from 'vscode-nls'; -import TelemetryReporter from 'vscode-extension-telemetry'; +import TelemetryReporter from '@microsoft/ads-extension-telemetry'; import { ErrorAction, ErrorHandler, Message, CloseAction } from 'vscode-languageclient'; import * as Utils from './utils'; diff --git a/extensions/azuremonitor/yarn.lock b/extensions/azuremonitor/yarn.lock index 504b527b31..3c45e33a64 100644 --- a/extensions/azuremonitor/yarn.lock +++ b/extensions/azuremonitor/yarn.lock @@ -2,6 +2,31 @@ # yarn lockfile v1 +"@microsoft/1ds-core-js@3.2.8", "@microsoft/1ds-core-js@^3.2.3": + version "3.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-core-js/-/1ds-core-js-3.2.8.tgz#1b6b7d9bb858238c818ccf4e4b58ece7aeae5760" + integrity sha512-9o9SUAamJiTXIYwpkQDuueYt83uZfXp8zp8YFix1IwVPwC9RmE36T2CX9gXOeq1nDckOuOduYpA8qHvdh5BGfQ== + dependencies: + "@microsoft/applicationinsights-core-js" "2.8.9" + "@microsoft/applicationinsights-shims" "^2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/1ds-post-js@^3.2.3": + version "3.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-post-js/-/1ds-post-js-3.2.8.tgz#46793842cca161bf7a2a5b6053c349f429e55110" + integrity sha512-SjlRoNcXcXBH6WQD/5SkkaCHIVqldH3gDu+bI7YagrOVJ5APxwT1Duw9gm3L1FjFa9S2i81fvJ3EVSKpp9wULA== + dependencies: + "@microsoft/1ds-core-js" "3.2.8" + "@microsoft/applicationinsights-shims" "^2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/ads-extension-telemetry@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@microsoft/ads-extension-telemetry/-/ads-extension-telemetry-1.3.1.tgz#fa757ee88eac91b21c3a68562da6441c2ad15c39" + integrity sha512-8Zd7RwwN7ZufMoWFmc1bwzmQc1RV7/jf/Ua33YL1+P0ZwHoWFOhf/b0lwvAVzi9TB/7oD5zA5yv7A/i2sSTn6Q== + dependencies: + "@vscode/extension-telemetry" "^0.6.2" + "@microsoft/ads-service-downloader@1.0.4": version "1.0.4" resolved "https://registry.yarnpkg.com/@microsoft/ads-service-downloader/-/ads-service-downloader-1.0.4.tgz#94e13461d655d0864cbf93978247cbd1097e7863" @@ -16,6 +41,32 @@ tmp "^0.0.33" yauzl "^2.10.0" +"@microsoft/applicationinsights-core-js@2.8.9": + version "2.8.9" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.9.tgz#0e5d207acfae6986a6fc97249eeb6117e523bf1b" + integrity sha512-HRuIuZ6aOWezcg/G5VyFDDWGL8hDNe/ljPP01J7ImH2kRPEgbtcfPSUMjkamGMefgdq81GZsSoC/NNGTP4pp2w== + dependencies: + "@microsoft/applicationinsights-shims" "2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/applicationinsights-shims@2.0.2", "@microsoft/applicationinsights-shims@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-shims/-/applicationinsights-shims-2.0.2.tgz#92b36a09375e2d9cb2b4203383b05772be837085" + integrity sha512-PoHEgsnmcqruLNHZ/amACqdJ6YYQpED0KSRe6J7gIJTtpZC1FfFU9b1fmDKDKtFoUSrPzEh1qzO3kmRZP0betg== + +"@microsoft/dynamicproto-js@^1.1.7": + version "1.1.7" + resolved "https://registry.yarnpkg.com/@microsoft/dynamicproto-js/-/dynamicproto-js-1.1.7.tgz#ede48dd3f85af14ee369c805e5ed5b84222b9fe2" + integrity sha512-SK3D3aVt+5vOOccKPnGaJWB5gQ8FuKfjboUJHedMP7gu54HqSCXX5iFXhktGD8nfJb0Go30eDvs/UDoTnR2kOA== + +"@vscode/extension-telemetry@^0.6.2": + version "0.6.2" + resolved "https://registry.yarnpkg.com/@vscode/extension-telemetry/-/extension-telemetry-0.6.2.tgz#b86814ee680615730da94220c2b03ea9c3c14a8e" + integrity sha512-yb/wxLuaaCRcBAZtDCjNYSisAXz3FWsSqAha5nhHcYxx2ZPdQdWuZqVXGKq0ZpHVndBWWtK6XqtpCN2/HB4S1w== + dependencies: + "@microsoft/1ds-core-js" "^3.2.3" + "@microsoft/1ds-post-js" "^3.2.3" + agent-base@4, agent-base@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" @@ -275,11 +326,6 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" -vscode-extension-telemetry@0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/vscode-extension-telemetry/-/vscode-extension-telemetry-0.4.2.tgz#6ef847a80c9cfc207eb15e3a254f235acebb65a5" - integrity sha512-y0f51mVoFxHIzULQNCC26TBFIKdEC7uckS3tFoK++OOOl8mU2LlOxgmbd52T/SXoXNg5aI7xqs+4V2ug5ITvKw== - vscode-jsonrpc@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-4.0.0.tgz#a7bf74ef3254d0a0c272fab15c82128e378b3be9" diff --git a/extensions/dacpac/package.json b/extensions/dacpac/package.json index 16a2bff790..3bce5cc991 100644 --- a/extensions/dacpac/package.json +++ b/extensions/dacpac/package.json @@ -11,7 +11,7 @@ }, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "onCommand:dacFx.start" ], diff --git a/extensions/data-workspace/package.json b/extensions/data-workspace/package.json index 907beee6f4..71855fb26d 100644 --- a/extensions/data-workspace/package.json +++ b/extensions/data-workspace/package.json @@ -7,7 +7,7 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": ">=1.48.0", "azdata": ">=1.25.0" diff --git a/extensions/import/package.json b/extensions/import/package.json index 01a2b9f969..8cde788805 100644 --- a/extensions/import/package.json +++ b/extensions/import/package.json @@ -11,7 +11,7 @@ }, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/extensions/import/Microsoft_SQL_Server_Import_Extension_and_Tools_Import_Flat_File_Preview.docx", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "onCommand:flatFileImport.start" ], @@ -80,7 +80,7 @@ "dataprotocol-client": "github:Microsoft/sqlops-dataprotocolclient#0.3.0", "htmlparser2": "^3.10.1", "@microsoft/ads-service-downloader": "1.0.4", - "vscode-extension-telemetry": "0.4.2", + "@microsoft/ads-extension-telemetry": "^1.3.1", "vscode-nls": "^3.2.1" }, "devDependencies": { diff --git a/extensions/import/src/services/telemetry.ts b/extensions/import/src/services/telemetry.ts index 469c2e8952..3b1a7506ee 100644 --- a/extensions/import/src/services/telemetry.ts +++ b/extensions/import/src/services/telemetry.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import { ErrorAction, CloseAction } from 'vscode-languageclient'; -import TelemetryReporter from 'vscode-extension-telemetry'; +import TelemetryReporter from '@microsoft/ads-extension-telemetry'; import * as vscode from 'vscode'; import * as constants from '../common/constants'; diff --git a/extensions/import/yarn.lock b/extensions/import/yarn.lock index 8410aa6b39..e652630809 100644 --- a/extensions/import/yarn.lock +++ b/extensions/import/yarn.lock @@ -182,6 +182,31 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== +"@microsoft/1ds-core-js@3.2.8", "@microsoft/1ds-core-js@^3.2.3": + version "3.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-core-js/-/1ds-core-js-3.2.8.tgz#1b6b7d9bb858238c818ccf4e4b58ece7aeae5760" + integrity sha512-9o9SUAamJiTXIYwpkQDuueYt83uZfXp8zp8YFix1IwVPwC9RmE36T2CX9gXOeq1nDckOuOduYpA8qHvdh5BGfQ== + dependencies: + "@microsoft/applicationinsights-core-js" "2.8.9" + "@microsoft/applicationinsights-shims" "^2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/1ds-post-js@^3.2.3": + version "3.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-post-js/-/1ds-post-js-3.2.8.tgz#46793842cca161bf7a2a5b6053c349f429e55110" + integrity sha512-SjlRoNcXcXBH6WQD/5SkkaCHIVqldH3gDu+bI7YagrOVJ5APxwT1Duw9gm3L1FjFa9S2i81fvJ3EVSKpp9wULA== + dependencies: + "@microsoft/1ds-core-js" "3.2.8" + "@microsoft/applicationinsights-shims" "^2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/ads-extension-telemetry@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@microsoft/ads-extension-telemetry/-/ads-extension-telemetry-1.3.1.tgz#fa757ee88eac91b21c3a68562da6441c2ad15c39" + integrity sha512-8Zd7RwwN7ZufMoWFmc1bwzmQc1RV7/jf/Ua33YL1+P0ZwHoWFOhf/b0lwvAVzi9TB/7oD5zA5yv7A/i2sSTn6Q== + dependencies: + "@vscode/extension-telemetry" "^0.6.2" + "@microsoft/ads-service-downloader@1.0.4": version "1.0.4" resolved "https://registry.yarnpkg.com/@microsoft/ads-service-downloader/-/ads-service-downloader-1.0.4.tgz#94e13461d655d0864cbf93978247cbd1097e7863" @@ -196,6 +221,19 @@ tmp "^0.0.33" yauzl "^2.10.0" +"@microsoft/applicationinsights-core-js@2.8.9": + version "2.8.9" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.9.tgz#0e5d207acfae6986a6fc97249eeb6117e523bf1b" + integrity sha512-HRuIuZ6aOWezcg/G5VyFDDWGL8hDNe/ljPP01J7ImH2kRPEgbtcfPSUMjkamGMefgdq81GZsSoC/NNGTP4pp2w== + dependencies: + "@microsoft/applicationinsights-shims" "2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/applicationinsights-shims@2.0.2", "@microsoft/applicationinsights-shims@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-shims/-/applicationinsights-shims-2.0.2.tgz#92b36a09375e2d9cb2b4203383b05772be837085" + integrity sha512-PoHEgsnmcqruLNHZ/amACqdJ6YYQpED0KSRe6J7gIJTtpZC1FfFU9b1fmDKDKtFoUSrPzEh1qzO3kmRZP0betg== + "@microsoft/azdata-test@^2.0.3": version "2.0.3" resolved "https://registry.yarnpkg.com/@microsoft/azdata-test/-/azdata-test-2.0.3.tgz#652984efa2f5adc56cdae9029a4d5f33446b54d3" @@ -208,6 +246,11 @@ rimraf "^2.6.3" typemoq "^2.1.0" +"@microsoft/dynamicproto-js@^1.1.7": + version "1.1.7" + resolved "https://registry.yarnpkg.com/@microsoft/dynamicproto-js/-/dynamicproto-js-1.1.7.tgz#ede48dd3f85af14ee369c805e5ed5b84222b9fe2" + integrity sha512-SK3D3aVt+5vOOccKPnGaJWB5gQ8FuKfjboUJHedMP7gu54HqSCXX5iFXhktGD8nfJb0Go30eDvs/UDoTnR2kOA== + "@microsoft/vscodetestcover@^1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@microsoft/vscodetestcover/-/vscodetestcover-1.2.1.tgz#65f25132075a465a7a99688204486ee2b65ac07b" @@ -281,6 +324,14 @@ resolved "https://registry.yarnpkg.com/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-6.0.1.tgz#681df970358c82836b42f989188d133e218c458e" integrity sha512-yYezQwGWty8ziyYLdZjwxyMb0CZR49h8JALHGrxjQHWlqGgc8kLdHEgWrgL0uZ29DMvEVBDnHU2Wg36zKSIUtA== +"@vscode/extension-telemetry@^0.6.2": + version "0.6.2" + resolved "https://registry.yarnpkg.com/@vscode/extension-telemetry/-/extension-telemetry-0.6.2.tgz#b86814ee680615730da94220c2b03ea9c3c14a8e" + integrity sha512-yb/wxLuaaCRcBAZtDCjNYSisAXz3FWsSqAha5nhHcYxx2ZPdQdWuZqVXGKq0ZpHVndBWWtK6XqtpCN2/HB4S1w== + dependencies: + "@microsoft/1ds-core-js" "^3.2.3" + "@microsoft/1ds-post-js" "^3.2.3" + agent-base@4: version "4.2.1" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" @@ -1691,11 +1742,6 @@ util-deprecate@^1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= -vscode-extension-telemetry@0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/vscode-extension-telemetry/-/vscode-extension-telemetry-0.4.2.tgz#6ef847a80c9cfc207eb15e3a254f235acebb65a5" - integrity sha512-y0f51mVoFxHIzULQNCC26TBFIKdEC7uckS3tFoK++OOOl8mU2LlOxgmbd52T/SXoXNg5aI7xqs+4V2ug5ITvKw== - vscode-jsonrpc@3.5.0: version "3.5.0" resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-3.5.0.tgz#87239d9e166b2d7352245b8a813597804c1d63aa" diff --git a/extensions/kusto/package.json b/extensions/kusto/package.json index 7b7f9d0083..ad89a4780c 100644 --- a/extensions/kusto/package.json +++ b/extensions/kusto/package.json @@ -2,7 +2,7 @@ "name": "kusto", "version": "0.5.8", "publisher": "Microsoft", - "aiKey": "AIF-444c3af9-8e69-4462-ab49-4191e6ad1916", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "*" ], @@ -431,7 +431,7 @@ "figures": "^2.0.0", "find-remove": "1.2.1", "@microsoft/ads-service-downloader": "1.0.4", - "vscode-extension-telemetry": "0.4.2", + "@microsoft/ads-extension-telemetry": "^1.3.1", "vscode-languageclient": "5.2.1", "vscode-nls": "^4.0.0" }, diff --git a/extensions/kusto/src/telemetry.ts b/extensions/kusto/src/telemetry.ts index 1470b85050..29ecbb8b5c 100644 --- a/extensions/kusto/src/telemetry.ts +++ b/extensions/kusto/src/telemetry.ts @@ -5,7 +5,7 @@ import * as vscode from 'vscode'; import * as nls from 'vscode-nls'; -import TelemetryReporter from 'vscode-extension-telemetry'; +import TelemetryReporter from '@microsoft/ads-extension-telemetry'; import { ErrorAction, ErrorHandler, Message, CloseAction } from 'vscode-languageclient'; import * as Utils from './utils'; diff --git a/extensions/kusto/yarn.lock b/extensions/kusto/yarn.lock index 2827f35f68..9516943b17 100644 --- a/extensions/kusto/yarn.lock +++ b/extensions/kusto/yarn.lock @@ -2,6 +2,31 @@ # yarn lockfile v1 +"@microsoft/1ds-core-js@3.2.8", "@microsoft/1ds-core-js@^3.2.3": + version "3.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-core-js/-/1ds-core-js-3.2.8.tgz#1b6b7d9bb858238c818ccf4e4b58ece7aeae5760" + integrity sha512-9o9SUAamJiTXIYwpkQDuueYt83uZfXp8zp8YFix1IwVPwC9RmE36T2CX9gXOeq1nDckOuOduYpA8qHvdh5BGfQ== + dependencies: + "@microsoft/applicationinsights-core-js" "2.8.9" + "@microsoft/applicationinsights-shims" "^2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/1ds-post-js@^3.2.3": + version "3.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-post-js/-/1ds-post-js-3.2.8.tgz#46793842cca161bf7a2a5b6053c349f429e55110" + integrity sha512-SjlRoNcXcXBH6WQD/5SkkaCHIVqldH3gDu+bI7YagrOVJ5APxwT1Duw9gm3L1FjFa9S2i81fvJ3EVSKpp9wULA== + dependencies: + "@microsoft/1ds-core-js" "3.2.8" + "@microsoft/applicationinsights-shims" "^2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/ads-extension-telemetry@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@microsoft/ads-extension-telemetry/-/ads-extension-telemetry-1.3.1.tgz#fa757ee88eac91b21c3a68562da6441c2ad15c39" + integrity sha512-8Zd7RwwN7ZufMoWFmc1bwzmQc1RV7/jf/Ua33YL1+P0ZwHoWFOhf/b0lwvAVzi9TB/7oD5zA5yv7A/i2sSTn6Q== + dependencies: + "@vscode/extension-telemetry" "^0.6.2" + "@microsoft/ads-service-downloader@1.0.4": version "1.0.4" resolved "https://registry.yarnpkg.com/@microsoft/ads-service-downloader/-/ads-service-downloader-1.0.4.tgz#94e13461d655d0864cbf93978247cbd1097e7863" @@ -16,6 +41,24 @@ tmp "^0.0.33" yauzl "^2.10.0" +"@microsoft/applicationinsights-core-js@2.8.9": + version "2.8.9" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.9.tgz#0e5d207acfae6986a6fc97249eeb6117e523bf1b" + integrity sha512-HRuIuZ6aOWezcg/G5VyFDDWGL8hDNe/ljPP01J7ImH2kRPEgbtcfPSUMjkamGMefgdq81GZsSoC/NNGTP4pp2w== + dependencies: + "@microsoft/applicationinsights-shims" "2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/applicationinsights-shims@2.0.2", "@microsoft/applicationinsights-shims@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-shims/-/applicationinsights-shims-2.0.2.tgz#92b36a09375e2d9cb2b4203383b05772be837085" + integrity sha512-PoHEgsnmcqruLNHZ/amACqdJ6YYQpED0KSRe6J7gIJTtpZC1FfFU9b1fmDKDKtFoUSrPzEh1qzO3kmRZP0betg== + +"@microsoft/dynamicproto-js@^1.1.7": + version "1.1.7" + resolved "https://registry.yarnpkg.com/@microsoft/dynamicproto-js/-/dynamicproto-js-1.1.7.tgz#ede48dd3f85af14ee369c805e5ed5b84222b9fe2" + integrity sha512-SK3D3aVt+5vOOccKPnGaJWB5gQ8FuKfjboUJHedMP7gu54HqSCXX5iFXhktGD8nfJb0Go30eDvs/UDoTnR2kOA== + "@types/caseless@*": version "0.12.2" resolved "https://registry.yarnpkg.com/@types/caseless/-/caseless-0.12.2.tgz#f65d3d6389e01eeb458bd54dc8f52b95a9463bc8" @@ -53,6 +96,14 @@ resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-2.3.5.tgz#9da44ed75571999b65c37b60c9b2b88db54c585d" integrity sha512-SCcK7mvGi3+ZNz833RRjFIxrn4gI1PPR3NtuIS+6vMkvmsGjosqTJwRt5bAEFLRz+wtJMWv8+uOnZf2hi2QXTg== +"@vscode/extension-telemetry@^0.6.2": + version "0.6.2" + resolved "https://registry.yarnpkg.com/@vscode/extension-telemetry/-/extension-telemetry-0.6.2.tgz#b86814ee680615730da94220c2b03ea9c3c14a8e" + integrity sha512-yb/wxLuaaCRcBAZtDCjNYSisAXz3FWsSqAha5nhHcYxx2ZPdQdWuZqVXGKq0ZpHVndBWWtK6XqtpCN2/HB4S1w== + dependencies: + "@microsoft/1ds-core-js" "^3.2.3" + "@microsoft/1ds-post-js" "^3.2.3" + agent-base@4, agent-base@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" @@ -350,11 +401,6 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" -vscode-extension-telemetry@0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/vscode-extension-telemetry/-/vscode-extension-telemetry-0.4.2.tgz#6ef847a80c9cfc207eb15e3a254f235acebb65a5" - integrity sha512-y0f51mVoFxHIzULQNCC26TBFIKdEC7uckS3tFoK++OOOl8mU2LlOxgmbd52T/SXoXNg5aI7xqs+4V2ug5ITvKw== - vscode-jsonrpc@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-4.0.0.tgz#a7bf74ef3254d0a0c272fab15c82128e378b3be9" diff --git a/extensions/liveshare/package.json b/extensions/liveshare/package.json index 5ad5768ec8..7aa20e5d55 100644 --- a/extensions/liveshare/package.json +++ b/extensions/liveshare/package.json @@ -2,7 +2,7 @@ "name": "liveshare", "version": "0.1.0", "publisher": "Microsoft", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "*" ], diff --git a/extensions/machine-learning/package.json b/extensions/machine-learning/package.json index ac7f1b1b5d..ef04287095 100644 --- a/extensions/machine-learning/package.json +++ b/extensions/machine-learning/package.json @@ -17,7 +17,7 @@ ], "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extensionIcon.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "main": "./out/main", "repository": { "type": "git", diff --git a/extensions/mssql/package.json b/extensions/mssql/package.json index 9ad87a4f93..f71c6744a2 100644 --- a/extensions/mssql/package.json +++ b/extensions/mssql/package.json @@ -2,7 +2,7 @@ "name": "mssql", "version": "0.1.0", "publisher": "Microsoft", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "*" ], @@ -1335,6 +1335,7 @@ }, "dependencies": { "@microsoft/ads-kerberos": "^1.1.3", + "@microsoft/ads-extension-telemetry": "^1.3.1", "buffer-stream-reader": "^0.1.1", "bytes": "^3.1.0", "dataprotocol-client": "github:Microsoft/sqlops-dataprotocolclient#1.3.0", @@ -1347,7 +1348,6 @@ "stream-meter": "^1.0.4", "through2": "^3.0.1", "tough-cookie": "^3.0.1", - "vscode-extension-telemetry": "0.4.2", "vscode-languageclient": "5.2.1", "vscode-nls": "^4.0.0" }, diff --git a/extensions/mssql/src/telemetry.ts b/extensions/mssql/src/telemetry.ts index ded9353bdc..03293e46b1 100644 --- a/extensions/mssql/src/telemetry.ts +++ b/extensions/mssql/src/telemetry.ts @@ -4,7 +4,7 @@ *--------------------------------------------------------------------------------------------*/ import * as vscode from 'vscode'; -import TelemetryReporter from 'vscode-extension-telemetry'; +import TelemetryReporter from '@microsoft/ads-extension-telemetry'; import { ErrorAction, ErrorHandler, Message, CloseAction } from 'vscode-languageclient'; import * as Utils from './utils'; diff --git a/extensions/mssql/yarn.lock b/extensions/mssql/yarn.lock index 160e65f921..5bb26ce6ce 100644 --- a/extensions/mssql/yarn.lock +++ b/extensions/mssql/yarn.lock @@ -182,6 +182,31 @@ resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.2.tgz#26520bf09abe4a5644cd5414e37125a8954241dd" integrity sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw== +"@microsoft/1ds-core-js@3.2.8", "@microsoft/1ds-core-js@^3.2.3": + version "3.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-core-js/-/1ds-core-js-3.2.8.tgz#1b6b7d9bb858238c818ccf4e4b58ece7aeae5760" + integrity sha512-9o9SUAamJiTXIYwpkQDuueYt83uZfXp8zp8YFix1IwVPwC9RmE36T2CX9gXOeq1nDckOuOduYpA8qHvdh5BGfQ== + dependencies: + "@microsoft/applicationinsights-core-js" "2.8.9" + "@microsoft/applicationinsights-shims" "^2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/1ds-post-js@^3.2.3": + version "3.2.8" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-post-js/-/1ds-post-js-3.2.8.tgz#46793842cca161bf7a2a5b6053c349f429e55110" + integrity sha512-SjlRoNcXcXBH6WQD/5SkkaCHIVqldH3gDu+bI7YagrOVJ5APxwT1Duw9gm3L1FjFa9S2i81fvJ3EVSKpp9wULA== + dependencies: + "@microsoft/1ds-core-js" "3.2.8" + "@microsoft/applicationinsights-shims" "^2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/ads-extension-telemetry@^1.3.1": + version "1.3.1" + resolved "https://registry.yarnpkg.com/@microsoft/ads-extension-telemetry/-/ads-extension-telemetry-1.3.1.tgz#fa757ee88eac91b21c3a68562da6441c2ad15c39" + integrity sha512-8Zd7RwwN7ZufMoWFmc1bwzmQc1RV7/jf/Ua33YL1+P0ZwHoWFOhf/b0lwvAVzi9TB/7oD5zA5yv7A/i2sSTn6Q== + dependencies: + "@vscode/extension-telemetry" "^0.6.2" + "@microsoft/ads-kerberos@^1.1.3": version "1.1.3" resolved "https://registry.yarnpkg.com/@microsoft/ads-kerberos/-/ads-kerberos-1.1.3.tgz#a10c6d2d0751c0b67548d51a4bc45a7c33d00088" @@ -203,6 +228,19 @@ tmp "^0.0.33" yauzl "^2.10.0" +"@microsoft/applicationinsights-core-js@2.8.9": + version "2.8.9" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.9.tgz#0e5d207acfae6986a6fc97249eeb6117e523bf1b" + integrity sha512-HRuIuZ6aOWezcg/G5VyFDDWGL8hDNe/ljPP01J7ImH2kRPEgbtcfPSUMjkamGMefgdq81GZsSoC/NNGTP4pp2w== + dependencies: + "@microsoft/applicationinsights-shims" "2.0.2" + "@microsoft/dynamicproto-js" "^1.1.7" + +"@microsoft/applicationinsights-shims@2.0.2", "@microsoft/applicationinsights-shims@^2.0.2": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-shims/-/applicationinsights-shims-2.0.2.tgz#92b36a09375e2d9cb2b4203383b05772be837085" + integrity sha512-PoHEgsnmcqruLNHZ/amACqdJ6YYQpED0KSRe6J7gIJTtpZC1FfFU9b1fmDKDKtFoUSrPzEh1qzO3kmRZP0betg== + "@microsoft/azdata-test@^2.0.3": version "2.0.3" resolved "https://registry.yarnpkg.com/@microsoft/azdata-test/-/azdata-test-2.0.3.tgz#652984efa2f5adc56cdae9029a4d5f33446b54d3" @@ -215,6 +253,11 @@ rimraf "^2.6.3" typemoq "^2.1.0" +"@microsoft/dynamicproto-js@^1.1.7": + version "1.1.7" + resolved "https://registry.yarnpkg.com/@microsoft/dynamicproto-js/-/dynamicproto-js-1.1.7.tgz#ede48dd3f85af14ee369c805e5ed5b84222b9fe2" + integrity sha512-SK3D3aVt+5vOOccKPnGaJWB5gQ8FuKfjboUJHedMP7gu54HqSCXX5iFXhktGD8nfJb0Go30eDvs/UDoTnR2kOA== + "@microsoft/vscodetestcover@^1.2.1": version "1.2.1" resolved "https://registry.yarnpkg.com/@microsoft/vscodetestcover/-/vscodetestcover-1.2.1.tgz#65f25132075a465a7a99688204486ee2b65ac07b" @@ -284,6 +327,14 @@ resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-4.0.0.tgz#fef1904e4668b6e5ecee60c52cc6a078ffa6697d" integrity sha512-I99sngh224D0M7XgW1s120zxCt3VYQ3IQsuw3P3jbq5GG4yc79+ZjyKznyOGIQrflfylLgcfekeZW/vk0yng6A== +"@vscode/extension-telemetry@^0.6.2": + version "0.6.2" + resolved "https://registry.yarnpkg.com/@vscode/extension-telemetry/-/extension-telemetry-0.6.2.tgz#b86814ee680615730da94220c2b03ea9c3c14a8e" + integrity sha512-yb/wxLuaaCRcBAZtDCjNYSisAXz3FWsSqAha5nhHcYxx2ZPdQdWuZqVXGKq0ZpHVndBWWtK6XqtpCN2/HB4S1w== + dependencies: + "@microsoft/1ds-core-js" "^3.2.3" + "@microsoft/1ds-post-js" "^3.2.3" + agent-base@4, agent-base@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" @@ -1878,11 +1929,6 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -vscode-extension-telemetry@0.4.2: - version "0.4.2" - resolved "https://registry.yarnpkg.com/vscode-extension-telemetry/-/vscode-extension-telemetry-0.4.2.tgz#6ef847a80c9cfc207eb15e3a254f235acebb65a5" - integrity sha512-y0f51mVoFxHIzULQNCC26TBFIKdEC7uckS3tFoK++OOOl8mU2LlOxgmbd52T/SXoXNg5aI7xqs+4V2ug5ITvKw== - vscode-jsonrpc@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-4.0.0.tgz#a7bf74ef3254d0a0c272fab15c82128e378b3be9" diff --git a/extensions/notebook/package.json b/extensions/notebook/package.json index 0838400a84..603082502e 100644 --- a/extensions/notebook/package.json +++ b/extensions/notebook/package.json @@ -8,7 +8,7 @@ "vscode": "*", "azdata": "*" }, - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "main": "./out/extension", "activationEvents": [ "*" diff --git a/extensions/profiler/package.json b/extensions/profiler/package.json index 1416cb3b72..5e5636b773 100644 --- a/extensions/profiler/package.json +++ b/extensions/profiler/package.json @@ -7,7 +7,7 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "0.10.x" }, diff --git a/extensions/query-history/package.json b/extensions/query-history/package.json index a2c59413cb..bdf5179481 100644 --- a/extensions/query-history/package.json +++ b/extensions/query-history/package.json @@ -6,7 +6,7 @@ "publisher": "Microsoft", "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "*", "azdata": ">=1.40.0" diff --git a/extensions/resource-deployment/package.json b/extensions/resource-deployment/package.json index 504abebc17..11655c755e 100644 --- a/extensions/resource-deployment/package.json +++ b/extensions/resource-deployment/package.json @@ -7,7 +7,7 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "*", "azdata": ">=1.6.0" diff --git a/extensions/schema-compare/package.json b/extensions/schema-compare/package.json index a5cc7d9bde..adbeb2dc93 100644 --- a/extensions/schema-compare/package.json +++ b/extensions/schema-compare/package.json @@ -11,7 +11,7 @@ }, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "onCommand:schemaCompare.start" ], diff --git a/extensions/sql-assessment/package.json b/extensions/sql-assessment/package.json index 92fb07432a..e87678c0b1 100644 --- a/extensions/sql-assessment/package.json +++ b/extensions/sql-assessment/package.json @@ -7,7 +7,7 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "^1.25.0", "azdata": ">=1.27.0" diff --git a/extensions/sql-bindings/package.json b/extensions/sql-bindings/package.json index 03f0ff1f1e..1a9a40d211 100644 --- a/extensions/sql-bindings/package.json +++ b/extensions/sql-bindings/package.json @@ -10,7 +10,7 @@ }, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "media/defaultExtensionIcon.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "onCommand:sqlBindings.addSqlBinding", "onCommand:sqlBindings.createAzureFunction" diff --git a/extensions/sql-database-projects/package.json b/extensions/sql-database-projects/package.json index f9aea351a0..9fb8753dd6 100644 --- a/extensions/sql-database-projects/package.json +++ b/extensions/sql-database-projects/package.json @@ -11,7 +11,7 @@ }, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/sqlDatabaseProjects.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "activationEvents": [ "onCommand:sqlDatabaseProjects.new", "onCommand:sqlDatabaseProjects.open", diff --git a/extensions/sql-migration/package.json b/extensions/sql-migration/package.json index 31e288fea9..5c35c18f21 100644 --- a/extensions/sql-migration/package.json +++ b/extensions/sql-migration/package.json @@ -7,7 +7,7 @@ "preview": false, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/extension.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "*", "azdata": ">=1.39.0" diff --git a/package.json b/package.json index 2f0db99a21..d8e792adc6 100755 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "azuredatastudio", "version": "1.40.0", - "distro": "97a42096c8e31ea70ebc1776b670a584d858073e", + "distro": "c6da977529b6719ff1974faa53a73abe01ec13ac", "author": { "name": "Microsoft Corporation" }, @@ -68,7 +68,9 @@ "@angular/platform-browser": "~4.1.3", "@angular/platform-browser-dynamic": "~4.1.3", "@angular/router": "~4.1.3", - "@microsoft/applicationinsights-web": "^2.6.4", + "@microsoft/1ds-core-js": "^3.2.2", + "@microsoft/1ds-post-js": "^3.2.2", + "@microsoft/applicationinsights-web": "^2.8.4", "@parcel/watcher": "2.0.5", "@vscode/iconv-lite-umd": "0.7.0", "@vscode/ripgrep": "^1.14.2", diff --git a/product.json b/product.json index b22dde5c01..866a4da719 100644 --- a/product.json +++ b/product.json @@ -30,11 +30,11 @@ "privacyStatementUrl": "https://privacy.microsoft.com/privacystatement", "telemetryOptOutUrl": "https://github.com/Microsoft/azuredatastudio/wiki/How-to-Disable-Telemetry-Reporting", "urlProtocol": "azuredatastudio-oss", - "enableTelemetry": true, + "enableTelemetry": false, "webviewContentExternalBaseUrlTemplate": "https://{{uuid}}.vscode-webview.net/insider/69df0500a8963fc469161c038a14a39384d5a303/out/vs/workbench/contrib/webview/browser/pre/", "npsSurveyUrl": "https://aka.ms/azuredatastudio-nps", "aiConfig": { - "asimovKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e" + "ariaKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380" }, "sendASmile": { "reportIssueUrl": "https://github.com/Microsoft/azuredatastudio/issues/new", diff --git a/remote/package.json b/remote/package.json index 467a9bdba7..e387b28f7a 100755 --- a/remote/package.json +++ b/remote/package.json @@ -11,7 +11,9 @@ "@angular/platform-browser": "~4.1.3", "@angular/platform-browser-dynamic": "~4.1.3", "@angular/router": "~4.1.3", - "@microsoft/applicationinsights-web": "^2.6.4", + "@microsoft/1ds-core-js": "^3.2.2", + "@microsoft/1ds-post-js": "^3.2.2", + "@microsoft/applicationinsights-web": "^2.8.4", "@parcel/watcher": "2.0.5", "@vscode/iconv-lite-umd": "0.7.0", "@vscode/ripgrep": "^1.14.2", diff --git a/remote/web/package.json b/remote/web/package.json index 2e039b45d4..98a9e94d82 100755 --- a/remote/web/package.json +++ b/remote/web/package.json @@ -11,7 +11,9 @@ "@angular/platform-browser": "~4.1.3", "@angular/platform-browser-dynamic": "~4.1.3", "@angular/router": "~4.1.3", - "@microsoft/applicationinsights-web": "^2.6.4", + "@microsoft/1ds-core-js": "^3.2.2", + "@microsoft/1ds-post-js": "^3.2.2", + "@microsoft/applicationinsights-web": "^2.8.4", "@vscode/iconv-lite-umd": "0.7.0", "@vscode/vscode-languagedetection": "1.0.21", "angular2-grid": "2.0.6", diff --git a/remote/web/yarn.lock b/remote/web/yarn.lock index e6f601a712..1cc43cecc9 100644 --- a/remote/web/yarn.lock +++ b/remote/web/yarn.lock @@ -42,79 +42,105 @@ resolved "https://registry.yarnpkg.com/@angular/router/-/router-4.1.3.tgz#ddafd46ae7ccc8b1f74904ffb45f394e44625216" integrity sha512-i+1GMIvfM3OC6XX2kZf+tL36Nc4jhcMNOY6bOrmwlN8APl59I9KqdvywC5HnutkDctb8expiWTIuSKZQAc4AIA== -"@microsoft/applicationinsights-analytics-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-analytics-js/-/applicationinsights-analytics-js-2.8.5.tgz#732fdcf16b0f19c0b522556e8950c07b55ee5027" - integrity sha512-wlAUuTuONFfX6V0bPGH8FkN0DJUvcQD4KMyaw1DYTdVWg1Lsv7OewsfEIQBm8OS9phv7ALzMt0tEY3mNp3dtEQ== +"@microsoft/1ds-core-js@3.2.6", "@microsoft/1ds-core-js@^3.2.2": + version "3.2.6" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-core-js/-/1ds-core-js-3.2.6.tgz#8a77909f89f991aa2f0b4ae8825c75042962e68e" + integrity sha512-6OpppYCEA+rXjcs2w0KnWji3Y6ZDx0wykY7ZL3QF68NS323C45GHSpkDpVRT/lDU6Xbau/PvQm2zTYAzLcperA== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-core-js" "2.8.6" + "@microsoft/applicationinsights-shims" "^2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/1ds-post-js@^3.2.2": + version "3.2.6" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-post-js/-/1ds-post-js-3.2.6.tgz#cdfa74acfc3205c0a5b79925284d6d166aa43901" + integrity sha512-Zdyl3FU6kU/a7TlVVSTBZg+hSECTT65iI99FsjMOx88HudyVyk9M/0lVbA+FVXvGaxzmtBW6Lw0qRHYp4tBMSA== + dependencies: + "@microsoft/1ds-core-js" "3.2.6" + "@microsoft/applicationinsights-shims" "^2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/applicationinsights-analytics-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-analytics-js/-/applicationinsights-analytics-js-2.8.7.tgz#dea44f5bbfb150e12f256b0c45ba6756276df9b6" + integrity sha512-WEsbh3yOzjo1DnH6NyVS/W9uXEWJkb0mgOHTnq3An2nvyT7HPzd56hqRfyJsWR2KAU6hvZ09l7OK85AjkfEqJA== + dependencies: + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-channel-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-2.8.5.tgz#18ae13d02c9646e34fc06f32099141ef1c9c5706" - integrity sha512-jiK1lzgrn8PnRvhwDSUQQWZgGrywuvQOq/HbVFI6jdK9qqV7u+ndwFc4GbsTZQdNoWZLmcY8W1qjos8VX0+Zww== +"@microsoft/applicationinsights-channel-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-2.8.7.tgz#365b29842229ba615badc5f9c3f3ebc5c6ce7ef1" + integrity sha512-Ee2zp6Ij/Btnc9P8bVBXUIa4/X8HH1hNYpL2ALGfhwbWOUxoR+1+0FZpj+/H9vf2PP/8eS5r28MCoksbGUH+8A== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-common@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-common/-/applicationinsights-common-2.8.5.tgz#568eb911c2b26473e304ceda1f9509da3a19a94a" - integrity sha512-oiGyz+4Bg+92RuvZn/1GrSwczhbyGrKyuVi/CExQjPKeqAm3ib2Uvlo0gZEm26AsSq0qPklG7H7n5s3y/krXhw== +"@microsoft/applicationinsights-common@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-common/-/applicationinsights-common-2.8.7.tgz#8ac4d63450e8108ac1ce96750d32e286935388f7" + integrity sha512-bODgacISioOVZIYho1QUADVZh4jjFRQhfVokHbFUgDsJ1NgfpDdNlv+idxH9oriBEuf9odWnOM9jfr3OMcVicA== dependencies: - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-core-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.5.tgz#02adb1b9a7dca83897a9a06a98d1aecdc7526b6f" - integrity sha512-7/EgK6r8GiDVluo84skCMNthgnPa6P7TXiJqHBJbuCf11N4YqkZoGjKs+Fo7h6XIPuYMUHVMNLpBObI7oS7HsQ== +"@microsoft/applicationinsights-core-js@2.8.6": + version "2.8.6" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.6.tgz#4f0f9ad809aacfc96cb882139b69b3625519c51a" + integrity sha512-rL+ceda1Y6HaHBe1vIbNT/f5JGuHiD5Ydq+DoAfu56o13wyJu4sao3QKaabgaIM59pPO+3BMeGsK8NNUGYaT3w== dependencies: "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-dependencies-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-dependencies-js/-/applicationinsights-dependencies-js-2.8.5.tgz#2ba74e212651ef6842da06907713cafbfb2e2848" - integrity sha512-UwOpIxZjv3l8KtgrPd5WEmuvaXty3yTc/S279t7hSjxqOk+LDg0Q2dxap80EuQ5qHoGW32qhVkv+nHaASLoRkg== +"@microsoft/applicationinsights-core-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.7.tgz#3c43517bc6fdf2da59aa90708cefcf936db75488" + integrity sha512-y7USumU+a/kbDeORr/dnDFAxcS5+KOFJSM5oUkS8tBu7CYcX1QAGF4X11gdH2NjrGgHjgxhERhYRa/YhwY1NOQ== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-properties-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-properties-js/-/applicationinsights-properties-js-2.8.5.tgz#1fd98967aaa64a65679fe75264e93307026cbf31" - integrity sha512-qlG17DPns2WPW2eL3gYR9mMe+I4Ro2Sp21VRELuVyRH+htkIoeCXcVWn8UPIGO3YonK3DU8mkN9cEx6ov9Aw+Q== +"@microsoft/applicationinsights-dependencies-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-dependencies-js/-/applicationinsights-dependencies-js-2.8.7.tgz#fe7e52ec0a3f18d66cb6c43af529c05858e0cbde" + integrity sha512-lLRZPCi4Aq+sJThiO6QeFfZguuvZkH8VbceMz3jNF8S1KvPC0174eVcihMPDrjErPXGcquH1fKvJn3PionhZuw== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-shims@2.0.1": +"@microsoft/applicationinsights-properties-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-properties-js/-/applicationinsights-properties-js-2.8.7.tgz#6ec96789c3add4e93a1511bfcd946859622355f3" + integrity sha512-wEa2XJ3PAymFLcOajl7KwhLS2JGFW3SbF2lYsGeP/efIJewTRbB1l+6QgbNWiOCvPd4cpiq2jRdrgKaQpJN37Q== + dependencies: + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" + "@microsoft/applicationinsights-shims" "2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/applicationinsights-shims@2.0.1", "@microsoft/applicationinsights-shims@^2.0.1": version "2.0.1" resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-shims/-/applicationinsights-shims-2.0.1.tgz#5d72fb7aaf4056c4fda54f9d7c93ccf8ca9bcbfd" integrity sha512-G0MXf6R6HndRbDy9BbEj0zrLeuhwt2nsXk2zKtF0TnYo39KgYqhYC2ayIzKPTm2KAE+xzD7rgyLdZnrcRvt9WQ== -"@microsoft/applicationinsights-web@^2.6.4": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-web/-/applicationinsights-web-2.8.5.tgz#e0bae482f258ec7d0c307306e9835fba2e443f2d" - integrity sha512-smgLYbDxiV8qmJOfvSL8FhcqXCXnOMJANcyc6FxL6TVn3ZqepG8r+ekV+b4iYn7vBcAc7XLU+zIEAuFC9IV0kA== +"@microsoft/applicationinsights-web@^2.8.4": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-web/-/applicationinsights-web-2.8.7.tgz#23f5891768b6da6e4cdcc1a8d0cdf1b7b1376b1e" + integrity sha512-m0GufymksDAOarHnUzQ72d0RIAS2faY9xNnwAb7J08qOuDRqgnKamDH5U6af6Tjla4N1Ql2nOGLqQYg88/QjrQ== dependencies: - "@microsoft/applicationinsights-analytics-js" "2.8.5" - "@microsoft/applicationinsights-channel-js" "2.8.5" - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" - "@microsoft/applicationinsights-dependencies-js" "2.8.5" - "@microsoft/applicationinsights-properties-js" "2.8.5" + "@microsoft/applicationinsights-analytics-js" "2.8.7" + "@microsoft/applicationinsights-channel-js" "2.8.7" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" + "@microsoft/applicationinsights-dependencies-js" "2.8.7" + "@microsoft/applicationinsights-properties-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" diff --git a/remote/yarn.lock b/remote/yarn.lock index 97de7a9e5f..f50666a387 100644 --- a/remote/yarn.lock +++ b/remote/yarn.lock @@ -42,79 +42,105 @@ resolved "https://registry.yarnpkg.com/@angular/router/-/router-4.1.3.tgz#ddafd46ae7ccc8b1f74904ffb45f394e44625216" integrity sha512-i+1GMIvfM3OC6XX2kZf+tL36Nc4jhcMNOY6bOrmwlN8APl59I9KqdvywC5HnutkDctb8expiWTIuSKZQAc4AIA== -"@microsoft/applicationinsights-analytics-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-analytics-js/-/applicationinsights-analytics-js-2.8.5.tgz#732fdcf16b0f19c0b522556e8950c07b55ee5027" - integrity sha512-wlAUuTuONFfX6V0bPGH8FkN0DJUvcQD4KMyaw1DYTdVWg1Lsv7OewsfEIQBm8OS9phv7ALzMt0tEY3mNp3dtEQ== +"@microsoft/1ds-core-js@3.2.6", "@microsoft/1ds-core-js@^3.2.2": + version "3.2.6" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-core-js/-/1ds-core-js-3.2.6.tgz#8a77909f89f991aa2f0b4ae8825c75042962e68e" + integrity sha512-6OpppYCEA+rXjcs2w0KnWji3Y6ZDx0wykY7ZL3QF68NS323C45GHSpkDpVRT/lDU6Xbau/PvQm2zTYAzLcperA== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-core-js" "2.8.6" + "@microsoft/applicationinsights-shims" "^2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/1ds-post-js@^3.2.2": + version "3.2.6" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-post-js/-/1ds-post-js-3.2.6.tgz#cdfa74acfc3205c0a5b79925284d6d166aa43901" + integrity sha512-Zdyl3FU6kU/a7TlVVSTBZg+hSECTT65iI99FsjMOx88HudyVyk9M/0lVbA+FVXvGaxzmtBW6Lw0qRHYp4tBMSA== + dependencies: + "@microsoft/1ds-core-js" "3.2.6" + "@microsoft/applicationinsights-shims" "^2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/applicationinsights-analytics-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-analytics-js/-/applicationinsights-analytics-js-2.8.7.tgz#dea44f5bbfb150e12f256b0c45ba6756276df9b6" + integrity sha512-WEsbh3yOzjo1DnH6NyVS/W9uXEWJkb0mgOHTnq3An2nvyT7HPzd56hqRfyJsWR2KAU6hvZ09l7OK85AjkfEqJA== + dependencies: + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-channel-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-2.8.5.tgz#18ae13d02c9646e34fc06f32099141ef1c9c5706" - integrity sha512-jiK1lzgrn8PnRvhwDSUQQWZgGrywuvQOq/HbVFI6jdK9qqV7u+ndwFc4GbsTZQdNoWZLmcY8W1qjos8VX0+Zww== +"@microsoft/applicationinsights-channel-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-2.8.7.tgz#365b29842229ba615badc5f9c3f3ebc5c6ce7ef1" + integrity sha512-Ee2zp6Ij/Btnc9P8bVBXUIa4/X8HH1hNYpL2ALGfhwbWOUxoR+1+0FZpj+/H9vf2PP/8eS5r28MCoksbGUH+8A== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-common@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-common/-/applicationinsights-common-2.8.5.tgz#568eb911c2b26473e304ceda1f9509da3a19a94a" - integrity sha512-oiGyz+4Bg+92RuvZn/1GrSwczhbyGrKyuVi/CExQjPKeqAm3ib2Uvlo0gZEm26AsSq0qPklG7H7n5s3y/krXhw== +"@microsoft/applicationinsights-common@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-common/-/applicationinsights-common-2.8.7.tgz#8ac4d63450e8108ac1ce96750d32e286935388f7" + integrity sha512-bODgacISioOVZIYho1QUADVZh4jjFRQhfVokHbFUgDsJ1NgfpDdNlv+idxH9oriBEuf9odWnOM9jfr3OMcVicA== dependencies: - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-core-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.5.tgz#02adb1b9a7dca83897a9a06a98d1aecdc7526b6f" - integrity sha512-7/EgK6r8GiDVluo84skCMNthgnPa6P7TXiJqHBJbuCf11N4YqkZoGjKs+Fo7h6XIPuYMUHVMNLpBObI7oS7HsQ== +"@microsoft/applicationinsights-core-js@2.8.6": + version "2.8.6" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.6.tgz#4f0f9ad809aacfc96cb882139b69b3625519c51a" + integrity sha512-rL+ceda1Y6HaHBe1vIbNT/f5JGuHiD5Ydq+DoAfu56o13wyJu4sao3QKaabgaIM59pPO+3BMeGsK8NNUGYaT3w== dependencies: "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-dependencies-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-dependencies-js/-/applicationinsights-dependencies-js-2.8.5.tgz#2ba74e212651ef6842da06907713cafbfb2e2848" - integrity sha512-UwOpIxZjv3l8KtgrPd5WEmuvaXty3yTc/S279t7hSjxqOk+LDg0Q2dxap80EuQ5qHoGW32qhVkv+nHaASLoRkg== +"@microsoft/applicationinsights-core-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.7.tgz#3c43517bc6fdf2da59aa90708cefcf936db75488" + integrity sha512-y7USumU+a/kbDeORr/dnDFAxcS5+KOFJSM5oUkS8tBu7CYcX1QAGF4X11gdH2NjrGgHjgxhERhYRa/YhwY1NOQ== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-properties-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-properties-js/-/applicationinsights-properties-js-2.8.5.tgz#1fd98967aaa64a65679fe75264e93307026cbf31" - integrity sha512-qlG17DPns2WPW2eL3gYR9mMe+I4Ro2Sp21VRELuVyRH+htkIoeCXcVWn8UPIGO3YonK3DU8mkN9cEx6ov9Aw+Q== +"@microsoft/applicationinsights-dependencies-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-dependencies-js/-/applicationinsights-dependencies-js-2.8.7.tgz#fe7e52ec0a3f18d66cb6c43af529c05858e0cbde" + integrity sha512-lLRZPCi4Aq+sJThiO6QeFfZguuvZkH8VbceMz3jNF8S1KvPC0174eVcihMPDrjErPXGcquH1fKvJn3PionhZuw== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-shims@2.0.1": +"@microsoft/applicationinsights-properties-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-properties-js/-/applicationinsights-properties-js-2.8.7.tgz#6ec96789c3add4e93a1511bfcd946859622355f3" + integrity sha512-wEa2XJ3PAymFLcOajl7KwhLS2JGFW3SbF2lYsGeP/efIJewTRbB1l+6QgbNWiOCvPd4cpiq2jRdrgKaQpJN37Q== + dependencies: + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" + "@microsoft/applicationinsights-shims" "2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/applicationinsights-shims@2.0.1", "@microsoft/applicationinsights-shims@^2.0.1": version "2.0.1" resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-shims/-/applicationinsights-shims-2.0.1.tgz#5d72fb7aaf4056c4fda54f9d7c93ccf8ca9bcbfd" integrity sha512-G0MXf6R6HndRbDy9BbEj0zrLeuhwt2nsXk2zKtF0TnYo39KgYqhYC2ayIzKPTm2KAE+xzD7rgyLdZnrcRvt9WQ== -"@microsoft/applicationinsights-web@^2.6.4": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-web/-/applicationinsights-web-2.8.5.tgz#e0bae482f258ec7d0c307306e9835fba2e443f2d" - integrity sha512-smgLYbDxiV8qmJOfvSL8FhcqXCXnOMJANcyc6FxL6TVn3ZqepG8r+ekV+b4iYn7vBcAc7XLU+zIEAuFC9IV0kA== +"@microsoft/applicationinsights-web@^2.8.4": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-web/-/applicationinsights-web-2.8.7.tgz#23f5891768b6da6e4cdcc1a8d0cdf1b7b1376b1e" + integrity sha512-m0GufymksDAOarHnUzQ72d0RIAS2faY9xNnwAb7J08qOuDRqgnKamDH5U6af6Tjla4N1Ql2nOGLqQYg88/QjrQ== dependencies: - "@microsoft/applicationinsights-analytics-js" "2.8.5" - "@microsoft/applicationinsights-channel-js" "2.8.5" - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" - "@microsoft/applicationinsights-dependencies-js" "2.8.5" - "@microsoft/applicationinsights-properties-js" "2.8.5" + "@microsoft/applicationinsights-analytics-js" "2.8.7" + "@microsoft/applicationinsights-channel-js" "2.8.7" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" + "@microsoft/applicationinsights-dependencies-js" "2.8.7" + "@microsoft/applicationinsights-properties-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" diff --git a/samples/sample-resource-deployment/package.json b/samples/sample-resource-deployment/package.json index b44d69334b..5ece4aba98 100644 --- a/samples/sample-resource-deployment/package.json +++ b/samples/sample-resource-deployment/package.json @@ -7,7 +7,7 @@ "preview": true, "license": "https://raw.githubusercontent.com/Microsoft/azuredatastudio/main/LICENSE.txt", "icon": "images/sqlserver.png", - "aiKey": "AIF-37eefaf0-8022-4671-a3fb-64752724682e", + "aiKey": "29a207bb14f84905966a8f22524cb730-25407f35-11b6-4d4e-8114-ab9e843cb52f-7380", "engines": { "vscode": "*", "azdata": ">=1.19.0" diff --git a/src/vs/base/common/product.ts b/src/vs/base/common/product.ts index 2c677f929b..c01921a772 100644 --- a/src/vs/base/common/product.ts +++ b/src/vs/base/common/product.ts @@ -103,7 +103,7 @@ export interface IProductConfiguration { readonly enableTelemetry?: boolean; readonly openToWelcomeMainPage?: boolean; readonly aiConfig?: { - readonly asimovKey: string; + readonly ariaKey: string; }; readonly sendASmile?: { diff --git a/src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts b/src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts index 937df37eae..b99d17e8a8 100644 --- a/src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts +++ b/src/vs/code/electron-browser/sharedProcess/sharedProcessMain.ts @@ -63,8 +63,7 @@ import { ICustomEndpointTelemetryService, ITelemetryService } from 'vs/platform/ import { TelemetryAppenderChannel } from 'vs/platform/telemetry/common/telemetryIpc'; import { TelemetryLogAppender } from 'vs/platform/telemetry/common/telemetryLogAppender'; import { TelemetryService } from 'vs/platform/telemetry/common/telemetryService'; -import { supportsTelemetry, ITelemetryAppender, NullAppender, NullTelemetryService, getPiiPathsFromEnvironment } from 'vs/platform/telemetry/common/telemetryUtils'; -import { AppInsightsAppender } from 'vs/platform/telemetry/node/appInsightsAppender'; +import { supportsTelemetry, ITelemetryAppender, NullAppender, NullTelemetryService, isInternalTelemetry, getPiiPathsFromEnvironment } from 'vs/platform/telemetry/common/telemetryUtils'; import { CustomEndpointTelemetryService } from 'vs/platform/telemetry/node/customEndpointTelemetryService'; import { LocalReconnectConstants, TerminalIpcChannels, TerminalSettingId } from 'vs/platform/terminal/common/terminal'; import { ILocalPtyService } from 'vs/platform/terminal/electron-sandbox/terminal'; @@ -91,6 +90,7 @@ import { ipcSharedProcessTunnelChannelName, ISharedProcessTunnelService } from ' import { SharedProcessTunnelService } from 'vs/platform/tunnel/node/sharedProcessTunnelService'; import { ipcSharedProcessWorkerChannelName, ISharedProcessWorkerConfiguration, ISharedProcessWorkerService } from 'vs/platform/sharedProcess/common/sharedProcessWorkerService'; import { SharedProcessWorkerService } from 'vs/platform/sharedProcess/electron-browser/sharedProcessWorkerService'; +import { OneDataSystemAppender } from 'vs/platform/telemetry/node/1dsAppender'; import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity'; import { UriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentityService'; import { isLinux } from 'vs/base/common/platform'; @@ -263,16 +263,15 @@ class SharedProcessMain extends Disposable { // Telemetry let telemetryService: ITelemetryService; const appenders: ITelemetryAppender[] = []; + const internalTelemetry = isInternalTelemetry(productService, configurationService); if (supportsTelemetry(productService, environmentService)) { const logAppender = new TelemetryLogAppender(loggerService, environmentService); appenders.push(logAppender); const { installSourcePath } = environmentService; - - // Application Insights - if (productService.aiConfig && productService.aiConfig.asimovKey) { - const appInsightsAppender = new AppInsightsAppender('adsworkbench', null, productService.aiConfig.asimovKey); // {{SQL CARBON EDIT}} Use our own event prefix - this._register(toDisposable(() => appInsightsAppender.flush())); // Ensure the AI appender is disposed so that it flushes remaining data - appenders.push(appInsightsAppender); + if (productService.aiConfig?.ariaKey) { + const collectorAppender = new OneDataSystemAppender(internalTelemetry, 'adsworkbench', null, productService.aiConfig.ariaKey); // {{SQL CARBON EDIT}} Use our own event prefix + this._register(toDisposable(() => collectorAppender.flush())); // Ensure the 1DS appender is disposed so that it flushes remaining data + appenders.push(collectorAppender); } telemetryService = new TelemetryService({ diff --git a/src/vs/code/node/cliProcessMain.ts b/src/vs/code/node/cliProcessMain.ts index 51d7133b48..57634bf038 100644 --- a/src/vs/code/node/cliProcessMain.ts +++ b/src/vs/code/node/cliProcessMain.ts @@ -46,8 +46,8 @@ import { RequestService } from 'vs/platform/request/node/requestService'; import { resolveCommonProperties } from 'vs/platform/telemetry/common/commonProperties'; import { ITelemetryService, machineIdKey } from 'vs/platform/telemetry/common/telemetry'; import { ITelemetryServiceConfig, TelemetryService } from 'vs/platform/telemetry/common/telemetryService'; -import { supportsTelemetry, NullTelemetryService, getPiiPathsFromEnvironment } from 'vs/platform/telemetry/common/telemetryUtils'; -import { AppInsightsAppender } from 'vs/platform/telemetry/node/appInsightsAppender'; +import { supportsTelemetry, NullTelemetryService, isInternalTelemetry, getPiiPathsFromEnvironment } from 'vs/platform/telemetry/common/telemetryUtils'; +import { OneDataSystemAppender } from 'vs/platform/telemetry/node/1dsAppender'; import { buildTelemetryMessage } from 'vs/platform/telemetry/node/telemetry'; import { IUriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentity'; import { UriIdentityService } from 'vs/platform/uriIdentity/common/uriIdentityService'; @@ -96,7 +96,7 @@ class CliMain extends Disposable { }); } - private async initServices(): Promise<[IInstantiationService, AppInsightsAppender[]]> { + private async initServices(): Promise<[IInstantiationService, OneDataSystemAppender[]]> { const services = new ServiceCollection(); // Product @@ -154,10 +154,11 @@ class CliMain extends Disposable { services.set(ILocalizationsService, new SyncDescriptor(LocalizationsService)); // Telemetry - const appenders: AppInsightsAppender[] = []; + const appenders: OneDataSystemAppender[] = []; + const isInternal = isInternalTelemetry(productService, configurationService); if (supportsTelemetry(productService, environmentService)) { - if (productService.aiConfig && productService.aiConfig.asimovKey) { - appenders.push(new AppInsightsAppender('adsworkbench', null, productService.aiConfig.asimovKey)); // {{SQL CARBON EDIT}} Use our own event prefix + if (productService.aiConfig && productService.aiConfig.ariaKey) { + appenders.push(new OneDataSystemAppender(isInternal, 'adsworkbench', null, productService.aiConfig.ariaKey)); // {{SQL CARBON EDIT}} Use our own event prefix } const { installSourcePath } = environmentService; diff --git a/src/vs/platform/telemetry/browser/1dsAppender.ts b/src/vs/platform/telemetry/browser/1dsAppender.ts new file mode 100644 index 0000000000..dffade864d --- /dev/null +++ b/src/vs/platform/telemetry/browser/1dsAppender.ts @@ -0,0 +1,24 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the Source EULA. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import { AbstractOneDataSystemAppender, IAppInsightsCore } from 'vs/platform/telemetry/common/1dsAppender'; + + +export class OneDataSystemWebAppender extends AbstractOneDataSystemAppender { + constructor( + isInternalTelemetry: boolean, + eventPrefix: string, + defaultData: { [key: string]: any } | null, + iKeyOrClientFactory: string | (() => IAppInsightsCore), // allow factory function for testing + ) { + super(isInternalTelemetry, eventPrefix, defaultData, iKeyOrClientFactory); + + // If we cannot fetch the endpoint it means it is down and we should not send any telemetry. + // This is most likely due to ad blockers + fetch(this.endPointUrl, { method: 'POST' }).catch(err => { + this._aiCoreOrKey = undefined; + }); + } +} diff --git a/src/vs/platform/telemetry/common/1dsAppender.ts b/src/vs/platform/telemetry/common/1dsAppender.ts new file mode 100644 index 0000000000..e04e1ef341 --- /dev/null +++ b/src/vs/platform/telemetry/common/1dsAppender.ts @@ -0,0 +1,148 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the Source EULA. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import type { IExtendedConfiguration, IExtendedTelemetryItem, ITelemetryItem, ITelemetryUnloadState } from '@microsoft/1ds-core-js'; +import type { IChannelConfiguration, IXHROverride, PostChannel } from '@microsoft/1ds-post-js'; +import { onUnexpectedError } from 'vs/base/common/errors'; +import { mixin } from 'vs/base/common/objects'; +import { ITelemetryAppender, validateTelemetryData } from 'vs/platform/telemetry/common/telemetryUtils'; + +// Interface type which is a subset of @microsoft/1ds-core-js AppInsightsCore. +// Allows us to more easily build mock objects for testing as the interface is quite large and we only need a few properties. +export interface IAppInsightsCore { + pluginVersionString: string; + track(item: ITelemetryItem | IExtendedTelemetryItem): void; + unload(isAsync: boolean, unloadComplete: (unloadState: ITelemetryUnloadState) => void): void; +} + +const endpointUrl = 'https://mobile.events.data.microsoft.com/OneCollector/1.0'; + +async function getClient(instrumentationKey: string, addInternalFlag?: boolean, xhrOverride?: IXHROverride): Promise { + const oneDs = await import('@microsoft/1ds-core-js'); + const postPlugin = await import('@microsoft/1ds-post-js'); + const appInsightsCore = new oneDs.AppInsightsCore(); + const collectorChannelPlugin: PostChannel = new postPlugin.PostChannel(); + // Configure the app insights core to send to collector++ and disable logging of debug info + const coreConfig: IExtendedConfiguration = { + instrumentationKey, + endpointUrl, + loggingLevelTelemetry: 0, + loggingLevelConsole: 0, + disableCookiesUsage: true, + disableDbgExt: true, + disableInstrumentationKeyValidation: true, + channels: [[ + collectorChannelPlugin + ]] + }; + + if (xhrOverride) { + coreConfig.extensionConfig = {}; + // Configure the channel to use a XHR Request override since it's not available in node + const channelConfig: IChannelConfiguration = { + alwaysUseXhrOverride: true, + httpXHROverride: xhrOverride + }; + coreConfig.extensionConfig[collectorChannelPlugin.identifier] = channelConfig; + } + + appInsightsCore.initialize(coreConfig, []); + + appInsightsCore.addTelemetryInitializer((envelope) => { + if (addInternalFlag) { + envelope['ext'] = envelope['ext'] ?? {}; + envelope['ext']['utc'] = envelope['ext']['utc'] ?? {}; + // Sets it to be internal only based on Windows UTC flagging + envelope['ext']['utc']['flags'] = 0x0000811ECD; + } + }); + + return appInsightsCore; +} + +// TODO @lramos15 maybe make more in line with src/vs/platform/telemetry/browser/appInsightsAppender.ts with caching support +export abstract class AbstractOneDataSystemAppender implements ITelemetryAppender { + + protected _aiCoreOrKey: IAppInsightsCore | string | undefined; + private _asyncAiCore: Promise | null; + protected readonly endPointUrl = endpointUrl; + + constructor( + private readonly _isInternalTelemetry: boolean, + private _eventPrefix: string, + private _defaultData: { [key: string]: any } | null, + iKeyOrClientFactory: string | (() => IAppInsightsCore), // allow factory function for testing + private _xhrOverride?: IXHROverride + ) { + if (!this._defaultData) { + this._defaultData = {}; + } + + if (typeof iKeyOrClientFactory === 'function') { + this._aiCoreOrKey = iKeyOrClientFactory(); + } else { + this._aiCoreOrKey = iKeyOrClientFactory; + } + this._asyncAiCore = null; + } + + private _withAIClient(callback: (aiCore: IAppInsightsCore) => void): void { + if (!this._aiCoreOrKey) { + return; + } + + if (typeof this._aiCoreOrKey !== 'string') { + callback(this._aiCoreOrKey); + return; + } + + if (!this._asyncAiCore) { + this._asyncAiCore = getClient(this._aiCoreOrKey, this._isInternalTelemetry, this._xhrOverride); + } + + this._asyncAiCore.then( + (aiClient) => { + callback(aiClient); + }, + (err) => { + onUnexpectedError(err); + console.error(err); + } + ); + } + + log(eventName: string, data?: any): void { + if (!this._aiCoreOrKey) { + return; + } + data = mixin(data, this._defaultData); + data = validateTelemetryData(data); + const name = this._eventPrefix + '/' + eventName; + + try { + this._withAIClient((aiClient) => { + aiClient.pluginVersionString = data?.properties.version ?? 'Unknown'; + aiClient.track({ + name, + baseData: { name, properties: data?.properties, measurements: data?.measurements } + }); + }); + } catch { } + } + + flush(): Promise { + if (this._aiCoreOrKey) { + return new Promise(resolve => { + this._withAIClient((aiClient) => { + aiClient.unload(true, () => { + this._aiCoreOrKey = undefined; + resolve(undefined); + }); + }); + }); + } + return Promise.resolve(undefined); + } +} diff --git a/src/vs/platform/telemetry/common/remoteTelemetryChannel.ts b/src/vs/platform/telemetry/common/remoteTelemetryChannel.ts index c1ab07be06..aabd0bb494 100644 --- a/src/vs/platform/telemetry/common/remoteTelemetryChannel.ts +++ b/src/vs/platform/telemetry/common/remoteTelemetryChannel.ts @@ -45,6 +45,10 @@ export class ServerTelemetryChannel extends Disposable implements IServerChannel return Promise.resolve(); } + + case 'ping': { + return; + } } // Command we cannot handle so we throw an error throw new Error(`IPC Command ${command} not found`); diff --git a/src/vs/platform/telemetry/common/serverTelemetryService.ts b/src/vs/platform/telemetry/common/serverTelemetryService.ts index 01adae94d2..699c07b817 100644 --- a/src/vs/platform/telemetry/common/serverTelemetryService.ts +++ b/src/vs/platform/telemetry/common/serverTelemetryService.ts @@ -6,7 +6,7 @@ import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { refineServiceDecorator } from 'vs/platform/instantiation/common/instantiation'; import { IProductService } from 'vs/platform/product/common/productService'; -import { ClassifiedEvent, GDPRClassification, StrictPropertyCheck } from 'vs/platform/telemetry/common/gdprTypings'; +import { ClassifiedEvent, IGDPRProperty, StrictPropertyCheck } from 'vs/platform/telemetry/common/gdprTypings'; import { ITelemetryData, ITelemetryService, TelemetryLevel } from 'vs/platform/telemetry/common/telemetry'; import { ITelemetryServiceConfig, TelemetryService } from 'vs/platform/telemetry/common/telemetryService'; import { NullTelemetryServiceShape } from 'vs/platform/telemetry/common/telemetryUtils'; @@ -37,7 +37,7 @@ export class ServerTelemetryService extends TelemetryService implements IServerT return super.publicLog(eventName, data, anonymizeFilePaths); } - override publicLog2 = never, T extends GDPRClassification = never>(eventName: string, data?: StrictPropertyCheck, anonymizeFilePaths?: boolean): Promise { + override publicLog2 = never, T extends IGDPRProperty = never>(eventName: string, data?: StrictPropertyCheck, anonymizeFilePaths?: boolean): Promise { return this.publicLog(eventName, data as ITelemetryData | undefined, anonymizeFilePaths); } @@ -48,7 +48,7 @@ export class ServerTelemetryService extends TelemetryService implements IServerT return super.publicLogError(errorEventName, data); } - override publicLogError2 = never, T extends GDPRClassification = never>(eventName: string, data?: StrictPropertyCheck): Promise { + override publicLogError2 = never, T extends IGDPRProperty = never>(eventName: string, data?: StrictPropertyCheck): Promise { return this.publicLogError(eventName, data as ITelemetryData | undefined); } diff --git a/src/vs/platform/telemetry/common/telemetryUtils.ts b/src/vs/platform/telemetry/common/telemetryUtils.ts index 1c22ebdcb0..0675a3e577 100644 --- a/src/vs/platform/telemetry/common/telemetryUtils.ts +++ b/src/vs/platform/telemetry/common/telemetryUtils.ts @@ -11,6 +11,7 @@ import { URI } from 'vs/base/common/uri'; import { ConfigurationTarget, ConfigurationTargetToString, IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { IEnvironmentService } from 'vs/platform/environment/common/environment'; import { IProductService } from 'vs/platform/product/common/productService'; +import { verifyMicrosoftInternalDomain } from 'vs/platform/telemetry/common/commonProperties'; import { ClassifiedEvent, GDPRClassification, StrictPropertyCheck } from 'vs/platform/telemetry/common/gdprTypings'; import { ICustomEndpointTelemetryService, ITelemetryData, ITelemetryEndpoint, ITelemetryInfo, ITelemetryService, TelemetryConfiguration, TelemetryLevel, TELEMETRY_OLD_SETTING_ID, TELEMETRY_SETTING_ID } from 'vs/platform/telemetry/common/telemetry'; @@ -250,6 +251,18 @@ function flatKeys(result: string[], prefix: string, value: { [key: string]: any } } +/** + * Whether or not this is an internal user + * @param productService The product service + * @param configService The config servivce + * @returns true if internal, false otherwise + */ +export function isInternalTelemetry(productService: IProductService, configService: IConfigurationService) { + const msftInternalDomains = productService.msftInternalDomains || []; + const internalTesting = configService.getValue('telemetry.internalTesting'); + return verifyMicrosoftInternalDomain(msftInternalDomains) || internalTesting; +} + interface IPathEnvironment { appRoot: string; extensionsPath: string; diff --git a/src/vs/platform/telemetry/node/1dsAppender.ts b/src/vs/platform/telemetry/node/1dsAppender.ts new file mode 100644 index 0000000000..bf83becefe --- /dev/null +++ b/src/vs/platform/telemetry/node/1dsAppender.ts @@ -0,0 +1,51 @@ +/*--------------------------------------------------------------------------------------------- + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the Source EULA. See License.txt in the project root for license information. + *--------------------------------------------------------------------------------------------*/ + +import type { IPayloadData, IXHROverride } from '@microsoft/1ds-post-js'; +import * as https from 'https'; +import { AbstractOneDataSystemAppender, IAppInsightsCore } from 'vs/platform/telemetry/common/1dsAppender'; + + +export class OneDataSystemAppender extends AbstractOneDataSystemAppender { + + constructor( + isInternalTelemetry: boolean, + eventPrefix: string, + defaultData: { [key: string]: any } | null, + iKeyOrClientFactory: string | (() => IAppInsightsCore), // allow factory function for testing + ) { + // Override the way events get sent since node doesn't have XHTMLRequest + const customHttpXHROverride: IXHROverride = { + sendPOST: (payload: IPayloadData, oncomplete) => { + const options = { + method: 'POST', + headers: { + ...payload.headers, + 'Content-Type': 'application/json', + 'Content-Length': Buffer.byteLength(payload.data) + } + }; + try { + const req = https.request(payload.urlString, options, res => { + res.on('data', function (responseData) { + oncomplete(res.statusCode ?? 200, res.headers as Record, responseData.toString()); + }); + // On response with error send status of 0 and a blank response to oncomplete so we can retry events + res.on('error', function (err) { + oncomplete(0, {}); + }); + }); + req.write(payload.data); + req.end(); + } catch { + // If it errors out, send status of 0 and a blank response to oncomplete so we can retry events + oncomplete(0, {}); + } + } + }; + + super(isInternalTelemetry, eventPrefix, defaultData, iKeyOrClientFactory, customHttpXHROverride); + } +} diff --git a/src/vs/platform/telemetry/node/appInsightsAppender.ts b/src/vs/platform/telemetry/node/appInsightsAppender.ts deleted file mode 100644 index 393b826e5e..0000000000 --- a/src/vs/platform/telemetry/node/appInsightsAppender.ts +++ /dev/null @@ -1,121 +0,0 @@ -/*--------------------------------------------------------------------------------------------- - * Copyright (c) Microsoft Corporation. All rights reserved. - * Licensed under the Source EULA. See License.txt in the project root for license information. - *--------------------------------------------------------------------------------------------*/ - -import type { TelemetryClient } from 'applicationinsights'; -import { onUnexpectedError } from 'vs/base/common/errors'; -import { mixin } from 'vs/base/common/objects'; -import { ITelemetryAppender, validateTelemetryData } from 'vs/platform/telemetry/common/telemetryUtils'; - -async function getClient(aiKey: string): Promise { - const appInsights = await import('applicationinsights'); - let client: TelemetryClient; - if (appInsights.defaultClient) { - client = new appInsights.TelemetryClient(aiKey); - client.channel.setUseDiskRetryCaching(true); - } else { - appInsights.setup(aiKey) - .setAutoCollectRequests(false) - .setAutoCollectPerformance(false) - .setAutoCollectExceptions(false) - .setAutoCollectDependencies(false) - .setAutoDependencyCorrelation(false) - .setAutoCollectConsole(false) - .setInternalLogging(false, false) - .setUseDiskRetryCaching(true) - .start(); - client = appInsights.defaultClient; - } - - if (aiKey.indexOf('AIF-') === 0) { - client.config.endpointUrl = 'https://mobile.events.data.microsoft.com/collect/v1'; - } - return client; -} - - -export class AppInsightsAppender implements ITelemetryAppender { - - private _aiClient: string | TelemetryClient | undefined; - private _asyncAIClient: Promise | null; - - constructor( - private _eventPrefix: string, - private _defaultData: { [key: string]: any } | null, - aiKeyOrClientFactory: string | (() => TelemetryClient), // allow factory function for testing - ) { - if (!this._defaultData) { - this._defaultData = Object.create(null); - } - - if (typeof aiKeyOrClientFactory === 'function') { - this._aiClient = aiKeyOrClientFactory(); - } else { - this._aiClient = aiKeyOrClientFactory; - } - this._asyncAIClient = null; - } - - private _withAIClient(callback: (aiClient: TelemetryClient) => void): void { - if (!this._aiClient) { - return; - } - - if (typeof this._aiClient !== 'string') { - callback(this._aiClient); - return; - } - - if (!this._asyncAIClient) { - this._asyncAIClient = getClient(this._aiClient); - } - - this._asyncAIClient.then( - (aiClient) => { - callback(aiClient); - }, - (err) => { - onUnexpectedError(err); - console.error(err); - } - ); - } - - log(eventName: string, data?: any): void { - if (!this._aiClient) { - return; - } - data = mixin(data, this._defaultData); - data = validateTelemetryData(data); - - // Attemps to suppress https://github.com/microsoft/vscode/issues/140624 - try { - this._withAIClient((aiClient) => aiClient.trackEvent({ - name: this._eventPrefix + '/' + eventName, - properties: data.properties, - measurements: data.measurements - })); - } catch { } - } - - flush(): Promise { - if (this._aiClient) { - return new Promise(resolve => { - this._withAIClient((aiClient) => { - // Attempts to suppress https://github.com/microsoft/vscode/issues/140624 - try { - aiClient.flush({ - callback: () => { - // all data flushed - this._aiClient = undefined; - resolve(undefined); - } - }); - } catch { } - }); - }); - } - return Promise.resolve(undefined); - } -} diff --git a/src/vs/platform/telemetry/test/electron-browser/appInsightsAppender.test.ts b/src/vs/platform/telemetry/test/browser/1dsAppender.test.ts similarity index 77% rename from src/vs/platform/telemetry/test/electron-browser/appInsightsAppender.test.ts rename to src/vs/platform/telemetry/test/browser/1dsAppender.test.ts index 9fdea87bf1..a64c28c6c9 100644 --- a/src/vs/platform/telemetry/test/electron-browser/appInsightsAppender.test.ts +++ b/src/vs/platform/telemetry/test/browser/1dsAppender.test.ts @@ -2,39 +2,35 @@ * Copyright (c) Microsoft Corporation. All rights reserved. * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import { Contracts, TelemetryClient } from 'applicationinsights'; +import { ITelemetryItem, ITelemetryUnloadState } from '@microsoft/1ds-core-js'; import * as assert from 'assert'; -import { AppInsightsAppender } from 'vs/platform/telemetry/node/appInsightsAppender'; +import { OneDataSystemWebAppender } from 'vs/platform/telemetry/browser/1dsAppender'; +import { IAppInsightsCore } from 'vs/platform/telemetry/common/1dsAppender'; -class AppInsightsMock extends TelemetryClient { - public override config: any; - public override channel: any; - public events: Contracts.EventTelemetry[] = []; +class AppInsightsCoreMock implements IAppInsightsCore { + pluginVersionString: string = 'Test Runner'; + public events: any[] = []; public IsTrackingPageView: boolean = false; public exceptions: any[] = []; - constructor() { - super('testKey'); + public track(event: ITelemetryItem) { + this.events.push(event.baseData); } - public override trackEvent(event: any) { - this.events.push(event); - } - - public override flush(options: any): void { - // called on dispose + public unload(isAsync: boolean, unloadComplete: (unloadState: ITelemetryUnloadState) => void): void { + // No-op } } suite('AIAdapter', () => { - let appInsightsMock: AppInsightsMock; - let adapter: AppInsightsAppender; - let prefix = 'prefix'; + let appInsightsMock: AppInsightsCoreMock; + let adapter: OneDataSystemWebAppender; + const prefix = 'prefix'; setup(() => { - appInsightsMock = new AppInsightsMock(); - adapter = new AppInsightsAppender(prefix, undefined!, () => appInsightsMock); + appInsightsMock = new AppInsightsCoreMock(); + adapter = new OneDataSystemWebAppender(false, prefix, undefined!, () => appInsightsMock); }); teardown(() => { @@ -49,11 +45,11 @@ suite('AIAdapter', () => { }); test('addional data', () => { - adapter = new AppInsightsAppender(prefix, { first: '1st', second: 2, third: true }, () => appInsightsMock); + adapter = new OneDataSystemWebAppender(false, prefix, { first: '1st', second: 2, third: true }, () => appInsightsMock); adapter.log('testEvent'); assert.strictEqual(appInsightsMock.events.length, 1); - let [first] = appInsightsMock.events; + const [first] = appInsightsMock.events; assert.strictEqual(first.name, `${prefix}/testEvent`); assert.strictEqual(first.properties!['first'], '1st'); assert.strictEqual(first.measurements!['second'], 2); @@ -73,21 +69,21 @@ suite('AIAdapter', () => { } assert(reallyLongPropertyValue.length > 8192); - let data = Object.create(null); + const data = Object.create(null); data[reallyLongPropertyName] = '1234'; data['reallyLongPropertyValue'] = reallyLongPropertyValue; adapter.log('testEvent', data); assert.strictEqual(appInsightsMock.events.length, 1); - for (let prop in appInsightsMock.events[0].properties!) { + for (const prop in appInsightsMock.events[0].properties!) { assert(prop.length < 150); assert(appInsightsMock.events[0].properties![prop].length < 8192); } }); test('Different data types', () => { - let date = new Date(); + const date = new Date(); adapter.log('testEvent', { favoriteDate: date, likeRed: false, likeBlue: true, favoriteNumber: 1, favoriteColor: 'blue', favoriteCars: ['bmw', 'audi', 'ford'] }); assert.strictEqual(appInsightsMock.events.length, 1); diff --git a/src/vs/server/node/serverServices.ts b/src/vs/server/node/serverServices.ts index dbd72b34d8..51689c8f24 100644 --- a/src/vs/server/node/serverServices.ts +++ b/src/vs/server/node/serverServices.ts @@ -49,8 +49,7 @@ import { RequestService } from 'vs/platform/request/node/requestService'; import { resolveCommonProperties } from 'vs/platform/telemetry/common/commonProperties'; import { ITelemetryService, TelemetryLevel } from 'vs/platform/telemetry/common/telemetry'; import { ITelemetryServiceConfig } from 'vs/platform/telemetry/common/telemetryService'; -import { getPiiPathsFromEnvironment, ITelemetryAppender, NullAppender, supportsTelemetry } from 'vs/platform/telemetry/common/telemetryUtils'; -import { AppInsightsAppender } from 'vs/platform/telemetry/node/appInsightsAppender'; +import { getPiiPathsFromEnvironment, isInternalTelemetry, ITelemetryAppender, NullAppender, supportsTelemetry } from 'vs/platform/telemetry/common/telemetryUtils'; import ErrorTelemetry from 'vs/platform/telemetry/node/errorTelemetry'; import { IPtyService, TerminalSettingId } from 'vs/platform/terminal/common/terminal'; import { PtyHostService } from 'vs/platform/terminal/node/ptyHostService'; @@ -70,8 +69,9 @@ import { REMOTE_FILE_SYSTEM_CHANNEL_NAME } from 'vs/workbench/services/remote/co import { ExtensionHostStatusService, IExtensionHostStatusService } from 'vs/server/node/extensionHostStatusService'; import { IExtensionsScannerService } from 'vs/platform/extensionManagement/common/extensionsScannerService'; import { ExtensionsScannerService } from 'vs/server/node/extensionsScannerService'; +import { OneDataSystemAppender } from 'vs/platform/telemetry/node/1dsAppender'; -const eventPrefix = 'monacoworkbench'; +const eventPrefix = 'adsworkbench'; // {{SQL CARBON EDIT}} Use our own event prefix export async function setupServerServices(connectionToken: ServerConnectionToken, args: ServerParsedArgs, REMOTE_DATA_FOLDER: string, disposables: DisposableStore) { const services = new ServiceCollection(); @@ -119,16 +119,17 @@ export async function setupServerServices(connectionToken: ServerConnectionToken // Request services.set(IRequestService, new SyncDescriptor(RequestService)); - let appInsightsAppender: ITelemetryAppender = NullAppender; + let oneDsAppender: ITelemetryAppender = NullAppender; const machineId = await getMachineId(); + const isInternal = isInternalTelemetry(productService, configurationService); if (supportsTelemetry(productService, environmentService)) { - if (productService.aiConfig && productService.aiConfig.asimovKey) { - appInsightsAppender = new AppInsightsAppender(eventPrefix, null, productService.aiConfig.asimovKey); - disposables.add(toDisposable(() => appInsightsAppender!.flush())); // Ensure the AI appender is disposed so that it flushes remaining data + if (productService.aiConfig && productService.aiConfig.ariaKey) { + oneDsAppender = new OneDataSystemAppender(isInternal, eventPrefix, null, productService.aiConfig.ariaKey); + disposables.add(toDisposable(() => oneDsAppender?.flush())); // Ensure the AI appender is disposed so that it flushes remaining data } const config: ITelemetryServiceConfig = { - appenders: [appInsightsAppender], + appenders: [oneDsAppender], commonProperties: resolveCommonProperties(fileService, release(), hostname(), process.arch, productService.commit, productService.version + '-remote', machineId, productService.msftInternalDomains, environmentService.installSourcePath, 'remoteAgent'), piiPaths: getPiiPathsFromEnvironment(environmentService) }; @@ -183,7 +184,7 @@ export async function setupServerServices(connectionToken: ServerConnectionToken const remoteExtensionEnvironmentChannel = new RemoteAgentEnvironmentChannel(connectionToken, environmentService, extensionManagementCLIService, logService, extensionHostStatusService, extensionsScannerService); socketServer.registerChannel('remoteextensionsenvironment', remoteExtensionEnvironmentChannel); - const telemetryChannel = new ServerTelemetryChannel(accessor.get(IServerTelemetryService), appInsightsAppender); + const telemetryChannel = new ServerTelemetryChannel(accessor.get(IServerTelemetryService), oneDsAppender); socketServer.registerChannel('telemetry', telemetryChannel); socketServer.registerChannel(REMOTE_TERMINAL_CHANNEL_NAME, new RemoteTerminalChannel(environmentService, logService, ptyService, productService, extensionManagementService)); diff --git a/src/vs/workbench/contrib/debug/node/telemetryApp.ts b/src/vs/workbench/contrib/debug/node/telemetryApp.ts index 72fc79c80b..f601f59389 100644 --- a/src/vs/workbench/contrib/debug/node/telemetryApp.ts +++ b/src/vs/workbench/contrib/debug/node/telemetryApp.ts @@ -4,12 +4,13 @@ *--------------------------------------------------------------------------------------------*/ import { Server } from 'vs/base/parts/ipc/node/ipc.cp'; -import { AppInsightsAppender } from 'vs/platform/telemetry/node/appInsightsAppender'; import { TelemetryAppenderChannel } from 'vs/platform/telemetry/common/telemetryIpc'; +import { OneDataSystemAppender } from 'vs/platform/telemetry/node/1dsAppender'; -const appender = new AppInsightsAppender(process.argv[2], JSON.parse(process.argv[3]), process.argv[4]); +const appender = new OneDataSystemAppender(false, process.argv[2], JSON.parse(process.argv[3]), process.argv[4]); process.once('exit', () => appender.flush()); const channel = new TelemetryAppenderChannel([appender]); const server = new Server('telemetry'); server.registerChannel('telemetryAppender', channel); + diff --git a/src/vs/workbench/services/telemetry/browser/telemetryService.ts b/src/vs/workbench/services/telemetry/browser/telemetryService.ts index 1d70f15d34..1af4826e79 100644 --- a/src/vs/workbench/services/telemetry/browser/telemetryService.ts +++ b/src/vs/workbench/services/telemetry/browser/telemetryService.ts @@ -3,7 +3,6 @@ * Licensed under the Source EULA. See License.txt in the project root for license information. *--------------------------------------------------------------------------------------------*/ -import type { ApplicationInsights } from '@microsoft/applicationinsights-web'; import { Disposable } from 'vs/base/common/lifecycle'; import { IObservableValue } from 'vs/base/common/observableValue'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; @@ -11,103 +10,21 @@ import { registerSingleton } from 'vs/platform/instantiation/common/extensions'; import { ILoggerService } from 'vs/platform/log/common/log'; import { IProductService } from 'vs/platform/product/common/productService'; import { IStorageService } from 'vs/platform/storage/common/storage'; +import { OneDataSystemWebAppender } from 'vs/platform/telemetry/browser/1dsAppender'; import { ClassifiedEvent, GDPRClassification, StrictPropertyCheck } from 'vs/platform/telemetry/common/gdprTypings'; -import { ITelemetryData, ITelemetryInfo, ITelemetryService, TelemetryLevel } from 'vs/platform/telemetry/common/telemetry'; +import { ITelemetryData, ITelemetryInfo, ITelemetryService, TelemetryLevel, TELEMETRY_SETTING_ID } from 'vs/platform/telemetry/common/telemetry'; import { TelemetryLogAppender } from 'vs/platform/telemetry/common/telemetryLogAppender'; import { ITelemetryServiceConfig, TelemetryService as BaseTelemetryService } from 'vs/platform/telemetry/common/telemetryService'; -import { ITelemetryAppender, NullTelemetryService, supportsTelemetry, validateTelemetryData } from 'vs/platform/telemetry/common/telemetryUtils'; +import { getTelemetryLevel, isInternalTelemetry, ITelemetryAppender, NullTelemetryService, supportsTelemetry } from 'vs/platform/telemetry/common/telemetryUtils'; import { IBrowserWorkbenchEnvironmentService } from 'vs/workbench/services/environment/browser/environmentService'; import { IRemoteAgentService } from 'vs/workbench/services/remote/common/remoteAgentService'; import { resolveWorkbenchCommonProperties } from 'vs/workbench/services/telemetry/browser/workbenchCommonProperties'; -class WebAppInsightsAppender implements ITelemetryAppender { - private _aiClient: ApplicationInsights | undefined; - private _aiClientLoaded = false; - private _telemetryCache: { eventName: string; data: any }[] = []; - - constructor(private _eventPrefix: string, aiKey: string) { - const endpointUrl = 'https://mobile.events.data.microsoft.com/collect/v1'; - import('@microsoft/applicationinsights-web').then(aiLibrary => { - this._aiClient = new aiLibrary.ApplicationInsights({ - config: { - instrumentationKey: aiKey, - endpointUrl, - disableAjaxTracking: true, - disableExceptionTracking: true, - disableFetchTracking: true, - disableCorrelationHeaders: true, - disableCookiesUsage: true, - autoTrackPageVisitTime: false, - emitLineDelimitedJson: true, - }, - }); - this._aiClient.loadAppInsights(); - // Client is loaded we can now flush the cached events - this._aiClientLoaded = true; - this._telemetryCache.forEach(cacheEntry => this.log(cacheEntry.eventName, cacheEntry.data)); - this._telemetryCache = []; - - // If we cannot access the endpoint this most likely means it's being blocked - // and we should not attempt to send any telemetry. - fetch(endpointUrl).catch(() => (this._aiClient = undefined)); - }).catch(err => { - console.error(err); - }); - } - - /** - * Logs a telemetry event with eventName and data - * @param eventName The event name - * @param data The data associated with the events - */ - public log(eventName: string, data: any): void { - if (!this._aiClient && this._aiClientLoaded) { - return; - } else if (!this._aiClient && !this._aiClientLoaded) { - this._telemetryCache.push({ eventName, data }); - return; - } - - data = validateTelemetryData(data); - - // Web does not expect properties and measurements so we must - // spread them out. This is different from desktop which expects them - data = { ...data.properties, ...data.measurements }; - - // undefined assertion is ok since above two if statements cover both cases - this._aiClient!.trackEvent({ name: this._eventPrefix + '/' + eventName }, data); - } - - /** - * Flushes all the telemetry data still in the buffer - */ - public flush(): Promise { - if (this._aiClient) { - this._aiClient.flush(); - this._aiClient = undefined; - } - return Promise.resolve(undefined); - } -} - -class WebTelemetryAppender implements ITelemetryAppender { - - constructor(private _appender: ITelemetryAppender) { } - - log(eventName: string, data: any): void { - this._appender.log(eventName, data); - } - - flush(): Promise { - return this._appender.flush(); - } -} - export class TelemetryService extends Disposable implements ITelemetryService { declare readonly _serviceBrand: undefined; - private impl: ITelemetryService; + private impl: ITelemetryService = NullTelemetryService; public readonly sendErrorTelemetry = true; constructor( @@ -120,19 +37,46 @@ export class TelemetryService extends Disposable implements ITelemetryService { ) { super(); - if (supportsTelemetry(productService, environmentService) && productService.aiConfig?.asimovKey) { + this.impl = this.initializeService(environmentService, loggerService, configurationService, storageService, productService, remoteAgentService); + + // When the level changes it could change from off to on and we want to make sure telemetry is properly intialized + this._register(configurationService.onDidChangeConfiguration(e => { + if (e.affectsConfiguration(TELEMETRY_SETTING_ID)) { + this.impl = this.initializeService(environmentService, loggerService, configurationService, storageService, productService, remoteAgentService); + } + })); + } + + /** + * Initializes the telemetry service to be a full fledged service. + * This is only done once and only when telemetry is enabled as this will also ping the endpoint to + * ensure its not adblocked and we can send telemetry + */ + private initializeService( + environmentService: IBrowserWorkbenchEnvironmentService, + loggerService: ILoggerService, + configurationService: IConfigurationService, + storageService: IStorageService, + productService: IProductService, + remoteAgentService: IRemoteAgentService + ) { + const telemetrySupported = supportsTelemetry(productService, environmentService) && productService.aiConfig?.ariaKey; + if (telemetrySupported && getTelemetryLevel(configurationService) !== TelemetryLevel.NONE && this.impl === NullTelemetryService) { // If remote server is present send telemetry through that, else use the client side appender - const telemetryProvider: ITelemetryAppender = remoteAgentService.getConnection() !== null ? { log: remoteAgentService.logTelemetry.bind(remoteAgentService), flush: remoteAgentService.flushTelemetry.bind(remoteAgentService) } : new WebAppInsightsAppender('monacoworkbench', productService.aiConfig?.asimovKey); + const appenders = []; + const isInternal = isInternalTelemetry(productService, configurationService); + const telemetryProvider: ITelemetryAppender = remoteAgentService.getConnection() !== null ? { log: remoteAgentService.logTelemetry.bind(remoteAgentService), flush: remoteAgentService.flushTelemetry.bind(remoteAgentService) } : new OneDataSystemWebAppender(isInternal, 'adsworkbench', null, productService.aiConfig?.ariaKey); // {{SQL CARBON EDIT}} Use our own event prefix + appenders.push(telemetryProvider); + appenders.push(new TelemetryLogAppender(loggerService, environmentService)); const config: ITelemetryServiceConfig = { - appenders: [new WebTelemetryAppender(telemetryProvider), new TelemetryLogAppender(loggerService, environmentService)], + appenders, commonProperties: resolveWorkbenchCommonProperties(storageService, productService.commit, productService.version, environmentService.remoteAuthority, productService.embedderIdentifier, productService.removeTelemetryMachineId, environmentService.options && environmentService.options.resolveCommonTelemetryProperties), sendErrorTelemetry: this.sendErrorTelemetry, }; - this.impl = this._register(new BaseTelemetryService(config, configurationService, productService)); - } else { - this.impl = NullTelemetryService; + return this._register(new BaseTelemetryService(config, configurationService, productService)); } + return this.impl; } setExperimentProperty(name: string, value: string): void { @@ -164,4 +108,5 @@ export class TelemetryService extends Disposable implements ITelemetryService { } } -registerSingleton(ITelemetryService, TelemetryService); +registerSingleton(ITelemetryService, TelemetryService, true); + diff --git a/yarn.lock b/yarn.lock old mode 100755 new mode 100644 index 170dc65df1..b125714969 --- a/yarn.lock +++ b/yarn.lock @@ -447,79 +447,105 @@ methods "^1.1.2" path-to-regexp "^6.1.0" -"@microsoft/applicationinsights-analytics-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-analytics-js/-/applicationinsights-analytics-js-2.8.5.tgz#732fdcf16b0f19c0b522556e8950c07b55ee5027" - integrity sha512-wlAUuTuONFfX6V0bPGH8FkN0DJUvcQD4KMyaw1DYTdVWg1Lsv7OewsfEIQBm8OS9phv7ALzMt0tEY3mNp3dtEQ== +"@microsoft/1ds-core-js@3.2.6", "@microsoft/1ds-core-js@^3.2.2": + version "3.2.6" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-core-js/-/1ds-core-js-3.2.6.tgz#8a77909f89f991aa2f0b4ae8825c75042962e68e" + integrity sha512-6OpppYCEA+rXjcs2w0KnWji3Y6ZDx0wykY7ZL3QF68NS323C45GHSpkDpVRT/lDU6Xbau/PvQm2zTYAzLcperA== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-core-js" "2.8.6" + "@microsoft/applicationinsights-shims" "^2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/1ds-post-js@^3.2.2": + version "3.2.6" + resolved "https://registry.yarnpkg.com/@microsoft/1ds-post-js/-/1ds-post-js-3.2.6.tgz#cdfa74acfc3205c0a5b79925284d6d166aa43901" + integrity sha512-Zdyl3FU6kU/a7TlVVSTBZg+hSECTT65iI99FsjMOx88HudyVyk9M/0lVbA+FVXvGaxzmtBW6Lw0qRHYp4tBMSA== + dependencies: + "@microsoft/1ds-core-js" "3.2.6" + "@microsoft/applicationinsights-shims" "^2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/applicationinsights-analytics-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-analytics-js/-/applicationinsights-analytics-js-2.8.7.tgz#dea44f5bbfb150e12f256b0c45ba6756276df9b6" + integrity sha512-WEsbh3yOzjo1DnH6NyVS/W9uXEWJkb0mgOHTnq3An2nvyT7HPzd56hqRfyJsWR2KAU6hvZ09l7OK85AjkfEqJA== + dependencies: + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-channel-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-2.8.5.tgz#18ae13d02c9646e34fc06f32099141ef1c9c5706" - integrity sha512-jiK1lzgrn8PnRvhwDSUQQWZgGrywuvQOq/HbVFI6jdK9qqV7u+ndwFc4GbsTZQdNoWZLmcY8W1qjos8VX0+Zww== +"@microsoft/applicationinsights-channel-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-channel-js/-/applicationinsights-channel-js-2.8.7.tgz#365b29842229ba615badc5f9c3f3ebc5c6ce7ef1" + integrity sha512-Ee2zp6Ij/Btnc9P8bVBXUIa4/X8HH1hNYpL2ALGfhwbWOUxoR+1+0FZpj+/H9vf2PP/8eS5r28MCoksbGUH+8A== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-common@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-common/-/applicationinsights-common-2.8.5.tgz#568eb911c2b26473e304ceda1f9509da3a19a94a" - integrity sha512-oiGyz+4Bg+92RuvZn/1GrSwczhbyGrKyuVi/CExQjPKeqAm3ib2Uvlo0gZEm26AsSq0qPklG7H7n5s3y/krXhw== +"@microsoft/applicationinsights-common@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-common/-/applicationinsights-common-2.8.7.tgz#8ac4d63450e8108ac1ce96750d32e286935388f7" + integrity sha512-bODgacISioOVZIYho1QUADVZh4jjFRQhfVokHbFUgDsJ1NgfpDdNlv+idxH9oriBEuf9odWnOM9jfr3OMcVicA== dependencies: - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-core-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.5.tgz#02adb1b9a7dca83897a9a06a98d1aecdc7526b6f" - integrity sha512-7/EgK6r8GiDVluo84skCMNthgnPa6P7TXiJqHBJbuCf11N4YqkZoGjKs+Fo7h6XIPuYMUHVMNLpBObI7oS7HsQ== +"@microsoft/applicationinsights-core-js@2.8.6": + version "2.8.6" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.6.tgz#4f0f9ad809aacfc96cb882139b69b3625519c51a" + integrity sha512-rL+ceda1Y6HaHBe1vIbNT/f5JGuHiD5Ydq+DoAfu56o13wyJu4sao3QKaabgaIM59pPO+3BMeGsK8NNUGYaT3w== dependencies: "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-dependencies-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-dependencies-js/-/applicationinsights-dependencies-js-2.8.5.tgz#2ba74e212651ef6842da06907713cafbfb2e2848" - integrity sha512-UwOpIxZjv3l8KtgrPd5WEmuvaXty3yTc/S279t7hSjxqOk+LDg0Q2dxap80EuQ5qHoGW32qhVkv+nHaASLoRkg== +"@microsoft/applicationinsights-core-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-core-js/-/applicationinsights-core-js-2.8.7.tgz#3c43517bc6fdf2da59aa90708cefcf936db75488" + integrity sha512-y7USumU+a/kbDeORr/dnDFAxcS5+KOFJSM5oUkS8tBu7CYcX1QAGF4X11gdH2NjrGgHjgxhERhYRa/YhwY1NOQ== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-properties-js@2.8.5": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-properties-js/-/applicationinsights-properties-js-2.8.5.tgz#1fd98967aaa64a65679fe75264e93307026cbf31" - integrity sha512-qlG17DPns2WPW2eL3gYR9mMe+I4Ro2Sp21VRELuVyRH+htkIoeCXcVWn8UPIGO3YonK3DU8mkN9cEx6ov9Aw+Q== +"@microsoft/applicationinsights-dependencies-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-dependencies-js/-/applicationinsights-dependencies-js-2.8.7.tgz#fe7e52ec0a3f18d66cb6c43af529c05858e0cbde" + integrity sha512-lLRZPCi4Aq+sJThiO6QeFfZguuvZkH8VbceMz3jNF8S1KvPC0174eVcihMPDrjErPXGcquH1fKvJn3PionhZuw== dependencies: - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6" -"@microsoft/applicationinsights-shims@2.0.1": +"@microsoft/applicationinsights-properties-js@2.8.7": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-properties-js/-/applicationinsights-properties-js-2.8.7.tgz#6ec96789c3add4e93a1511bfcd946859622355f3" + integrity sha512-wEa2XJ3PAymFLcOajl7KwhLS2JGFW3SbF2lYsGeP/efIJewTRbB1l+6QgbNWiOCvPd4cpiq2jRdrgKaQpJN37Q== + dependencies: + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" + "@microsoft/applicationinsights-shims" "2.0.1" + "@microsoft/dynamicproto-js" "^1.1.6" + +"@microsoft/applicationinsights-shims@2.0.1", "@microsoft/applicationinsights-shims@^2.0.1": version "2.0.1" resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-shims/-/applicationinsights-shims-2.0.1.tgz#5d72fb7aaf4056c4fda54f9d7c93ccf8ca9bcbfd" integrity sha512-G0MXf6R6HndRbDy9BbEj0zrLeuhwt2nsXk2zKtF0TnYo39KgYqhYC2ayIzKPTm2KAE+xzD7rgyLdZnrcRvt9WQ== -"@microsoft/applicationinsights-web@^2.6.4": - version "2.8.5" - resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-web/-/applicationinsights-web-2.8.5.tgz#e0bae482f258ec7d0c307306e9835fba2e443f2d" - integrity sha512-smgLYbDxiV8qmJOfvSL8FhcqXCXnOMJANcyc6FxL6TVn3ZqepG8r+ekV+b4iYn7vBcAc7XLU+zIEAuFC9IV0kA== +"@microsoft/applicationinsights-web@^2.8.4": + version "2.8.7" + resolved "https://registry.yarnpkg.com/@microsoft/applicationinsights-web/-/applicationinsights-web-2.8.7.tgz#23f5891768b6da6e4cdcc1a8d0cdf1b7b1376b1e" + integrity sha512-m0GufymksDAOarHnUzQ72d0RIAS2faY9xNnwAb7J08qOuDRqgnKamDH5U6af6Tjla4N1Ql2nOGLqQYg88/QjrQ== dependencies: - "@microsoft/applicationinsights-analytics-js" "2.8.5" - "@microsoft/applicationinsights-channel-js" "2.8.5" - "@microsoft/applicationinsights-common" "2.8.5" - "@microsoft/applicationinsights-core-js" "2.8.5" - "@microsoft/applicationinsights-dependencies-js" "2.8.5" - "@microsoft/applicationinsights-properties-js" "2.8.5" + "@microsoft/applicationinsights-analytics-js" "2.8.7" + "@microsoft/applicationinsights-channel-js" "2.8.7" + "@microsoft/applicationinsights-common" "2.8.7" + "@microsoft/applicationinsights-core-js" "2.8.7" + "@microsoft/applicationinsights-dependencies-js" "2.8.7" + "@microsoft/applicationinsights-properties-js" "2.8.7" "@microsoft/applicationinsights-shims" "2.0.1" "@microsoft/dynamicproto-js" "^1.1.6"