Add Notebook telemetry events (#19848)

* add telemetry events

* remove error message in telemetry
This commit is contained in:
Lucy Zhang
2022-07-01 09:14:29 -07:00
committed by GitHub
parent 179f9e8270
commit 4ec2d78269
5 changed files with 12 additions and 3 deletions

View File

@@ -18,6 +18,7 @@ import { INotebookService } from 'sql/workbench/services/notebook/browser/notebo
import { IContextMenuService } from 'vs/platform/contextview/browser/contextView';
import { StandardKeyboardEvent } from 'vs/base/browser/keyboardEvent';
import { CellEditModes, MoveDirection } from 'sql/workbench/services/notebook/browser/models/modelInterfaces';
import * as TelemetryKeys from 'sql/platform/telemetry/common/telemetryKeys';
const moreActionsLabel = localize('moreActionsLabel', "More");
export class EditCellAction extends ToggleableAction {
@@ -105,6 +106,7 @@ export class MoveCellAction extends CellActionBase {
let moveDirection = this._cssClass.includes('move-down') ? MoveDirection.Down : MoveDirection.Up;
try {
context.model.moveCell(context.cell, moveDirection);
context.model.sendNotebookTelemetryActionEvent(TelemetryKeys.NbTelemetryAction.MoveCell, { moveDirection: moveDirection });
} catch (error) {
let message = getErrorMessage(error);

View File

@@ -602,6 +602,7 @@ export class CellModel extends Disposable implements ICellModel {
}
public async runCell(notificationService?: INotificationService, connectionManagementService?: IConnectionManagementService): Promise<boolean> {
let kernel: nb.IKernel | undefined;
try {
// Allow screen reader to announce when cell execution is started
alert(localize('cellExecutionStarted', "Cell execution started"));
@@ -618,7 +619,7 @@ export class CellModel extends Disposable implements ICellModel {
// for this property
return false;
}
let kernel = await this.getOrStartKernel(notificationService);
kernel = await this.getOrStartKernel(notificationService);
if (!kernel) {
return false;
}
@@ -705,6 +706,7 @@ export class CellModel extends Disposable implements ICellModel {
} else {
message = getErrorMessage(error);
}
this.notebookModel.sendNotebookTelemetryActionEvent(TelemetryKeys.NbTelemetryAction.CellExecutionFailed, { kernel: kernel, reason: error.message === 'Canceled' ? 'Canceled' : 'Other' });
this.sendNotification(notificationService, Severity.Error, message);
// TODO track error state for the cell
} finally {