Skip to content
TeamCity plugin dotTrace
Java
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build
dotTrace-agent
dotTrace-common
dotTrace-server
modules
.gitignore
LICENSE
README.md
pom.xml
teamcity-plugin.xml

README.md

JetBrains dotTrace plugin for

This plugin provides the ability to run a build step under the JetBrains dotTrace Command-Line Profiler. It is integrated into all .NET-related TeamCity build runners.

How to Use It

The main purpose of the plugin is doing performance profiling as one of the continuous integration steps.

All you need is to:

  1. Write a number of integration tests that cover performance-critical functionality of your app.
  2. Add a 'unit testing' build step to your build configuration in TeamCity.
  3. In the build step parameters:
  • Enable Run build step under dotTrace profiler.
  • Set performance thresholds for your tests (or any of the underlying methods). The threshold can be set as an absolute number in ms for the method's own or total (own + call subtree) time. Another option is to check the method's execution time against previous successful builds.

That's it! Once the build is run, the plugin runs the tests and checks the execution time of the specified methods. If any of the thresholds are exceeded, the build is considered failed. After running the build step, dotTrace plugin saves a performance snapshot. Analyze it in the standalone dotTrace profiler and find out the cause of performance issues.

Installation

To install the plugin, put the zip archive to the 'plugins' directory under TeamCity data directory. Restart the server. JetBrains dotTrace command-line profiler is a free separate tool that contains a self-profiling API. To be used, the JetBrains dotTrace command-line profiler is required on each TeamCity agent where it will be run.

Implemention

This project contains 3 modules: 'dotTrace-server', 'dotTrace-agent', and 'dotTrace-common'. They contain code for the server and agent parts, and a common part available to both (agent and server). When implementing components for the server and agent parts, remember to update spring context files under 'main/resources/META-INF'. See TeamCity documentation for details on plugin development.

Build

Use the 'mvn package' command from the root project to build your plugin. The resulting package 'dotTrace.zip' will be placed in the 'target' directory. The build is configured on the JetBrains TeamCity build server.

License

The JetBrains dotTrace plugin for TeamCity is under the Apache License.

Contributors

Resources

You can’t perform that action at this time.