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

Single profiler goroutine #655

Merged
merged 35 commits into from
Aug 18, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
bb66958
wip: single profiler goroutine
vaind Jun 15, 2023
f219e9f
wip: continous profiling
vaind Jun 18, 2023
92d49b2
linter issues
vaind Jun 18, 2023
61ede03
minor cleanups
vaind Jun 19, 2023
0944a0b
profiler test improvements and internal fixes
vaind Jun 19, 2023
d6afa02
linter issue
vaind Jun 20, 2023
4605763
minor changes
vaind Jun 20, 2023
a441f6a
test improvements
vaind Jun 20, 2023
6c0364f
fix timestamps
vaind Jun 20, 2023
71f3098
minor refactorings
vaind Jun 22, 2023
b0c2fa5
test deflaking
vaind Jun 22, 2023
53e7949
wip: avoid unbounded memory growth
vaind Jul 5, 2023
12877bc
refactor: create goroutines at the time of profile slicing
vaind Jul 5, 2023
c7b2c7c
update profiler benchmarks
vaind Jul 5, 2023
60611ce
Merge branch 'master' into feat/single-profiler
vaind Jul 5, 2023
9d85794
linter issues
vaind Jul 6, 2023
95f7a5f
minor improvements
vaind Jul 6, 2023
bcd29eb
fix for go 1.18
vaind Jul 6, 2023
c1315c3
Merge branch 'master' into feat/single-profiler
cleptric Aug 3, 2023
aaeae24
Merge branch 'master' into feat/single-profiler
vaind Aug 10, 2023
eb6a9c1
Merge branch 'master' into feat/single-profiler
vaind Aug 11, 2023
ce9a03e
test: asserts in TestProfilerPanicOnTick
vaind Aug 11, 2023
cf79aff
feat: log panics in the profiler
vaind Aug 11, 2023
c753bd4
Merge branch 'master' into feat/single-profiler
vaind Aug 11, 2023
1dc1184
Merge branch 'master' into feat/single-profiler
vaind Aug 14, 2023
3f81eeb
Merge branch 'master' into feat/single-profiler
vaind Aug 14, 2023
7e08660
fix: profiler must be started fully before returning from startProfil…
vaind Aug 14, 2023
d843aaf
Merge branch 'master' into feat/single-profiler
vaind Aug 14, 2023
a174b6b
improve profiler test logging
vaind Aug 14, 2023
6598871
use a channel to signal profiler startup state
vaind Aug 14, 2023
20f12da
linter issue
vaind Aug 14, 2023
2aab77b
profiler test logging changes
vaind Aug 15, 2023
c5f1055
wait for profiler to stop
vaind Aug 15, 2023
a4cc539
Merge branch 'master' into feat/single-profiler
vaind Aug 17, 2023
240d519
chore: update changelog
vaind Aug 18, 2023
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
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@

## Unreleased

### Features

- Run single profiler even when profiling from multiple parallel goroutines ([#655](https://github.com/getsentry/sentry-go/pull/655))

### Bug fixes

- Fix trace function name parsing in profiler on go1.21+ ([#695](https://github.com/getsentry/sentry-go/pull/695))
Expand All @@ -11,6 +15,7 @@
The Sentry SDK team is happy to announce the immediate availability of Sentry Go SDK v0.23.0.

### Features

- Initial support for [Cron Monitoring](https://docs.sentry.io/product/crons/) ([#661](https://github.com/getsentry/sentry-go/pull/661))

This is how the basic usage of the feature looks like:
Expand Down Expand Up @@ -62,6 +67,7 @@ The Sentry SDK team is happy to announce the immediate availability of Sentry Go
- Expose SpanFromContext function ([#672](https://github.com/getsentry/sentry-go/pull/672))

### Bug fixes

- Make `Span.Finish` a no-op when the span is already finished ([#660](https://github.com/getsentry/sentry-go/pull/660))

## 0.22.0
Expand Down
9 changes: 4 additions & 5 deletions profile_sample.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,6 @@ type (

profileSample struct {
ElapsedSinceStartNS uint64 `json:"elapsed_since_start_ns"`
QueueAddress string `json:"queue_address,omitempty"`
StackID int `json:"stack_id"`
ThreadID uint64 `json:"thread_id"`
}
Expand All @@ -41,10 +40,10 @@ type (
profileStack []int

profileTrace struct {
Frames []*Frame `json:"frames"`
Samples []*profileSample `json:"samples"`
Stacks []profileStack `json:"stacks"`
ThreadMetadata map[string]profileThreadMetadata `json:"thread_metadata"`
Frames []*Frame `json:"frames"`
Samples []profileSample `json:"samples"`
Stacks []profileStack `json:"stacks"`
ThreadMetadata map[uint64]*profileThreadMetadata `json:"thread_metadata"`
}

profileInfo struct {
Expand Down
Loading