16
17
constructor(
19
>
remote: boolean,
20
>
@ILoggerService loggerService: ILoggerService,
21
>
@IEnvironmentService environmentService: IEnvironmentService,
22
>
@IProductService productService: IProductService,
23
>
) {
24
>
super();
25
>
26
>
const id = remote ? 'remoteTelemetry' : telemetryLogId;
27
>
const logger = loggerService.getLogger(id);
28
>
if (logger) {
29
this.logger = this._register(logger);
31
>
// Not a perfect check, but a nice way to indicate if we only have logging enabled for debug purposes and nothing is actually being sent
32
>
const justLoggingAndNotSending = isLoggingOnly(productService, environmentService);
33
>
const logSuffix = justLoggingAndNotSending ? ' (Not Sent)' : '';
34
>
this.logger = this._register(loggerService.createLogger(id,
35
>
{
36
>
name: localize('telemetryLog', "Telemetry{0}", logSuffix),
37
>
group: TelemetryLogGroup,
38
>
hidden: true
39
>
}));
40
>
}
41
>
}
42
43
flush(): Promise<void> {