Automated Crash Reporting in RStudio

Follow

In RStudio 1.3, we've added the ability to automatically capture and upload RStudio process crash dumps so that we can more quickly and easily detect and troubleshoot issues. This article discusses the way in which process dumps are collected and sent to our servers in order to be analyzed, as well as how you can opt in or out of the feature.

 

Capturing Process Dumps

If the automated crash reporting feature is enabled for your RStudio installation, a minidump file will be created for any RStudio processes whenever a crash occurs. The minidump file contains stack information only - sensitive user data on the heap is never collected. The only information that the minidump file stores is the stack trace of the process and all of its threads whenever it has crashed, which allows us to see the lines of code that lead up to the crash so that it can be fixed more quickly.

 

Uploading Dumps

Once the process dump file has been created, it is uploaded to our crash collection service, and the only potentially identifiable information that is stored along with the minidump file is your IP address, which we keep for anonymized region analysis. The crash dump is uploaded via SSL for enhanced security.

Once the minidump has been uploaded, we will attempt to identify the underlying cause of the crash and release a fix. Depending on the severity and frequency of the particular crash, a patch release may be issued to correct the issue.

 

Enabling and Disabling Automated Crash Reporting

In RStudio Desktop (including Pro), users will be prompted to enable automated crash reporting upon opening the application. In RStudio Server and RStudio Workbench (previously RStudio Server Pro), automated crash reporting is disabled by default. 

RStudio Desktop

An administrator-level file and a user-level file can be supplied which enables/disables the feature, as well as configuring various other parameters such as the upload URL and where minidumps should be stored. The user-level configuration file is created by RStudio when prompting the user whether to enable crash reporting. The administrator-level file completely overrides any user-specified configuration, allowing administrators to forcefully enable or disable the feature, regardless of what users have chosen.

On Windows, the administrator-level file can be found at C:\Program Files (x86)\RStudio\crash-handler.conf. The user-level file can be found at (%localappdata%)\R\crash-handler.conf.

On OSX and Linux, the administrator-level file can be found at /etc/rstudio/crash-handler.conf. The user-level file can be found at ~/.r/crash-handler.conf.

If no administrator setting has been set, users can toggle the feature from the IDE options page, as can be seen in the following screenshot.

crash-option.png

RStudio Server

In RStudio Server, there is no user-level configuration file. Only administrators may enable or disable the automated crash reporting feature. The configuration file can be found at /etc/rstudio/crash-handler.conf. A default, commented out configuration file is created when RStudio Server is installed, and you can uncomment and edit it as appropriate for your environment.

Config File Documentation

For more detailed documentation on the file format of the crash-handler.conf file, see the Admin Guide at https://docs.rstudio.com/ide/server-pro/1.3.881-1/index.html.

 

Comments