Skip to content

Flamegraph sharing#198

Merged
azat merged 1 commit intomainfrom
share-flamegraph
Nov 30, 2025
Merged

Flamegraph sharing#198
azat merged 1 commit intomainfrom
share-flamegraph

Conversation

@azat
Copy link
Owner

@azat azat commented Nov 30, 2025

Right now it simply upload the flamegraph into pastila.nl (directly into ClickHouse)

And uses profileURL=https://.cloud/?query=SELECT to get the data as plain text for the https://www.speedscope.app/

I need to prepare separate service for this (I've already registered domain) to make links more pleasant.

Also note, that existing speedscope links has been replaced with share via pastila.nl, but I think it is OK, for plain flamegraphs there is TUI, for everything else better to have internet connection.

Also some issues pops up:

  • ClickHosue sipHash128 differs from standard, so it have to be re-implemented instead of using existing create
  • Apparently clickhouse-rs does not works with INSERT with async_insert=1, this will be fixed later

Also note, that it does not uses end-to-end encryption (since speedscope cannot execute custom JS).

Fixes: #94

@azat azat force-pushed the share-flamegraph branch 3 times, most recently from 256aebd to 22a1d46 Compare November 30, 2025 22:23
@azat
Copy link
Owner Author

azat commented Nov 30, 2025

Egh, sometimes query may fail with Code: 201. DB::Exception: Quota for user paste for 60s has been exceeded: written_bytes = 10151933/10000000., need to tune limits

Right now it simply upload the flamegraph into pastila.nl (directly into
ClickHouse)

And uses `profileURL=https://.cloud/?query=SELECT` to get the data as
plain text for the https://www.speedscope.app/

I need to prepare separate service for this (I've already registered
domain) to make links more pleasant.

Also note, that existing speedscope links has been replaced with share
via pastila.nl, but I think it is OK, for plain flamegraphs there is
TUI, for everything else better to have internet connection.

Also some issues pops up:
- ClickHosue sipHash128 differs from standard, so it have to be
  re-implemented instead of using existing create
- Apparently clickhouse-rs does not works with INSERT with
  async_insert=1, this will be fixed later

Also note, that it **does not uses end-to-end encryption** (since
speedscope cannot execute custom JS).

Fixes: #94
@azat azat merged commit f88803d into main Nov 30, 2025
8 checks passed
@azat azat deleted the share-flamegraph branch November 30, 2025 22:29
@azat
Copy link
Owner Author

azat commented Nov 30, 2025

+1MiB for linux build, can be removed with replacing reqwest with clickhouse-rs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Flamegraph sharing

1 participant