Skip to content

Commit c0bc1ac

Browse files
author
Benjamin Pasero
committed
CLI Process: missing machine identifier (fixes microsoft#39044)
1 parent 91771ce commit c0bc1ac

2 files changed

Lines changed: 7 additions & 5 deletions

File tree

src/vs/code/node/cliProcessMain.ts

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,8 @@ import { mkdirp, writeFile } from 'vs/base/node/pfs';
3333
import { IChoiceService } from 'vs/platform/message/common/message';
3434
import { ChoiceCliService } from 'vs/platform/message/node/messageCli';
3535
import { getBaseLabel } from 'vs/base/common/labels';
36+
import { IStateService } from 'vs/platform/state/common/state';
37+
import { StateService } from 'vs/platform/state/node/stateService';
3638

3739
const notFound = (id: string) => localize('notFound', "Extension '{0}' not found.", id);
3840
const notInstalled = (id: string) => localize('notInstalled', "Extension '{0}' is not installed.", id);
@@ -176,11 +178,13 @@ const eventPrefix = 'monacoworkbench';
176178
export function main(argv: ParsedArgs): TPromise<void> {
177179
const services = new ServiceCollection();
178180
services.set(IEnvironmentService, new SyncDescriptor(EnvironmentService, argv, process.execPath));
181+
services.set(IStateService, new SyncDescriptor(StateService));
179182

180183
const instantiationService: IInstantiationService = new InstantiationService(services);
181184

182185
return instantiationService.invokeFunction(accessor => {
183186
const envService = accessor.get(IEnvironmentService);
187+
const stateService = accessor.get(IStateService);
184188

185189
return TPromise.join([envService.appSettingsHome, envService.extensionsPath].map(p => mkdirp(p))).then(() => {
186190
const { appRoot, extensionsPath, extensionDevelopmentPath, isBuilt, installSource } = envService;
@@ -205,7 +209,7 @@ export function main(argv: ParsedArgs): TPromise<void> {
205209

206210
const config: ITelemetryServiceConfig = {
207211
appender: combinedAppender(...appenders),
208-
commonProperties: resolveCommonProperties(product.commit, pkg.version, installSource),
212+
commonProperties: resolveCommonProperties(product.commit, pkg.version, installSource, stateService.getItem('telemetry.machineId')),
209213
piiPaths: [appRoot, extensionsPath]
210214
};
211215

src/vs/platform/telemetry/node/commonProperties.ts

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,10 @@ import * as os from 'os';
88
import { TPromise } from 'vs/base/common/winjs.base';
99
import * as uuid from 'vs/base/common/uuid';
1010

11-
export function resolveCommonProperties(commit: string, version: string, source: string, machineId?: string): TPromise<{ [name: string]: string; }> {
11+
export function resolveCommonProperties(commit: string, version: string, source: string, machineId: string): TPromise<{ [name: string]: string; }> {
1212
const result: { [name: string]: string; } = Object.create(null);
1313
// __GDPR__COMMON__ "common.machineId" : { "classification": "EndUserPseudonymizedInformation", "purpose": "FeatureInsight" }
14-
if (typeof machineId === 'string') {
15-
result['common.machineId'] = machineId;
16-
}
14+
result['common.machineId'] = machineId;
1715
// __GDPR__COMMON__ "sessionID" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }
1816
result['sessionID'] = uuid.generateUuid() + Date.now();
1917
// __GDPR__COMMON__ "commitHash" : { "classification": "SystemMetaData", "purpose": "FeatureInsight" }

0 commit comments

Comments
 (0)