Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DOC] Fix minor issues in Span profiles doc #3099

Merged
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions docs/sources/configure-client/trace-span-profiles/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,10 @@
weight: 35
---

# Linking tracing and profiling with span profiles
# Linking tracing and profiling with Span Profiles

Check failure on line 8 in docs/sources/configure-client/trace-span-profiles/_index.md

View workflow job for this annotation

GitHub Actions / doc-validator

[doc-validator] reported by reviewdog 🐶 The first heading 'Linking tracing and profiling with Span Profiles' doesn't match the title 'Linking tracing and profiling with span profiles'. Decide which of the first heading or title is most applicable and change the other to match, or update them both. Raw Output: {"message":"The first heading 'Linking tracing and profiling with Span Profiles' doesn't match the title 'Linking tracing and profiling with span profiles'.\nDecide which of the first heading or title is most applicable and change the other to match, or update them both.","location":{"path":"docs/sources/configure-client/trace-span-profiles/_index.md","range":{"start":{"line":8,"column":3},"end":{"line":8,"column":3}}},"severity":1,"source":{"name":"doc-validator"},"code":{"value":"h1-does-not-match-title"}}

Span Profiles are a powerful feature that further enhances the value of continuous profiling. Span Profiles offer a novel approach to profiling by providing detailed insights into specific execution scopes of applications, moving beyond the traditional system-wide analysis to offer a more dynamic, focused analysis of individual requests or trace spans.
Span Profiles are a powerful feature that further enhances the value of continuous profiling.
Span Profiles offer a novel approach to profiling by providing detailed insights into specific execution scopes of applications, moving beyond the traditional system-wide analysis to offer a more dynamic, focused analysis of individual requests or trace spans.

This method enhances understanding of application behavior by directly linking traces with profiling data, enabling engineering teams to pinpoint and resolve performance bottlenecks with precision.

Expand All @@ -24,6 +25,6 @@
- Go: [Span profiles with Traces to profiles (Go)]({{< relref "./go-span-profiles" >}})
- Java: [Span profiles with Traces to profiles (Java)]({{< relref "./java-span-profiles" >}})
- Ruby: [Span profiles with Traces to profiles (Ruby)]({{< relref "./ruby-span-profiles" >}})
- Grafana Tempo: Visualize and analyze Span Profiles within the Grafana Tempo UI
- Grafana Tempo: Visualize and analyze Span Profiles within the Grafana using a Tempo data source.

To learn more check out our product announcement blog introducing the [span profiles feature](/blog/2024/02/06/combining-tracing-and-profiling-for-enhanced-observability-introducing-span-profiles/)
To learn more, check out our product announcement blog: [Introducing Span Profiles](/blog/2024/02/06/combining-tracing-and-profiling-for-enhanced-observability-introducing-span-profiles/).
Original file line number Diff line number Diff line change
Expand Up @@ -99,8 +99,7 @@ To learn how to set up Traces to profiles and view the span profiles, refer to [

## Examples

Check out the [examples directory](https://github.com/grafana/pyroscope/tree/main/examples/tracing/tempo) in the Pyroscope GitHub repository to
find a complete example application that demonstrates tracing integration features.
Check out the [examples](https://github.com/grafana/pyroscope/tree/main/examples/tracing/tempo) directory for a complete demo application that shows tracing integration features.

<!-- ## Using tracing exemplars manually

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ weight: 100

## Before you begin

Your applications must be instrumented for profiling and tracing before you can use span profiles.
Your applications must be instrumented for profiling and tracing before you can use span profiles.

* Profiling: Your application must be instrumented with Pyroscopes Java client SDK. If you haven't done this yet, please refer to the [Java ()]({{< relref "../language-sdks/java" >}}) guide.
* Tracing: Your application must be instrumented with OpenTelemetry traces. If you haven't done this yet, please refer to the [OpenTelemetry](https://opentelemetry.io/docs/java/getting-started/) guide.
Expand All @@ -29,9 +29,9 @@ link traces with the profiling data, and find resource usage for specific lines

## Configure the otel-profiling-java package

To start collecting Span Profiles for your Java application, you need to include [otel-profiling-java](https://github.com/pyroscope-io/otel-profiling-java) in your code.
To start collecting Span Profiles for your Java application, you need to include [otel-profiling-java](https://github.com/pyroscope-io/otel-profiling-java) in your code.

This package is a `TracerProvider` implementation, that labels profiling data with span IDs which makes it possible to query for span-specific profiling data in Grafana Tempo UI.
This package is a `TracerProvider` implementation, that labels profiling data with span IDs which makes it possible to query for span-specific profiling data in Grafana Tempo UI.

```shell
java -jar ./build/libs/rideshare-1.0-SNAPSHOT.jar \
Expand All @@ -51,7 +51,7 @@ Next, you need to create and configure the tracer provider:
implementation("io.pyroscope:otel:0.10.1.1")

// obtain SdkTracerProviderBuilder
SdkTracerProviderBuilder tpBuilder = ...
SdkTracerProviderBuilder tpBuilder = ...

// Add PyroscopeOtelSpanProcessor to SdkTracerProviderBuilder
PyroscopeOtelConfiguration pyroscopeTelemetryConfig = new PyroscopeOtelConfiguration.Builder()
Expand Down Expand Up @@ -96,5 +96,4 @@ The profile type or app must be selected for the query to be valid. Grafana does

## Examples

Check out the [examples](https://github.com/grafana/pyroscope/tree/main/examples/tracing/tempo) directory in our repository to
find a complete example application that demonstrates tracing integration features.
Check out the [examples](https://github.com/grafana/pyroscope/tree/main/examples/tracing/tempo) directory for a complete demo application that shows tracing integration features.
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ weight: 100

## Before you begin

Your applications must be instrumented for profiling and tracing before you can use span profiles.
Your applications must be instrumented for profiling and tracing before you can use span profiles.

* Profiling: Your application must be instrumented with Pyroscopes Ruby SDK. If you haven't done this yet, please refer to the [Ruby (push mode)]({{< relref "../language-sdks/ruby" >}}) guide.
* Tracing: Your application must be instrumented with OpenTelemetry traces. If you haven't done this yet, please refer to the [OpenTelemetry](https://opentelemetry.io/docs/ruby/getting-started/) guide.
Expand All @@ -29,9 +29,9 @@ link traces with the profiling data, and find resource usage for specific lines

## Configure the otel-profiling-ruby package

To start collecting Span Profiles for your Ruby application, you need to include [otel-profiling-ruby](https://github.com/pyroscope-io/otel-profiling-ruby) in your code.
To start collecting Span Profiles for your Ruby application, you need to include [otel-profiling-ruby](https://github.com/pyroscope-io/otel-profiling-ruby) in your code.

This package is a `TracerProvider` implementation, that labels profiling data with span IDs which makes it possible to query for span-specific profiling data in Grafana Tempo UI.
This package is a `TracerProvider` implementation, that labels profiling data with span IDs which makes it possible to query for span-specific profiling data in Grafana Tempo UI.

```shell
# Add to your Gemfile
Expand Down Expand Up @@ -75,5 +75,4 @@ The profile type or app must be selected for the query to be valid. Grafana does

## Examples

Check out the [examples](https://github.com/grafana/pyroscope/tree/main/examples/tracing/tempo) directory in our repository to
find a complete example application that demonstrates tracing integration features.
Check out the [examples](https://github.com/grafana/pyroscope/tree/main/examples/tracing/tempo) directory for a complete demo application that shows tracing integration features.
Loading