Documentation
¶
Index ¶
Constants ¶
const ( ReasonIdle = "idle" ReasonPoolClosed = "poolClosed" ReasonStale = "stale" ReasonConnectionErrored = "connectionError" ReasonTimedOut = "timeout" )
strings for pool command monitoring reasons
const ( ConnectionClosed = "ConnectionClosed" PoolCreated = "ConnectionPoolCreated" ConnectionCreated = "ConnectionCreated" GetFailed = "ConnectionCheckOutFailed" GetSucceeded = "ConnectionCheckedOut" ConnectionReturned = "ConnectionCheckedIn" PoolCleared = "ConnectionPoolCleared" PoolClosedEvent = "ConnectionPoolClosed" )
strings for pool command monitoring types
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CommandFailedEvent ¶
type CommandFailedEvent struct {
CommandFinishedEvent
Failure string
}
CommandFailedEvent represents an event generated when a command's execution fails.
type CommandFinishedEvent ¶
type CommandFinishedEvent struct {
DurationNanos int64
CommandName string
RequestID int64
ConnectionID string
}
CommandFinishedEvent represents a generic command finishing.
type CommandMonitor ¶
type CommandMonitor struct {
Started func(context.Context, *CommandStartedEvent)
Succeeded func(context.Context, *CommandSucceededEvent)
Failed func(context.Context, *CommandFailedEvent)
}
CommandMonitor represents a monitor that is triggered for different events.
type CommandStartedEvent ¶
type CommandStartedEvent struct {
Command bson.Raw
DatabaseName string
CommandName string
RequestID int64
ConnectionID string
}
CommandStartedEvent represents an event generated when a command is sent to a server.
type CommandSucceededEvent ¶
type CommandSucceededEvent struct {
CommandFinishedEvent
Reply bson.Raw
}
CommandSucceededEvent represents an event generated when a command's execution succeeds.
type MonitorPoolOptions ¶ added in v1.1.0
type MonitorPoolOptions struct {
MaxPoolSize uint64 `json:"maxPoolSize"`
MinPoolSize uint64 `json:"minPoolSize"`
WaitQueueTimeoutMS uint64 `json:"maxIdleTimeMS"`
}
MonitorPoolOptions contains pool options as formatted in pool events
type PoolEvent ¶ added in v1.1.0
type PoolEvent struct {
Type string `json:"type"`
Address string `json:"address"`
ConnectionID uint64 `json:"connectionId"`
PoolOptions *MonitorPoolOptions `json:"options"`
Reason string `json:"reason"`
}
PoolEvent contains all information summarizing a pool event
type PoolMonitor ¶ added in v1.1.0
type PoolMonitor struct {
Event func(*PoolEvent)
}
PoolMonitor is a function that allows the user to gain access to events occurring in the pool