A vscode extension for generating and exporting editor's telemetry data. The intention of this extension is to support data-driven research and design of new coding experiences with large numbers of users, and we use this extension within the educational technology collective lab to improve programming education with learning analytics.
The settings file controls the activated events and data exporters. Either user settings or workspace settings work.
To add a data exporter, users should assign exporter type along with function arguments when configuring exporters
.
This extension provides 3 default exporters.
console_exporter
, which sends telemetry data to the browser consolefile_exporter
, which saves telemetry data to local fileremote_exporter
, which sends telemetry data to a remote http endpointSee configuration example here.
activateEvents
: An array of active events. Each active event in the array should have the following structure:
{
'name': # string, event name
'logWholeDocument': # boolean, whether to export the entire document content when event is triggered
}
The extension would only generate and export data for valid event that has an id associated with the event class, and the event name is included in activeEvents
.
The extension will export the entire notebook content only for valid events when the logWholeDocument
flag is True.
exporters
: An array of exporters. Each exporter in the array should have the following structure:
{
'type': # One of 'console_exporter', 'file_exporter', 'remote_exporter',
'args': # Optional. Arguments passed to the exporter function.
# It needs to contain 'path' for file_exporter, 'url' for remote_exporter.
'activeEvents': # Optional. Exporter's local activeEvents config will override global activeEvents config
}