Skip to content

Conversation

@rchiodo
Copy link

@rchiodo rchiodo commented Feb 13, 2020

For #10049, #9819, #9883

Add a bunch of telemetry:

NotebookLanguage = 'DATASCIENCE.NOTEBOOK_LANGUAGE',
KernelSpecNotFound = 'DS_INTERNAL.KERNEL_SPEC_NOT_FOUND',
KernelRegisterFailed = 'DS_INTERNAL.KERNEL_REGISTER_FAILED',
KernelEnumeration = 'DS_INTERNAL.KERNEL_ENUMERATION',
JupyterInstallFailed = 'DS_INTERNAL.JUPYTER_INSTALL_FAILED',
UserInstalledModule = 'DATASCIENCE.USER_INSTALLED_MODULE',

And fix some others to have durations.

"skipFiles": [
"<node_internals>/**"
]
],
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think we want this on all the time.

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Whoops.


In reply to: 379117492 [](ancestors = 379117492)

@codecov-io
Copy link

codecov-io commented Feb 13, 2020

Codecov Report

❗ No coverage uploaded for pull request base (master@55cd158). Click here to learn what that means.
The diff coverage is 39.39%.

Impacted file tree graph

@@            Coverage Diff            @@
##             master   #10115   +/-   ##
=========================================
  Coverage          ?   61.31%           
=========================================
  Files             ?      567           
  Lines             ?    30704           
  Branches          ?     4402           
=========================================
  Hits              ?    18827           
  Misses            ?    10894           
  Partials          ?      983
Impacted Files Coverage Δ
src/client/telemetry/index.ts 87.38% <ø> (ø)
...er/jupyterInterpreterSubCommandExecutionService.ts 84.42% <ø> (ø)
src/client/common/types.ts 100% <ø> (ø)
...c/datascience-ui/react-common/settingsReactSide.ts 22.22% <ø> (ø)
...eter/jupyterCommandInterpreterDependencyService.ts 54.76% <0%> (ø)
src/client/common/editor.ts 8.25% <0%> (ø)
...ient/datascience/jupyter/kernels/kernelSelector.ts 75.8% <0%> (ø)
...ient/datascience/interactive-ipynb/nativeEditor.ts 56.54% <0%> (ø)
src/client/datascience/constants.ts 99.7% <100%> (ø)
src/client/datascience/commands/commandRegistry.ts 29.18% <100%> (ø)
... and 6 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 55cd158...73c206c. Read the comment docs.

return response;
} catch (e) {
if (product === Product.jupyter) {
sendTelemetryEvent(Telemetry.JupyterInstallFailed);
Copy link
Member

@IanMatthewHuff IanMatthewHuff Feb 13, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not relevant in particular to our team. But might be worthwhile just for the extension in general to log telemetry on UserModuleInstallFailed. #WontFix

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Dan/Savannah can ask for this if they want it I think. Not sure we should add telemetry unless they want it.


In reply to: 379120268 [](ancestors = 379120268)

// Python Module to be used when instantiating the Python Daemon.
export const PythonDaemonModule = 'datascience.jupyter_daemon';

export const KnownNotebookLanguages: string[] = [
Copy link
Member

@IanMatthewHuff IanMatthewHuff Feb 13, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just wondering where did these values come from. Didn't think that nbformat specified language specific language_info name values. #Resolved

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I looked them up in a bunch of notebooks on github.


In reply to: 379122367 [](ancestors = 379122367)

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actually some of them are the wrong case though. I should check case insensitive.


In reply to: 379122816 [](ancestors = 379122816,379122367)

this.applicationShell.showErrorMessage(e.message, DataScience.pythonInteractiveHelpLink())
);
.then(() => {
sendTelemetryEvent(Telemetry.UserInstalledModule, stopWatch.elapsedTime, { product });
Copy link
Member

@IanMatthewHuff IanMatthewHuff Feb 13, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is also a jupyter install looks like. #Resolved

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh you mean I picked the wrong event?


In reply to: 379127370 [](ancestors = 379127370)

Copy link
Member

@IanMatthewHuff IanMatthewHuff Feb 13, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, looks like just a non-Conda jupyter install. Not User Module. #Resolved

Copy link
Member

@IanMatthewHuff IanMatthewHuff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved pending a couple of comments

@rchiodo
Copy link
Author

rchiodo commented Feb 13, 2020

What were you waiting on? I think they're all fixed?


In reply to: 358564725 [](ancestors = 358564725)

@IanMatthewHuff
Copy link
Member

What were you waiting on? I think they're all fixed?

In reply to: 358564725 [](ancestors = 358564725)

@rchiodo at the time I clicked approve the UserModule message was not resolved (at least not that saw). Clicked approve with comment as I didn't care / need to see the review after that fix. Figured you could just check in after fixing that.

@sonarqubecloud
Copy link

Kudos, SonarCloud Quality Gate passed!

Bug A 0 Bugs
Vulnerability A 0 Vulnerabilities (and Security Hotspot 0 Security Hotspots to review)
Code Smell A 0 Code Smells

No Coverage information No Coverage information
0.0% 0.0% Duplication

@rchiodo rchiodo merged commit 6b6b959 into master Feb 13, 2020
@rchiodo rchiodo deleted the rchiodo/kernel_telemetry branch February 13, 2020 22:39
rchiodo added a commit that referenced this pull request Feb 15, 2020
* Add duration to select local/remote kernel

* Add notebook language telemetry

* Add news entries

* #9883 telemetry

* News entry

* Another spot for kernel spec failure

* Add telemetry on product install

* Fix install telemetry

* Undo launch.json change

* Handle other cases

* Better way to handle case

* Wrong event for jupyter install

* Fix unit tests
rchiodo added a commit that referenced this pull request Feb 18, 2020
* Better messaging on notebook fail (#10056)

* Install jupyter instead of installing kernel spec (#10080)

* Install jupyter instead of installing kernel spec
For #10071

* Eliminate variable value when computing data frame info (#10081)

* Fix ndarray types to be viewable again (#10093)

* Eliminate variable value when computing data frame info

* Fix ndarrays to work again
Add test to make sure we don't regress this again

* Rchiodo/kernel telemetry (#10115)

* Add duration to select local/remote kernel

* Add notebook language telemetry

* Add news entries

* #9883 telemetry

* News entry

* Another spot for kernel spec failure

* Add telemetry on product install

* Fix install telemetry

* Undo launch.json change

* Handle other cases

* Better way to handle case

* Wrong event for jupyter install

* Fix unit tests

* Clear variables when restarting regardless if visible or not (#10117)

* Use different method for checking if kernelspec is available (#10114)

* Use different method for checking if kernelspec is available

* Fix unit tests

* More logging for kernelspec problems (#10132)

* More logging for kernelspec problems

* Actually capture the exception on the new code

* Not actually using output if first exception still there.

* Actually only return output on one of the expected calls.

* Fix nightly flake

* Check our saved jupyter interpreters before allowing any of them to be used as active interpreters (#10113)

* Update changelog and package.json

* Missing part of changelog

* Fix tests and linter problems

Co-authored-by: Ian Huff <ian.huff@gmail.com>
Co-authored-by: Don Jayamanne <don.jayamanne@yahoo.com>
@lock lock bot locked as resolved and limited conversation to collaborators Feb 21, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants