Set up Tracing on a TeamCity Pipeline
CI Visibility is not available in the selected site () at this time.
Overview
TeamCity is a continuous integration and delivery server that optimizes and automates software development processes.
Set up tracing in TeamCity to collect data about your pipeline executions, debug performance bottlenecks, address operational issues, and optimize your development workflows.
Compatibility
Pipeline Visibility | Platform | Definition |
---|
Partial retries | Retry build triggers | View partially retried pipeline executions. |
Queue time | Queue time | View the amount of time pipeline jobs sit in the queue before processing. |
Pipeline failure reasons | Pipeline failure reasons | Identify pipeline failure reasons from error messages. |
The following TeamCity versions are supported:
- TeamCity >= 2021.2 or later
The integration between TeamCity and Datadog CI Visibility is provided through a TeamCity plugin. The source code of the Datadog CI Integration plugin is open source under the Apache 2.0 license.
To set up the integration:
Download the Datadog CI Integration plugin on the TeamCity server by going to
Administration -> Plugins -> Browse Plugin Repository.
If you don’t already have one, add a TeamCity composite build as the last build of the build chain. This build must have a dependency on the current last build of the chain and no other builds depending on it.
Build chains that do not end with a composite build are ignored by the plugin. For example, consider an expected build chain where Aggregating Results
is the last composite build:
The final composite build must be properly configured in terms of version control settings, with the VCS Root attached and the VCS Trigger configured.
The following configuration parameters need to be present for TeamCity projects:
- datadog.ci.api.key: Your Datadog API Key.
- datadog.ci.site:
- datadog.ci.enabled:
true
(false
can be used to disable the plugin for a specific project).
These configuration parameters should not have type Password to ensure the plugin can read their values correctly. You can add them to either TeamCity subprojects or the TeamCity Root Project. When added to the Root project, they are propagated to all its subprojects. For example, to enable the plugin for all projects, add datadog.ci.enabled
with the value true
to the Root Project.
For more information on defining configuration parameters, see the TeamCity Project Hierarchy documentation.
To enable the plugin, click on Enable uploaded plugins in the Administration -> Plugins page.
Alternatively, restart the TeamCity server.
Advanced configuration
The plugin retrieves the Git author name and email based on the TeamCity username style. Datadog recommends using either Author Name and Email or Author Email username styles, as they
provide information about the user email.
When one of the other username styles is used (UserId or Author Name), the plugin automatically generates an email for the user by appending @Teamcity
to the username. For example, if the UserId username style is used and the Git author username is john.doe
, the plugin generates john.doe@Teamcity
as the Git author email. The username style is defined for VCS Roots, and can be modified in the VCS Root settings.
Visualize pipeline data in Datadog
View your data on the CI Pipeline List and Executions pages after the pipelines finish.
The CI Pipeline List page shows data for only the default branch of each repository. For more information, see Search and Manage CI Pipelines.
Troubleshooting
All the logs generated by the Datadog CI Integration plugin are stored inside the teamcity-server.log
file and can be
accessed from the TeamCity Server by going to Administration -> Diagnostic -> Server Logs.
Check these logs to get additional context on any issues with the plugin.
Further reading
Additional helpful documentation, links, and articles: