ads-extension-telemetry
This module provides a consistent way for first-party extensions to report telemetry
over Application Insights. The module respects the user's decision about whether or
not to send telemetry data.
Follow guide to set up Application Insights in Azure and get your key.
install
npm install ads-extension-telemetry
usage
const vscode = require('vscode');
const TelemetryReporter = require('ads-extension-telemetry');
const extensionId = '<your extension unique name>';
const extensionVersion = '<your extension version>';
const key = '<your key>';
let reporter;
function activate(context: vscode.ExtensionContext) {
...
reporter = new TelemetryReporter(extensionId, extensionVersion, key);
context.subscriptions.push(reporter);
...
}
function deactivate() {
reporter.dispose();
}
...
reporter.sendViewEvent('ConnectionDialog');
reporter.sendActionEvent('ConnectionDialog', 'Click', 'OKButton', 'Mouse', 123);
reporter.sendMetricsEvent({ 'dialogLoadTimeMs', 578 }, 'ConnectionDialog');
reporter.sendErrorEvent('ConnectionDialog', 'connectionFailed', '4060', 'SqlException');
reporter.createViewEvent('ConnectionDialog')
.withAdditionalProperties( { myProp: 'MyPropValue' })
.withAdditionalMeasurements( { myMeasure: 123 })
.withConnectionInfo(connectionProfile)
.send();
common properties
common.extname
common.extversion
common.vscodemachineid
common.vscodesessionid
common.vscodeversion
common.os
common.platformversion
License
MIT