-
Notifications
You must be signed in to change notification settings - Fork 18.5k
Description
Counter names
crash/crash
crash/malformed
crash/no-running-goroutine
Description
crash/crash - compressed stack traces of running goroutines from unexpected crashes
crash/malformed - counter of failures to parse the stack trace
crash/no-running-goroutine - counter of stack traces that have no goroutine in "running" state (e.g. deadlock, lossy parse)
Rationale
The crash/crash stack counters are how we detect unexpected crashes (for any reason) in gopls, and any other Go-project tool that uses x/telemetry/crashmonitor. This helps us diagnose and fix bugs speedily, and assess their severity.
Do the counters carry sensitive user information?
No. In particular, the compressed stacks are generated by joining a list of program counters with the executable's symbol table, so there is no possibility of application data values being incorporated.
How?
https://pkg.go.dev/golang.org/x/telemetry/crashmonitor
Proposed Graph Config
(https://go.corp.google.com/go-telemetry-configuration)
counter: crash/crash
title: Unexpected Go crashes
description: stacks of goroutines running when the Go program crashed
type: stack
program: golang.org/x/tools/gopls
depth: 16
version: v0.15.0
counter: crash/malformed
title: Failure to parse runtime crash output
description: count of runtime crash messages that failed to parse
type: histogram
program: golang.org/x/tools/gopls
version: v0.15.0
counter: crash/no-running-goroutine
title: Failure to identify any running goroutine in the crash output
description: count of runtime crash messages that don't have a running goroutine (e.g. deadlock)
type: histogram
program: golang.org/x/tools/gopls
version: v0.15.0
New or Update
New
Metadata
Metadata
Assignees
Labels
Type
Projects
Status