From 6772cee42d9aa176a7ec923365fa71c2a8c5c517 Mon Sep 17 00:00:00 2001 From: Anthony Pizzurro Date: Fri, 12 Feb 2021 10:41:57 -0500 Subject: [PATCH 1/3] add new vscode endpoint --- packages/cli-lib/api/fileMapper.js | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/cli-lib/api/fileMapper.js b/packages/cli-lib/api/fileMapper.js index a256c2706..84ed69fad 100644 --- a/packages/cli-lib/api/fileMapper.js +++ b/packages/cli-lib/api/fileMapper.js @@ -181,7 +181,12 @@ async function trackUsage(eventName, eventClass, meta = {}, accountId) { eventClass, meta, }; - const path = `${FILE_MAPPER_API_PATH}/cms-cli-usage`; + const endpointMapping = { + 'cli-interaction': 'cms-cli-usage', + 'vscode-extension-interaction': 'vscode-extension-usage', + }; + const path = `${FILE_MAPPER_API_PATH}/${endpointMapping[eventName]}`; + const accountConfig = accountId && getAccountConfig(accountId); if (accountConfig && accountConfig.authType === 'personalaccesskey') { From 472b0295b936c0c6d44145ee306334cd6a8f3bc6 Mon Sep 17 00:00:00 2001 From: Anthony Pizzurro Date: Fri, 12 Feb 2021 15:35:54 -0500 Subject: [PATCH 2/3] create an enum for event types --- packages/cli-lib/api/fileMapper.js | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/packages/cli-lib/api/fileMapper.js b/packages/cli-lib/api/fileMapper.js index 84ed69fad..cfe1ec7a7 100644 --- a/packages/cli-lib/api/fileMapper.js +++ b/packages/cli-lib/api/fileMapper.js @@ -181,11 +181,23 @@ async function trackUsage(eventName, eventClass, meta = {}, accountId) { eventClass, meta, }; - const endpointMapping = { - 'cli-interaction': 'cms-cli-usage', - 'vscode-extension-interaction': 'vscode-extension-usage', + const EVENT_TYPES = { + VSCODE_EXTENSION_INTERACTION: 'vscode-extension-interaction', + CLI_INTERACTION: 'cli-interaction', }; - const path = `${FILE_MAPPER_API_PATH}/${endpointMapping[eventName]}`; + + let analyticsEndpoint; + + switch (eventName) { + case EVENT_TYPES.CLI_INTERACTION: + analyticsEndpoint = 'cms-cli-usage'; + break; + case EVENT_TYPES.VSCODE_EXTENSION_INTERACTION: + analyticsEndpoint = 'vscode-extension-usage'; + break; + } + + const path = `${FILE_MAPPER_API_PATH}/${analyticsEndpoint}`; const accountConfig = accountId && getAccountConfig(accountId); From ca1f2f2352a63e825cd69ee6108a0fec59b2d3b7 Mon Sep 17 00:00:00 2001 From: Anthony Pizzurro Date: Fri, 12 Feb 2021 15:41:26 -0500 Subject: [PATCH 3/3] add a message if event type is not in enum --- packages/cli-lib/api/fileMapper.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/packages/cli-lib/api/fileMapper.js b/packages/cli-lib/api/fileMapper.js index cfe1ec7a7..6948b3c7b 100644 --- a/packages/cli-lib/api/fileMapper.js +++ b/packages/cli-lib/api/fileMapper.js @@ -195,6 +195,10 @@ async function trackUsage(eventName, eventClass, meta = {}, accountId) { case EVENT_TYPES.VSCODE_EXTENSION_INTERACTION: analyticsEndpoint = 'vscode-extension-usage'; break; + default: + logger.debug( + `Usage tracking event '${eventName}' is not a valid event type.` + ); } const path = `${FILE_MAPPER_API_PATH}/${analyticsEndpoint}`;