Skip to content

Commit

Permalink
[DOC] Fix page weights for the table of contents (#3301)
Browse files Browse the repository at this point in the history
  • Loading branch information
knylander-grafana committed May 16, 2024
1 parent 55bb0be commit eb9dd3c
Show file tree
Hide file tree
Showing 10 changed files with 38 additions and 26 deletions.
38 changes: 25 additions & 13 deletions docs/sources/configure-client/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,35 +3,45 @@ aliases:
- /docs/phlare/latest/operators-guide/configure-agent/
- /docs/phlare/latest/configure-client/
title: "Configure the client to send profiles"
menuTitle: "Configure the client"
menuTitle: "Configure the client to send profiles"
description: "Learn how to configure the client to send profiles from your application."
weight: 35
weight: 300
---

# Configure the client to send profiles

Pyroscope is a continuous profiling database that allows you to analyze the performance of your applications.
When sending profiles to Pyroscope, you can choose between two primary methods: SDK Instrumentation and auto-instrumentation using the Grafana Agent.
When sending profiles to Pyroscope, you can choose between two primary methods: SDK instrumentation and auto-instrumentation using Grafana Alloy or Grafana Agent.

This document explains these two techniques and guide you when to choose each one.

![Pyroscope agent server diagram](https://grafana.com/media/docs/pyroscope/pyroscope_client_server_diagram.png)

## About auto-instrumentation with Grafana Agent
## About auto-instrumentation with Grafana Alloy or Agent collectors

You can send data from your application using Grafana Alloy or Grafana Agent collectors.
Both collectors support profiling with eBPF, Java, and Golang in pull mode.

[Grafana Alloy](https://grafana.com/docs/alloy/latest/) is a vendor-neutral distribution of the OpenTelemetry (OTel) Collector.
Alloy uniquely combines the very best OSS observability signals in the community.
Grafana Alloy uses configuration file written using River.

Alloy is the recommended collector instead of Grafana Agent.
New installations should use Alloy.

{{< docs/shared lookup="agent-deprecation.md" source="alloy" version="next" >}}

The Grafana Agent is a component that runs alongside your application and periodically gathers profiling data from it.
The Grafana collectors is a component that runs alongside your application and periodically gathers profiling data from it.
This method is suitable when you want to collect profiles from existing applications without modifying their source code.
This approach is simplified with the eBPF profiling option that doesn't necessitate pull or push mechanisms.

Here's how it works:

1. Install and configure Grafana Agent on the same machine or container where your application is running
2. The Agent periodically retrieves your application's performance profiling data, regardless of the language or technology stack your application is using
3. The captured profiles are then sent to the Pyroscope server for storage and analysis
1. Install and configure the collector on the same machine or container where your application is running.
2. The collector periodically retrieves your application's performance profiling data, regardless of the language or technology stack your application is using.
3. The captured profiles are then sent to the Pyroscope server for storage and analysis.

Using Grafana Agent provides a hassle-free option, especially when dealing with multiple applications or microservices, allowing you to centralize the profiling process without changing your application's codebase.
Using a collector provides a hassle-free option, especially when dealing with multiple applications or microservices, allowing you to centralize the profiling process without changing your application's codebase.

## About instrumentation with Pyroscope SDKs

Expand All @@ -40,15 +50,17 @@ Use the SDKs when you want complete control over the profiling process or when t

Here's how to use Pyroscope SDKs:

1. Install the relevant Pyroscope SDK for your application's programming language (for example, pip package, npm package, Ruby gem).
2. Instrument your application's code using the SDK to capture the necessary profiling data
3. SDK automatically periodically push the captured profiles to the Pyroscope server for storage and analysis
1. Install the relevant Pyroscope SDK for your application's programming language (for example, `pip` package, `npm` package, Ruby gem).
2. Instrument your application's code using the SDK to capture the necessary profiling data.
3. SDK automatically periodically pushes the captured profiles to the Pyroscope server for storage and analysis.

By using the Pyroscope SDKs, you have the flexibility to customize the profiling process according to your application's specific requirements.
You can selectively profile specific sections of code or send profiles at different intervals, depending on your needs.

## Choose Grafana Agent or Pyroscope SDK to send profiles

{{< docs/shared lookup="agent-deprecation.md" source="alloy" version="next" >}}

You can use Grafana Agent for auto-instrumentation or the Pyroscope instrumentation SDKs.
The method you choose depends on your specific use case and requirements.

Expand Down Expand Up @@ -120,4 +132,4 @@ In Pyroscope, a period (`.`) is not a valid character inside of tags and labels.

## Assistance with Pyroscope

If you have more questions, feel free to reach out in [our Slack channel](https://grafana.slack.com/) or create an [issue on GitHub](https://github.com/grafana/pyroscope) and the Pyroscope team will help!
If you have more questions, feel free to reach out in [the community Slack channel](https://grafana.slack.com/) or create an [issue on GitHub](https://github.com/grafana/pyroscope).
Original file line number Diff line number Diff line change
Expand Up @@ -21,9 +21,9 @@ To set up eBPF profiling with Grafana Agent on Kubernetes, you need to:

Before you begin, you need:

- [helm][helm] and [kubectl][kubectl] installed with access to your Kubernetes cluster.
- A Pyroscope server where the agent will send profiling data.
- Access to Grafana with the [Grafana Pyroscope datasource][pyroscope-ds] provisioned.
- [Helm][helm] and [kubectl][kubectl] installed with access to your Kubernetes cluster.
- A Pyroscope server where the Agent will send profiling data.
- Access to Grafana with the [Grafana Pyroscope data source][pyroscope-ds] provisioned.

{{< admonition type="note" >}}
If you don't have a Grafana and/or a Pyroscope server, you can use the [Grafana Cloud][gcloud] free plan to get started.
Expand Down Expand Up @@ -52,7 +52,7 @@ helm repo add grafana https://grafana.github.io/helm-charts
helm repo update
```

You can verify that the repository was added successfully by running:
Verify that the repository was added successfully by running:

```shell
helm search repo grafana/grafana-agent
Expand Down Expand Up @@ -118,7 +118,7 @@ To install the Grafana Agent, run:
helm install pyroscope-ebpf grafana/grafana-agent -f values.yaml
```

Once configured, the Agent will start collecting eBPF profiles and send them to the Pyroscope server.
Once configured, the Agent starts collecting eBPF profiles and send them to the Pyroscope server.

## Verify profiles are received

Expand Down
2 changes: 1 addition & 1 deletion docs/sources/configure-server/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ keywords:
- Pyroscope server configuration
menuTitle: Configure the server
title: Configure the Pyroscope server
weight: 40
weight: 500
---

# Configure the Pyroscope server
Expand Down
2 changes: 1 addition & 1 deletion docs/sources/deploy-kubernetes/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ aliases:
description: Learn how to get started with Pyroscope on Kubernetes.
menuTitle: Deploy on Kubernetes
title: Deploy Pyroscope on Kubernetes
weight: 45
weight: 400
---

# Deploy Pyroscope on Kubernetes
Expand Down
2 changes: 1 addition & 1 deletion docs/sources/get-started/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ aliases:
description: Learn how to get started with Pyroscope.
menuTitle: Get started
title: Get started with Pyroscope
weight: 30
weight: 250
---

# Get started with Pyroscope
Expand Down
2 changes: 1 addition & 1 deletion docs/sources/introduction/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Introduction
menuTitle: Introduction
description: Learn about Pyrsocope and profiling.
weight: 10
weight: 200
keywords:
- Pyroscope
- Profiling
Expand Down
2 changes: 1 addition & 1 deletion docs/sources/reference-pyroscope-architecture/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Pyroscope architecture"
menuTitle: "Reference: Pyroscope Architecture"
description: "Learn about the Pyroscope architecture components and services."
weight: 60
weight: 600
---

# Pyroscope architecture
Expand Down
2 changes: 1 addition & 1 deletion docs/sources/release-notes/_index.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
title: Release notes
description: Release notes for Grafana Pyroscope
weight: 2
weight: 100
---

# Release notes
Expand Down
2 changes: 1 addition & 1 deletion docs/sources/upgrade-guide/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: Upgrade your Grafana Pyroscope installation
menuTitle: Upgrade
description: Upgrade your Pyroscope installation to the latest version.
weight: 10
weight: 350
keywords:
- pyroscope
- phlare
Expand Down
2 changes: 1 addition & 1 deletion docs/sources/view-and-analyze-profile-data/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ menuTitle: View and analyze profile data
description: How to use Pyroscope to view and analyze profile data.
aliases:
- ../ingest-and-analyze-profile-data/
weight: 50
weight: 500
keywords:
- pyroscope
- UI
Expand Down

0 comments on commit eb9dd3c

Please sign in to comment.