A Terminal Flamegraph Viewer
Project description
Flameshow
Flameshow is a terminal Flamegraph viewer.
Features
- Renders Flamegraphs in your terminal
- Supports zooming in and displaying percentages
- Keyboard input is prioritized
- All operations can also be performed using the mouse.
- Can switch to different sample types
Install
Flameshow is written in pure Python, so you can install via pip
:
pip install flameshow
But you can also run it through nix:
nix run github:laixintao/flameshow
# Or if you want to install it imperatively:
nix profile install github:laixintao/flameshow
Usage
View golang's goroutine dump:
$ curl http://localhost:9100/debug/pprof/goroutine -o goroutine.out
$ flameshow goroutine.out
After entering the TUI, the available actions are listed on Footer:
- q for quit
- h j k l or ← ↓ ↑ → for moving around, and Enter for zoom in, then Esc for zoom out.
- You can also use a mouse, hover on a span will show it details, and click will zoom it.
Supported Formats
As far as I know, there is no standard specification for profiles. Different languages or tools might generate varying profile formats. I'm actively working on supporting more formats. Admittedly, I might not be familiar with every tool and its specific format. So, if you'd like Flameshow to integrate with a tool you love, please feel free to reach out and submit an issue.
- Golang pprof
- Brendan Gregg's Flamegraph
- Python Austin
Development
If you want to dive into the code and make some changes, start with:
git clone git@github.com:laixintao/flameshow.git
cd flameshow
pip install poetry
poetry install
This project is proudly powered by textual.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file flameshow-1.1.3.tar.gz
.
File metadata
- Download URL: flameshow-1.1.3.tar.gz
- Upload date:
- Size: 2.3 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.10.12 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 12cb24239aa0487b81ce6ab211f3e02dbd58897bd0c918841551b11148831fa0 |
|
MD5 | c5f6250f69d5fd910464949074dbf538 |
|
BLAKE2b-256 | 7f4a09cce1431809d7e15df9b4e79e9ae9106ba4812ed5d9735a2399437676e9 |
File details
Details for the file flameshow-1.1.3-py3-none-any.whl
.
File metadata
- Download URL: flameshow-1.1.3-py3-none-any.whl
- Upload date:
- Size: 24.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.10.12 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bed779554e15fbb38ba25827f4a7b0d64db234d52a4ad469073d71a175c485e1 |
|
MD5 | 7539dade32eee40846689cbc6e76d621 |
|
BLAKE2b-256 | 99a97cee210cca075c66fed1e7c21b95b363fac30e1951db130922ea026d2405 |