Skip to content

Commit

Permalink
[DOC] Add videos to docs (#3330)
Browse files Browse the repository at this point in the history
* Add videos to docs

* Add videos to Tempo docs

* Apply suggestions from code review

* Apply suggestions from code review

* Update docs/sources/tempo/getting-started/tempo-in-grafana.md
  • Loading branch information
knylander-grafana authored Jan 25, 2024
1 parent b7eab4e commit aa9cee9
Show file tree
Hide file tree
Showing 5 changed files with 46 additions and 4 deletions.
10 changes: 8 additions & 2 deletions docs/sources/tempo/configuration/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,13 @@ aliases:

# Configure Tempo

This document explains the configuration options for Tempo as well as the details of what they impact. It includes:
This document explains the configuration options for Tempo as well as the details of what they impact.

{{% admonition type="tip" %}}
Instructions for configuring Tempo data sources are available in the [Grafana Cloud](/docs/grafana-cloud/send-data/traces/) and [Grafana](/docs/grafana/latest/datasources/tempo/) documentation.
{{% /admonition %}}

The Tempo configuration options include:

- [Configure Tempo](#configure-tempo)
- [Use environment variables in the configuration](#use-environment-variables-in-the-configuration)
Expand Down Expand Up @@ -426,7 +432,7 @@ query_frontend:
# Enable multi-tenant queries.
# If enabled, queries can be federated across multiple tenants.
# The tenant IDs involved need to be specified separated by a '|'
# character in the 'X-Scope-OrgID' header.
# character in the 'X-Scope-OrgID' header.
# note: this is no-op if cluster doesn't have `multitenancy_enabled: true`
# (default: true)
[multi_tenant_queries_enabled: <bool>]
Expand Down
12 changes: 10 additions & 2 deletions docs/sources/tempo/configuration/querying.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,22 @@ Grafana Cloud comes pre-configured with a Tempo data source.

If you are using Grafana on-prem, you need to [set up the Tempo data source](/docs/grafana/latest/datasources/tempo).

{{% admonition type="tip" %}}
If you want to see what you can do with tracing data in Grafana, try the [Intro to Metrics, Logs, Traces, and Profiling example]({{< relref "../getting-started/docker-example" >}}).
{{% /admonition %}}

This video explains how to add data sources, including Loki, Tempo, and Mimir, to Grafana and Grafana Cloud. Tempo data source set up starts at 4:58 in the video.

{{< youtube id="cqHO0oYW6Ic" >}}

## Configure the data source

To query Tempo with Grafana:

1. Point the Grafana data source at your Tempo query frontend (or monolithic mode Tempo).
1. Enter the URL: `http://<tempo hostname>:<http port number>`. For most of [our examples](https://github.com/grafana/tempo/tree/main/example/docker-compose) the following works.
1. Enter the URL: `http://<tempo hostname>:<http port number>`. For most of [the Tempo examples](https://github.com/grafana/tempo/tree/main/example/docker-compose) the following works.

The port of 3200 is a common port used in our examples. Tempo default HTTP port is 80.

Prior to Grafana 7.5.x, Grafana was not able to query Tempo directly and required an intermediary, Tempoo-Query.
This [the Grafana 7.4.x example](https://github.com/grafana/tempo/tree/main/example/docker-compose/grafana7.4) to explains configuration. The url entered will be `http://<tempo-query hostname>:16686/`.
This [the Grafana 7.4.x example](https://github.com/grafana/tempo/tree/main/example/docker-compose/grafana7.4) to explains configuration. The URL entered is `http://<tempo-query hostname>:16686/`.
3 changes: 3 additions & 0 deletions docs/sources/tempo/getting-started/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,9 @@ For more information about traces, refer to [What are traces?]({{< relref "../tr

Grafana Tempo is an open-source, easy-to-use, and high-scale distributed tracing backend. Tempo lets you search for traces, generate metrics from spans, and link your tracing data with logs and metrics.

<!-- how to get started with distributed tracing -->
{{< youtube id="zDrA7Ly3ovU" >}}

To build a tracing pipeline, you need four major components:
client instrumentation, pipeline, backend, and visualization.

Expand Down
11 changes: 11 additions & 0 deletions docs/sources/tempo/getting-started/tempo-in-grafana.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,3 +62,14 @@ The JSON data can be downloaded via the Tempo API or the [Inspector panel](/docs
{{% admonition type="note" %}}
To perform this action on Grafana 10.1 or later, select a Tempo data source, select **Explore** from the main menu, and then select **Import trace**.
{{% /admonition %}}

## Link tracing data with profiles

Using Trace to profiles, you can use Grafana’s ability to correlate different signals by adding the functionality to link between traces and profiles.

Trace to profiles lets you link your [Grafana Pyroscope](/docs/pyroscope/) data source to tracing data in Grafana or Grafana Cloud.
When configured, this connection lets you run queries from a trace span into the profile data.

For more information, refer to the [Traces to profiles documentation](https://grafana.com/docs/grafana/<GRAFANA_VERSION>/datasources/tempo/configure-tempo-data-source#trace-to-profiles) and the [Grafana Pyroscope data source documentation](https://docs/grafana/<GRAFANA_VERSION>/datasources/grafana-pyroscope/).

{{< youtube id="AG8VzfFMLxo" >}}
14 changes: 14 additions & 0 deletions docs/sources/tempo/traces.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ It may optionally include key/value attributes that are relevant to the span its
By definition, traces are never complete. You can always push a new batch of spans, even if days have passed since the last one.
When receiving a query requesting a stored trace, tracing backends (for example Tempo), find all the spans for that specific trace and collate them into a returned result. For that reason, issues can start to arise predominantly on retrieval of the trace data if you are creating traces that are extremely large in size.

<!-- Explanation of traces -->
{{< youtube id="ZirbR0ZJIOs" >}}

## Example of traces

Firstly, a user on your website enters their email address into a form to sign up for your mailing list. They click **Enter**. This initial transaction has a trace ID that is subsequently associated with every interaction in the chain of processes within a system.
Expand Down Expand Up @@ -60,6 +63,17 @@ Metrics, logs, and traces form the three pillars of observability.
Metrics provide the health data about the state of a system.
Logs provide an audit trail of activity that create an informational context. Traces tell you what happens at each step or action in a data pathway.

## Traces versus metrics and logs

Let's say a server takes too long to send data and triggers an alert because that time range is outside of an acceptable threshold. The metrics for those alert help you identify problems and patterns.

Traces help you pin-point where in your system or services the problem happens. Traces provide context around the issue you're investigating. For example, traces can pinpoint the specific service where the error started and how that error moved through the system.

Logs provide the verbose details about the context. For example, the log could show multiple connection refused errors showing why the email server took too long to send data.

<!-- What traces provide that logs and metrics don't -->
{{< youtube id="0tlp7QCPu0k" >}}

## Tracing versus profiling

Tracing provides an overview of tasks performed by an operation or set of work.
Expand Down

0 comments on commit aa9cee9

Please sign in to comment.