PMM-9288 Extended profiler.

This commit is contained in:
Jiří Čtvrtka
2025-02-11 14:06:24 +01:00
parent 80bc02916d
commit d78e4a1396

View File

@@ -48,28 +48,37 @@ type SystemProfile struct {
SaveState int `bson:"saveState"` SaveState int `bson:"saveState"`
Stage string `bson:"stage"` Stage string `bson:"stage"`
Works int `bson:"works"` Works int `bson:"works"`
DocsExamined int `bson:"docsExamined"`
} `bson:"execStats"` } `bson:"execStats"`
KeyUpdates int `bson:"keyUpdates"` KeyUpdates int `bson:"keyUpdates"`
KeysExamined int `bson:"keysExamined"` KeysExamined int `bson:"keysExamined"`
Locks struct { Locks struct {
Collection struct { Collection struct {
AcquireCount struct { AcquireCount struct {
R int `bson:"R"` R int `bson:"R"`
RShared int `bson:"r"`
} `bson:"acquireCount"` } `bson:"acquireCount"`
} `bson:"Collection"` } `bson:"Collection"`
Database struct { Database struct {
AcquireCount struct { AcquireCount struct {
R int `bson:"r"` RShared int `bson:"r"`
} `bson:"acquireCount"` } `bson:"acquireCount"`
AcquireWaitCount struct {
RShared int `bson:"r"`
} `bson:"acquireWaitCount"`
TimeAcquiringMicros struct {
RShared int `bson:"r"`
} `bson:"timeAcquiringMicros"`
} `bson:"Database"` } `bson:"Database"`
Global struct { Global struct {
AcquireCount struct { AcquireCount struct {
R int `bson:"r"` RShared int `bson:"r"`
WShared int `bson:"w"`
} `bson:"acquireCount"` } `bson:"acquireCount"`
} `bson:"Global"` } `bson:"Global"`
MMAPV1Journal struct { MMAPV1Journal struct {
AcquireCount struct { AcquireCount struct {
R int `bson:"r"` RShared int `bson:"r"`
} `bson:"acquireCount"` } `bson:"acquireCount"`
} `bson:"MMAPV1Journal"` } `bson:"MMAPV1Journal"`
} `bson:"locks"` } `bson:"locks"`
@@ -81,6 +90,7 @@ type SystemProfile struct {
PlanSummary string `bson:"planSummary"` PlanSummary string `bson:"planSummary"`
Protocol string `bson:"protocol"` Protocol string `bson:"protocol"`
Query bson.D `bson:"query"` Query bson.D `bson:"query"`
QueryHash string `bson:"queryHash"`
UpdateObj bson.D `bson:"updateobj"` UpdateObj bson.D `bson:"updateobj"`
Command bson.D `bson:"command"` Command bson.D `bson:"command"`
OriginatingCommand bson.D `bson:"originatingCommand"` OriginatingCommand bson.D `bson:"originatingCommand"`
@@ -88,6 +98,13 @@ type SystemProfile struct {
Ts time.Time `bson:"ts"` Ts time.Time `bson:"ts"`
User string `bson:"user"` User string `bson:"user"`
WriteConflicts int `bson:"writeConflicts"` WriteConflicts int `bson:"writeConflicts"`
Storage struct {
Data struct {
BytesRead int `bson:"bytesRead"`
TimeReadingMicros int `bson:"timeReadingMicros"`
} `bson:"data"`
} `bson:"storage"`
AppName string `bson:"appName"`
} }
func NewExampleQuery(doc SystemProfile) ExampleQuery { func NewExampleQuery(doc SystemProfile) ExampleQuery {