ETW Host Service Installation Changes in 2021.3
Changes are coming to the installation process for our .NET Tools, specifically ReSharper and Rider. The JetBrains ETW Host Service will now be delivered through a standalone installer, allowing you to choose the bitness (x86 or x64). In addition, the change will allow us to deliver critical security updates out-of-band to the service.
Event Tracing For Windows (ETW) Host Service
Event Tracing for Windows, commonly referred to as ETW, is a foundation for the Windows Performance Toolkit. Using ETW, you can capture kernel and application-level events without restarting the system or current process. Capturing events is also meant to be non-invasive with minimal overhead to the process.
When installing our tools, you may have noticed the process asks you to install the JetBrains ETW Host Service. ETW powers Dynamic Program Analysis (DPA) in both ReSharper and Rider. DPA runs in the background while your application runs, gathering information about large and small object allocations. Without the service, our DPA feature would not work. Furthermore, users would lose real-time profiling features that can help diagnose potential garbage collection issues, problems that can significantly impact application performance.
New Installation Process
The new ETW Host Service MSI will be available on our site as a separate download, alongside our other .NET Tools. After the installation, you will still see the JetBrains ETW Host Service amongst other existing Windows services, but you will have an additional Windows tray notification. When the tray icon is visible, it means there is a new update available. Clicking on the Windows tray icon will allow you to update, after which point, the notification tray icon will disappear until a future update is available.
Like all JetBrains installers, The ETW Host Service installer is signed for security, and all updates downloaded directly by the service are PGP signed, and the integrity is checked using a SHA256 digest for a second level of security. As of now, the update process will require a manual confirmation to receive the next version.
Why The Change?
We’ve found several scenarios our users can benefit from the ETW Host Service outside of ReSharper and Rider DPA usage.
- Other .NET tools, such as dotTrace, can utilize the ETW Host Service for capturing additional information during a profiling session.
- When used alongside tools like JetBrains.Profiler.SelfAPI, the ETW Host Service allows users to programmatically capture additional information on any environment, regardless if ReSharper or Rider are installed.
- Reduce the amount of instances where the installer requires elevated permissions during the installation process. While relatively low-risk, any instance where we can eliminate an elevated permissions situation is ideal for security reasons.
- Being installed using a different MSI allows you to manage the ETW Host Service inside Window’s Control Panel within Add/Remove Programs.
- Updates for ETW Host Service are not as frequent as our product releases, meaning we will only update the ETW Host service when required. Currently, every upgrade of Rider and ReSharper will reinstall the windows service.
- Simplifies the security audit of the ETW Host Service for JetBrains and its customers.
We believe the advantages of the change will greatly outweigh the inconvenience of having to manage the ETW Host Service manually. Ultimately, we’ve realized the ETW host service, while essential for ReSharper and Rider, can do more for you beyond the scope of your development machine.
You can find the executables here:
The ETW Host Service is essential for DPA in both ReSharper and Rider, and it’s proven to be a popular feature amongst our users. Changing the installation process allows us to bring the ETW Host Service and its capabilities to determine potential memory issues to more scenarios. As we continue improving the ETW Host Service, we hope to bring those features to you faster and non-intrusive mechanisms.
If you have any further questions or concerns, please leave them in the comments below.
Subscribe to Blog updates
Thanks, we've got you!