mirror of
https://github.com/netbirdio/gvisor.git
synced 2026-05-22 17:12:49 -07:00
Add stuck tasks and startup stuck tasks to weirdness metric
Weirdness metric will replace the below two metrics: - watchdog/stuck_startup_detected - watchdog/stuck_tasks_detected PiperOrigin-RevId: 373895696
This commit is contained in:
committed by
gVisor bot
parent
820c77d5e7
commit
8e8b752524
@@ -40,8 +40,8 @@ var (
|
||||
createdSentryMetrics = false
|
||||
|
||||
// WeirdnessMetric is a metric with fields created to track the number
|
||||
// of weird occurrences such as time fallback, partial_result and
|
||||
// vsyscall count.
|
||||
// of weird occurrences such as time fallback, partial_result, vsyscall
|
||||
// count, watchdog startup timeouts and stuck tasks.
|
||||
WeirdnessMetric *Uint64Metric
|
||||
|
||||
// SuspiciousOperationsMetric is a metric with fields created to detect
|
||||
@@ -401,10 +401,10 @@ func CreateSentryMetrics() {
|
||||
|
||||
createdSentryMetrics = true
|
||||
|
||||
WeirdnessMetric = MustCreateNewUint64Metric("/weirdness", true /* sync */, "Increment for weird occurrences of problems such as time fallback, partial result and vsyscalls invoked in the sandbox.",
|
||||
WeirdnessMetric = MustCreateNewUint64Metric("/weirdness", true /* sync */, "Increment for weird occurrences of problems such as time fallback, partial result, vsyscalls invoked in the sandbox, watchdog startup timeouts and stuck tasks.",
|
||||
Field{
|
||||
name: "weirdness_type",
|
||||
allowedValues: []string{"time_fallback", "partial_result", "vsyscall_count"},
|
||||
allowedValues: []string{"time_fallback", "partial_result", "vsyscall_count", "watchdog_stuck_startup", "watchdog_stuck_tasks"},
|
||||
})
|
||||
|
||||
SuspiciousOperationsMetric = MustCreateNewUint64Metric("/suspicious_operations", true /* sync */, "Increment for suspicious operations such as opening an executable file to write from a gofer.",
|
||||
|
||||
@@ -243,6 +243,7 @@ func (w *Watchdog) waitForStart() {
|
||||
}
|
||||
|
||||
stuckStartup.Increment()
|
||||
metric.WeirdnessMetric.Increment("watchdog_stuck_startup")
|
||||
|
||||
var buf bytes.Buffer
|
||||
buf.WriteString(fmt.Sprintf("Watchdog.Start() not called within %s", w.StartupTimeout))
|
||||
@@ -316,6 +317,7 @@ func (w *Watchdog) runTurn() {
|
||||
// Task.UninterruptibleSleepStart/Finish.
|
||||
tc = &offender{lastUpdateTime: lastUpdateTime}
|
||||
stuckTasks.Increment()
|
||||
metric.WeirdnessMetric.Increment("watchdog_stuck_tasks")
|
||||
newTaskFound = true
|
||||
}
|
||||
newOffenders[t] = tc
|
||||
|
||||
Reference in New Issue
Block a user