diff --git a/app/scripts/lib/rpc-method-middleware/handlers/add-ethereum-chain.js b/app/scripts/lib/rpc-method-middleware/handlers/add-ethereum-chain.js index 13e2ae1ff..3bc886dce 100644 --- a/app/scripts/lib/rpc-method-middleware/handlers/add-ethereum-chain.js +++ b/app/scripts/lib/rpc-method-middleware/handlers/add-ethereum-chain.js @@ -261,6 +261,13 @@ async function addEthereumChainHandler( }), ); + let rpcUrlOrigin; + try { + rpcUrlOrigin = new URL(firstValidRPCUrl).origin; + } catch { + // ignore + } + sendMetrics({ event: 'Custom Network Added', category: EVENT.CATEGORIES.NETWORK, @@ -274,13 +281,13 @@ async function addEthereumChainHandler( // property included in all events. For RPC type networks // the MetaMetrics controller uses the rpcUrl for the network // property. - network: firstValidRPCUrl, + network: rpcUrlOrigin, symbol: ticker, block_explorer_url: firstValidBlockExplorerUrl, source: EVENT.SOURCE.TRANSACTION.DAPP, }, sensitiveProperties: { - rpc_url: firstValidRPCUrl, + rpc_url: rpcUrlOrigin, }, }); diff --git a/app/scripts/metamask-controller.js b/app/scripts/metamask-controller.js index c91c12faf..7f25613d6 100644 --- a/app/scripts/metamask-controller.js +++ b/app/scripts/metamask-controller.js @@ -2065,22 +2065,28 @@ export default class MetamaskController extends EventEmitter { }, ); + let rpcUrlOrigin; + try { + rpcUrlOrigin = new URL(rpcUrl).origin; + } catch { + // ignore + } this.metaMetricsController.trackEvent({ event: 'Custom Network Added', category: EVENT.CATEGORIES.NETWORK, referrer: { - url: rpcUrl, + url: rpcUrlOrigin, }, properties: { chain_id: chainId, network_name: chainName, - network: rpcUrl, + network: rpcUrlOrigin, symbol: ticker, block_explorer_url: blockExplorerUrl, source: EVENT.SOURCE.NETWORK.POPULAR_NETWORK_LIST, }, sensitiveProperties: { - rpc_url: rpcUrl, + rpc_url: rpcUrlOrigin, }, }); } diff --git a/ui/pages/settings/networks-tab/networks-form/networks-form.js b/ui/pages/settings/networks-tab/networks-form/networks-form.js index deab03259..682af2f12 100644 --- a/ui/pages/settings/networks-tab/networks-form/networks-form.js +++ b/ui/pages/settings/networks-tab/networks-form/networks-form.js @@ -512,22 +512,28 @@ const NetworksForm = ({ } if (addNewNetwork) { + let rpcUrlOrigin; + try { + rpcUrlOrigin = new URL(rpcUrl).origin; + } catch { + // error + } trackEvent({ event: 'Custom Network Added', category: EVENT.CATEGORIES.NETWORK, referrer: { - url: rpcUrl, + url: rpcUrlOrigin, }, properties: { chain_id: chainId, network_name: networkName, - network: rpcUrl, + network: rpcUrlOrigin, symbol: ticker, block_explorer_url: blockExplorerUrl, source: EVENT.SOURCE.NETWORK.CUSTOM_NETWORK_FORM, }, sensitiveProperties: { - rpc_url: rpcUrl, + rpc_url: rpcUrlOrigin, }, }); dispatch(setNewNetworkAdded(networkName));