Skip to content

Commit

Permalink
docs: Update readme to highlight explore profiles (#3581)
Browse files Browse the repository at this point in the history
  • Loading branch information
Rperry2174 authored Sep 24, 2024
1 parent caf06d3 commit 4451f69
Showing 1 changed file with 49 additions and 35 deletions.
84 changes: 49 additions & 35 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,30 +10,42 @@
[![DockerHub](https://img.shields.io/docker/pulls/grafana/pyroscope.svg)](https://hub.docker.com/r/grafana/pyroscope)
[![GoDoc](https://godoc.org/github.com/grafana/pyroscope?status.svg)](https://godoc.org/github.com/grafana/pyroscope)

### 🌟 What is Grafana Pyroscope?
## 🎉 **Announcement: The new Explore Profiles UI is here!**

Grafana Pyroscope is an open source continuous profiling platform. It will help you:
* Find performance issues and bottlenecks in your code
* Use high-cardinality tags/labels to analyze your application
* Resolve issues with high CPU utilization
* Track down memory leaks
* Understand the call tree of your application
* Auto-instrument your code to link profiling data to traces
We are thrilled to announce the launch of the **Explore Profiles UI**, a brand-new way to explore and analyze your profiling data—now available as part of the Grafana Explore Apps suite! This new app brings you a **queryless**, **intuitive** experience for visualizing your profiling data, simplifying the entire process without the need to write complex queries.

## 🔥 [Pyroscope Live Demo](https://play.grafana.org/a/grafana-pyroscope-app/)
https://github.com/user-attachments/assets/4db19ec7-86f3-4701-8f5f-9b7ffcebd49c

[![Pyroscope GIF Demo](https://user-images.githubusercontent.com/23323466/143324845-16ff72df-231e-412d-bd0a-38ef2e09cba8.gif)](https://demo.pyroscope.io/)
## What is Grafana Pyroscope?

## 🎉 Features
Grafana Pyroscope is a continuous profiling platform designed to surface performance insights from your applications, helping you optimize resource usage such as CPU, memory, and I/O operations. With Pyroscope, you can both **proactively** and **reactively** address performance bottlenecks across your system.

* Minimal CPU overhead
* Horizontally scalable
* Efficient compression, low disk space requirements
* Can handle high-cardinality tags/labels
* Calculate the performance "diff" between various tags/labels and time periods
* Advanced analysis UI
The typical use cases are:

## 💻 Quick Start: Run Pyroscope Locally
- **Proactive:** Reducing resource consumption, improving application performance, or preventing latency issues.
- **Reactive:** Quickly resolving incidents with line-level detail and debugging active CPU, memory, or I/O bottlenecks.

Pyroscope provides powerful tools to give you a comprehensive view of your application's behavior while allowing you to drill down into specific services for more targeted root cause analysis.

## How Does Pyroscope Work?

![deployment_diagram](https://grafana.com/media/docs/pyroscope/pyroscope_client_server_diagram_09_18_2024.png)

Pyroscope consists of three main components:
- **Pyroscope Server:** The server component that stores and processes profiling data.
- **Pyroscope SDKs(push) or Grafana alloy(pull) :** The client-side part of Pyroscope that collects profiling data from your applications and sends it to the server.
- **Explore Profiles UI:** A queryless, intuitive UI for visualizing and analyzing profiling data.

---

## [Pyroscope Live Demo](https://play.grafana.org/a/grafana-pyroscope-app/)

[![Pyroscope GIF Demo](https://github.com/user-attachments/assets/2faeb985-f2b6-4311-ad29-e318e850c025)](https://play.grafana.org/a/grafana-pyroscope-app/)


---

## **Quick Start: Run Pyroscope server locally**

### Homebrew
```sh
Expand All @@ -48,6 +60,25 @@ docker run -it -p 4040:4040 grafana/pyroscope

For more documentation on how to configure Pyroscope server, see [our server documentation](https://grafana.com/docs/pyroscope/latest/configure-server/).

## **Quick Start: Run Explore Profiles UI in Grafana**

<img width="1728" alt="image" src="https://github.com/user-attachments/assets/67691443-6450-45b9-8064-f41056c88ade">

### Grafana Cloud
The app UI and server are both installed and running auomatically -- just start sending data!

### Grafana OSS
You can run the Explore profiles UI in Grafana by installing the plugin from the [Grafana Plugin Directory](https://grafana.com/grafana/plugins/grafana-pyroscope-app/)

For more information, check out the [Explore Profiles README](https://github.com/grafana/explore-profiles)

## Documentation

For more information on how to use Pyroscope with other programming languages, install it on Linux, or use it in production environment, check out our documentation:

* [Getting Started](https://grafana.com/docs/pyroscope/latest/get-started/)
* [Deployment Guide](https://grafana.com/docs/pyroscope/latest/deploy-kubernetes/)
* [Pyroscope Architecture](https://grafana.com/docs/pyroscope/latest/reference-pyroscope-architecture/)

## Send data to server via Pyroscope agent (language specific)

Expand Down Expand Up @@ -99,23 +130,6 @@ For more documentation on how to add the Pyroscope agent to your code, see the [
</tr>
</table>

## Deployment Diagram

![deployment_diagram](https://grafana.com/media/docs/pyroscope/pyroscope_client_server_diagram_09_18_2024.png)

## Documentation

For more information on how to use Pyroscope with other programming languages, install it on Linux, or use it in production environment, check out our documentation:

* [Getting Started](https://grafana.com/docs/pyroscope/latest/get-started/)
* [Deployment Guide](https://grafana.com/docs/pyroscope/latest/deploy-kubernetes/)
* [Pyroscope Architecture](https://grafana.com/docs/pyroscope/latest/reference-pyroscope-architecture/)


## Downloads

You can download the latest version of pyroscope for macOS, linux and Docker from our [Releases page](https://github.com/grafana/pyroscope/releases).

## [Supported Languages][supported languages]

Our documentation contains the most recent list of [supported languages] and also an overview over what [profiling types are supported per language][profile-types-languages].
Expand Down

0 comments on commit 4451f69

Please sign in to comment.