All search parameters are contained in the url of the page, so it is very simple to share your view.
A query is composed of terms and operators.
There are two types of terms:
To combine multiple terms into a complex query, use any of the following boolean operators:
|Intersection: both terms are in the selected events (if nothing is added, AND is taken by default)
||authentication AND failure
|Union: either terms is contained in the selected events
||authentication OR password
|Exclusion: the following term is NOT in the event
||authentication AND -password
To search on a specific facet you must add it as a facet first then add
@ to specify you are searching on a facet.
For instance, if your facet name is url and you want to filter on the url value www.datadoghq.com just enter:
Your traces inherit tags from hosts and integrations that generate them. They can be used in the search and as facets as well:
("env:prod" OR test)
|All traces with the tag
#env:prod or the tag
(service:srvA OR service:srvB) or
(service:(srvA OR srvB))
|All traces that contain tags
("env:prod" AND -"version:beta")
|All traces that contain
#env:prod and that do not contain
If your tags don’t follow tags best practices and don’t use the
key:value syntax, use this search query:
To perform a multi-character wildcard search, use the
* symbol as follows:
service:web* matches every trace that has a services starting with
@url:data* matches every trace that has a
url starting with
>= to perform a search on numerical attributes. For instance, retrieve all traces that have a response time over 100ms with:
It is also possible to search for numerical attributes within a specific range. For instance, retrieve all your 4xx errors with:
@http.status_code:[400 TO 499]
Typing a complex query can be cumbersome. Use the search bar’s autocomplete feature to complete your query using existing values:
Escaping of special characters
The following attributes are considered as special:
\ require escaping.
For instance, to search traces that contain
user=JaneDoe in their
url the following search must be entered:
The same logic must be applied to spaces within trace attributes. It is not recommended to have spaces in trace attributes but in such cases, spaces require escaping.
If an attribute is called
user.first name, perform a search on this attribute by escaping the space:
Don’t lose time building the same views everyday. Saved searches contain your search query, columns, and time horizon. They are then available in the search bar thanks to the auto-complete matching whether the search name or query.
To delete a saved search, click on the bin icon under the Trace search drop-down.
The time range allows you to display traces within a given time period. Quickly change the time range by selecting a preset range from the dropdown (or entering a custom time frame):
The Trace Stream is the list of traces that match the selected context. A context is defined by a search bar filter and a time range.
Displaying a full trace
Click on any trace to see more details about it:
To add more Trace details to the list, click the Options button and select any Facets you want to see:
Origin resource is a default column that shows the resource at the root of the given trace. To add origin service or origin operation name, click the Options button and select
Choose to display one, three, or ten lines from your traces. 3 and 10 lines display are here to give you more insights on the
A Facet displays all the distinct values of an attribute or a tag as well as provides some basic analytics such as the amount of traces represented. This is also a switch to filter your data.
Facets allow you to pivot or filter your datasets based on a given attribute. Examples Facets may include users, services, etc…
Use measures when you need to:
- Aggregate values from multiple traces. For example, create a measure on the number of rows in Cassandra and view the P95 or top-most referrers per sum of file size requested.
- Numerically compute the highest latency services for shopping cart values over $1000.
- Filter continuous values. For example, the size in bytes of each payload chunk of a video stream.
Measures come with either a (long) integer or double value, for equivalent capabilities.
Measures support units (time in seconds or size in bytes) for handling of orders of magnitude at query time and display time. Unit is a property of the measure itself, not of the field. For example, consider a duration measure in nanoseconds: you have a span tag from
duration:1000 stands for
1000 milliseconds, and another span tags from
duration:500 stands for
Scale duration into nanoseconds for all span tags flowing in with the arithmetic processor. Use a
*1000000 multiplier on span tags from
service:A, and a
*1000 multiplier on span tags from
duration:>20ms (see search syntax for reference) to consistently query span tags from both services at once, and see an aggregated result of max one minute.
Create a facet
To start using an attribute as a Facet or in the search, click on it and add it as a Facet:
Once this is done, the value of this attribute is stored for all new traces and can be used in the search bar, the Facet Panel, and in the Trace graph query.
Use Facets to filter on your Traces. The search bar and url automatically reflect your selections.
Use Analytics to filter application performance metrics and Indexed Spans by tags. It allows deep exploration of the web requests flowing through your service.
Analytics is automatically enabled for all APM services with 100% of ingested data for 15 minutes (rolling window). Spans indexed by custom retention filters and legacy App Analytics are available in Analytics for 15 days.
Downstream services like databases and cache layers aren’t in the list of available services (as they don’t generate traces on their own), but their information is picked up by the top level services that call them.
Use the query to control what’s displayed in your Analytics:
Duration metric or a Facet to analyze. Selecting the
Duration metric lets you choose the aggregation function whereas a facet displays the unique count.
Select the aggregation function for the
Use a tag or facet to split your Analytic.
Choose to display either the X top or bottom values according to the selected facet or
Choose the Analytic Timesteps.
Changing the global timeframe changes the list of available Timesteps values.
Select an Analytics visualization type using the Analytic selector:
Visualize the evolution of the
Duration metric (or a facet unique count of values) over a selected time frame, and (optionally) split by an available facet.
The following timeseries Analytics shows the evolution of the pc99 duration by steps of 5min for each Service
Visualize the top values from a facet according to their
Duration (or a facet unique count of values).
The following top list analytics shows the top pc99 duration of Service:
Visualize the top values from a facet according to a chosen measure (the first measure you choose in the list), and display the value of additional measures for elements appearing in this top list. Update the search query or drill through logs corresponding to either dimension.
- When there are multiple dimensions, the top values are determined according to the first dimension, then according to the second dimension within the top values of the first dimension, then according to the third dimension within the top values of the second dimension.
- When there are multiple measures, the top or bottom list is determined according to the first measure.
- The subtotal may differ from the actual sum of values in a group, since only a subset (top or bottom) is displayed. Events with a null or empty value for this dimension are not displayed as a sub-group.
Note: A table visualisation used for one single measure and one single dimension is the same as a toplist, just with a different display.
The following Table Log Analytics shows the evolution of the top Status Codes according to their Throughput, along with the number of unique Client IPs, and over the last 15 minutes:
Select or click on a section of the graph to either zoom in the graph or see the list of traces corresponding to your selection:
Export your Analytics:
Note: Analytics can be exported only when powered by indexed spans.
Traces in dashboard
Export Analytics from the trace search or build them directly in your Dashboard alongside metrics and logs.
Learn more about the timeseries widget.
Additional helpful documentation, links, and articles: