Documentation ¶
Index ¶
- Constants
- Variables
- func IsAuthorization(err error) bool
- type AssertsStats
- type BasicStats
- type CacheStats
- type ClientStats
- type ClusterStatus
- type ColData
- type ColStatLine
- type ColStats
- type ColStatsData
- type Collection
- type CollectionLockStatus
- type CommandsStats
- type CommandsStatsValue
- type ConcurrentTransStats
- type ConcurrentTransactions
- type ConnectionStats
- type CursorStats
- type DBRecordStats
- type Db
- type DbData
- type DbStatLine
- type DbStats
- type DbStatsData
- type DetailedTCMallocStats
- type DocumentStats
- type DurStats
- type DurTiming
- type ExtraInfo
- type FlushStats
- type GenericTCMAllocStats
- type GlobalLockStats
- type LatencyStats
- type LockStats
- type LockStatus
- type LockUsage
- type MemStats
- type MetricsStats
- type MongoDB
- type MongoStatus
- type MongodbData
- type NamespacedLocks
- type NetworkStats
- type OpLatenciesStats
- type OpcountStats
- type OpenCursorStats
- type OperationStats
- type OplogStats
- type QueryExecutorStats
- type QueueStats
- type ReadWriteLockTimes
- type RecordAccesses
- type ReplApplyStats
- type ReplBufferStats
- type ReplExecutorStats
- type ReplNetworkStats
- type ReplSetMember
- type ReplSetStatus
- type ReplStats
- type ReplStatus
- type Server
- type ServerStatus
- type ShardHostStatLine
- type ShardHostStatsData
- type ShardStats
- type ShardStatsData
- type Ssl
- type StatHeader
- type StatLine
- type StorageStats
- type TCMallocStats
- type TTLStats
- type TransactionStats
- type WiredTiger
Constants ¶
const ( Always = 1 << iota // always activate the column Discover // only active when mongostat is in discover mode Repl // only active if one of the nodes being monitored is in a replset Locks // only active if node is capable of calculating lock info AllOnly // only active if mongostat was run with --all option MMAPOnly // only active if node has mmap-specific fields WTOnly // only active if node has wiredtiger-specific fields )
Flags to determine cases when to activate/deactivate columns for output.
const (
MongosProcess = "mongos"
)
Variables ¶
var ColDataStats = map[string]string{
"count": "Count",
"size": "Size",
"avg_obj_size": "AvgObjSize",
"storage_size": "StorageSize",
"total_index_size": "TotalIndexSize",
"ok": "Ok",
}
var DbDataStats = map[string]string{
"collections": "Collections",
"objects": "Objects",
"avg_obj_size": "AvgObjSize",
"data_size": "DataSize",
"storage_size": "StorageSize",
"num_extents": "NumExtents",
"indexes": "Indexes",
"index_size": "IndexSize",
"ok": "Ok",
}
var DefaultAssertsStats = map[string]string{
"assert_regular": "Regular",
"assert_warning": "Warning",
"assert_msg": "Msg",
"assert_user": "User",
"assert_rollovers": "Rollovers",
}
var DefaultClusterStats = map[string]string{
"jumbo_chunks": "JumboChunksCount",
}
var DefaultCommandsStats = map[string]string{
"aggregate_command_total": "AggregateCommandTotal",
"aggregate_command_failed": "AggregateCommandFailed",
"count_command_total": "CountCommandTotal",
"count_command_failed": "CountCommandFailed",
"delete_command_total": "DeleteCommandTotal",
"delete_command_failed": "DeleteCommandFailed",
"distinct_command_total": "DistinctCommandTotal",
"distinct_command_failed": "DistinctCommandFailed",
"find_command_total": "FindCommandTotal",
"find_command_failed": "FindCommandFailed",
"find_and_modify_command_total": "FindAndModifyCommandTotal",
"find_and_modify_command_failed": "FindAndModifyCommandFailed",
"get_more_command_total": "GetMoreCommandTotal",
"get_more_command_failed": "GetMoreCommandFailed",
"insert_command_total": "InsertCommandTotal",
"insert_command_failed": "InsertCommandFailed",
"update_command_total": "UpdateCommandTotal",
"update_command_failed": "UpdateCommandFailed",
}
var DefaultLatencyStats = map[string]string{
"latency_writes_count": "WriteOpsCnt",
"latency_writes": "WriteLatency",
"latency_reads_count": "ReadOpsCnt",
"latency_reads": "ReadLatency",
"latency_commands_count": "CommandOpsCnt",
"latency_commands": "CommandLatency",
}
var DefaultReplStats = map[string]string{
"repl_inserts": "InsertRCnt",
"repl_inserts_per_sec": "InsertR",
"repl_queries": "QueryRCnt",
"repl_queries_per_sec": "QueryR",
"repl_updates": "UpdateRCnt",
"repl_updates_per_sec": "UpdateR",
"repl_deletes": "DeleteRCnt",
"repl_deletes_per_sec": "DeleteR",
"repl_getmores": "GetMoreRCnt",
"repl_getmores_per_sec": "GetMoreR",
"repl_commands": "CommandRCnt",
"repl_commands_per_sec": "CommandR",
"member_status": "NodeType",
"state": "NodeState",
"repl_state": "NodeStateInt",
"repl_lag": "ReplLag",
"repl_network_bytes": "ReplNetworkBytes",
"repl_network_getmores_num": "ReplNetworkGetmoresNum",
"repl_network_getmores_total_millis": "ReplNetworkGetmoresTotalMillis",
"repl_network_ops": "ReplNetworkOps",
"repl_buffer_count": "ReplBufferCount",
"repl_buffer_size_bytes": "ReplBufferSizeBytes",
"repl_apply_batches_num": "ReplApplyBatchesNum",
"repl_apply_batches_total_millis": "ReplApplyBatchesTotalMillis",
"repl_apply_ops": "ReplApplyOps",
"repl_executor_pool_in_progress_count": "ReplExecutorPoolInProgressCount",
"repl_executor_queues_network_in_progress": "ReplExecutorQueuesNetworkInProgress",
"repl_executor_queues_sleepers": "ReplExecutorQueuesSleepers",
"repl_executor_unsignaled_events": "ReplExecutorUnsignaledEvents",
}
var DefaultShardStats = map[string]string{
"total_in_use": "TotalInUse",
"total_available": "TotalAvailable",
"total_created": "TotalCreated",
"total_refreshing": "TotalRefreshing",
}
var DefaultStats = map[string]string{
"uptime_ns": "UptimeNanos",
"inserts": "InsertCnt",
"inserts_per_sec": "Insert",
"queries": "QueryCnt",
"queries_per_sec": "Query",
"updates": "UpdateCnt",
"updates_per_sec": "Update",
"deletes": "DeleteCnt",
"deletes_per_sec": "Delete",
"getmores": "GetMoreCnt",
"getmores_per_sec": "GetMore",
"commands": "CommandCnt",
"commands_per_sec": "Command",
"flushes": "FlushesCnt",
"flushes_per_sec": "Flushes",
"flushes_total_time_ns": "FlushesTotalTime",
"vsize_megabytes": "Virtual",
"resident_megabytes": "Resident",
"queued_reads": "QueuedReaders",
"queued_writes": "QueuedWriters",
"active_reads": "ActiveReaders",
"active_writes": "ActiveWriters",
"available_reads": "AvailableReaders",
"available_writes": "AvailableWriters",
"total_tickets_reads": "TotalTicketsReaders",
"total_tickets_writes": "TotalTicketsWriters",
"net_in_bytes_count": "NetInCnt",
"net_in_bytes": "NetIn",
"net_out_bytes_count": "NetOutCnt",
"net_out_bytes": "NetOut",
"open_connections": "NumConnections",
"ttl_deletes": "DeletedDocumentsCnt",
"ttl_deletes_per_sec": "DeletedDocuments",
"ttl_passes": "PassesCnt",
"ttl_passes_per_sec": "Passes",
"cursor_timed_out": "TimedOutC",
"cursor_timed_out_count": "TimedOutCCnt",
"cursor_no_timeout": "NoTimeoutC",
"cursor_no_timeout_count": "NoTimeoutCCnt",
"cursor_pinned": "PinnedC",
"cursor_pinned_count": "PinnedCCnt",
"cursor_total": "TotalC",
"cursor_total_count": "TotalCCnt",
"document_deleted": "DeletedD",
"document_inserted": "InsertedD",
"document_returned": "ReturnedD",
"document_updated": "UpdatedD",
"connections_current": "CurrentC",
"connections_available": "AvailableC",
"connections_total_created": "TotalCreatedC",
"operation_scan_and_order": "ScanAndOrderOp",
"operation_write_conflicts": "WriteConflictsOp",
"total_keys_scanned": "TotalKeysScanned",
"total_docs_scanned": "TotalObjectsScanned",
}
var DefaultStorageStats = map[string]string{
"storage_freelist_search_bucket_exhausted": "StorageFreelistSearchBucketExhausted",
"storage_freelist_search_requests": "StorageFreelistSearchRequests",
"storage_freelist_search_scanned": "StorageFreelistSearchScanned",
}
var DefaultTCMallocStats = map[string]string{
"tcmalloc_current_allocated_bytes": "TCMallocCurrentAllocatedBytes",
"tcmalloc_heap_size": "TCMallocHeapSize",
"tcmalloc_central_cache_free_bytes": "TCMallocCentralCacheFreeBytes",
"tcmalloc_current_total_thread_cache_bytes": "TCMallocCurrentTotalThreadCacheBytes",
"tcmalloc_max_total_thread_cache_bytes": "TCMallocMaxTotalThreadCacheBytes",
"tcmalloc_total_free_bytes": "TCMallocTotalFreeBytes",
"tcmalloc_transfer_cache_free_bytes": "TCMallocTransferCacheFreeBytes",
"tcmalloc_thread_cache_free_bytes": "TCMallocThreadCacheFreeBytes",
"tcmalloc_spinlock_total_delay_ns": "TCMallocSpinLockTotalDelayNanos",
"tcmalloc_pageheap_free_bytes": "TCMallocPageheapFreeBytes",
"tcmalloc_pageheap_unmapped_bytes": "TCMallocPageheapUnmappedBytes",
"tcmalloc_pageheap_committed_bytes": "TCMallocPageheapComittedBytes",
"tcmalloc_pageheap_scavenge_count": "TCMallocPageheapScavengeCount",
"tcmalloc_pageheap_commit_count": "TCMallocPageheapCommitCount",
"tcmalloc_pageheap_total_commit_bytes": "TCMallocPageheapTotalCommitBytes",
"tcmalloc_pageheap_decommit_count": "TCMallocPageheapDecommitCount",
"tcmalloc_pageheap_total_decommit_bytes": "TCMallocPageheapTotalDecommitBytes",
"tcmalloc_pageheap_reserve_count": "TCMallocPageheapReserveCount",
"tcmalloc_pageheap_total_reserve_bytes": "TCMallocPageheapTotalReserveBytes",
}
var MmapStats = map[string]string{
"mapped_megabytes": "Mapped",
"non-mapped_megabytes": "NonMapped",
"page_faults": "FaultsCnt",
"page_faults_per_sec": "Faults",
}
var ShardHostStats = map[string]string{
"in_use": "InUse",
"available": "Available",
"created": "Created",
"refreshing": "Refreshing",
}
var StatHeaders = []StatHeader{ {"", Always}, {"insert", Always}, {"query", Always}, {"update", Always}, {"delete", Always}, {"getmore", Always}, {"command", Always}, {"% dirty", WTOnly}, {"% used", WTOnly}, {"flushes", Always}, {"mapped", MMAPOnly}, {"vsize", Always}, {"res", Always}, {"non-mapped", MMAPOnly | AllOnly}, {"faults", MMAPOnly}, {"lr|lw %", MMAPOnly | AllOnly}, {"lrt|lwt", MMAPOnly | AllOnly}, {" locked db", Locks}, {"qr|qw", Always}, {"ar|aw", Always}, {"netIn", Always}, {"netOut", Always}, {"conn", Always}, {"set", Repl}, {"repl", Repl}, {"time", Always}, }
StatHeaders are the complete set of data metrics supported by mongostat.
var WiredTigerExtStats = map[string]string{
"wtcache_tracked_dirty_bytes": "TrackedDirtyBytes",
"wtcache_current_bytes": "CurrentCachedBytes",
"wtcache_max_bytes_configured": "MaxBytesConfigured",
"wtcache_app_threads_page_read_count": "AppThreadsPageReadCount",
"wtcache_app_threads_page_read_time": "AppThreadsPageReadTime",
"wtcache_app_threads_page_write_count": "AppThreadsPageWriteCount",
"wtcache_bytes_written_from": "BytesWrittenFrom",
"wtcache_bytes_read_into": "BytesReadInto",
"wtcache_pages_evicted_by_app_thread": "PagesEvictedByAppThread",
"wtcache_pages_queued_for_eviction": "PagesQueuedForEviction",
"wtcache_pages_read_into": "PagesReadIntoCache",
"wtcache_pages_requested_from": "PagesRequestedFromCache",
"wtcache_server_evicting_pages": "ServerEvictingPages",
"wtcache_worker_thread_evictingpages": "WorkerThreadEvictingPages",
"wtcache_internal_pages_evicted": "InternalPagesEvicted",
"wtcache_modified_pages_evicted": "ModifiedPagesEvicted",
"wtcache_unmodified_pages_evicted": "UnmodifiedPagesEvicted",
}
var WiredTigerStats = map[string]string{
"percent_cache_dirty": "CacheDirtyPercent",
"percent_cache_used": "CacheUsedPercent",
}
Functions ¶
func IsAuthorization ¶
Types ¶
type AssertsStats ¶
type AssertsStats struct { Regular int64 `bson:"regular"` Warning int64 `bson:"warning"` Msg int64 `bson:"msg"` User int64 `bson:"user"` Rollovers int64 `bson:"rollovers"` }
AssertsStats stores information related to assertions raised since the MongoDB process started
type BasicStats ¶
BasicStats stores information about an operation
type CacheStats ¶
type CacheStats struct { TrackedDirtyBytes int64 `bson:"tracked dirty bytes in the cache"` CurrentCachedBytes int64 `bson:"bytes currently in the cache"` MaxBytesConfigured int64 `bson:"maximum bytes configured"` AppThreadsPageReadCount int64 `bson:"application threads page read from disk to cache count"` AppThreadsPageReadTime int64 `bson:"application threads page read from disk to cache time (usecs)"` AppThreadsPageWriteCount int64 `bson:"application threads page write from cache to disk count"` AppThreadsPageWriteTime int64 `bson:"application threads page write from cache to disk time (usecs)"` BytesWrittenFrom int64 `bson:"bytes written from cache"` BytesReadInto int64 `bson:"bytes read into cache"` PagesEvictedByAppThread int64 `bson:"pages evicted by application threads"` PagesQueuedForEviction int64 `bson:"pages queued for eviction"` PagesReadIntoCache int64 `bson:"pages read into cache"` PagesRequestedFromCache int64 `bson:"pages requested from the cache"` ServerEvictingPages int64 `bson:"eviction server evicting pages"` WorkerThreadEvictingPages int64 `bson:"eviction worker thread evicting pages"` InternalPagesEvicted int64 `bson:"internal pages evicted"` ModifiedPagesEvicted int64 `bson:"modified pages evicted"` UnmodifiedPagesEvicted int64 `bson:"unmodified pages evicted"` }
CacheStats stores cache statistics for WiredTiger.
type ClientStats ¶
type ClientStats struct { Total int64 `bson:"total"` Readers int64 `bson:"readers"` Writers int64 `bson:"writers"` }
ClientStats stores the number of active read/write operations.
type ClusterStatus ¶
type ClusterStatus struct {
JumboChunksCount int64
}
ClusterStatus stores information related to the whole cluster
type ColStatLine ¶
type ColStats ¶
type ColStats struct {
Collections []Collection
}
type ColStatsData ¶
type Collection ¶
type Collection struct { Name string DbName string ColStatsData *ColStatsData }
type CollectionLockStatus ¶
type CollectionLockStatus struct { ReadAcquireWaitsPercentage float64 WriteAcquireWaitsPercentage float64 ReadAcquireTimeMicros int64 WriteAcquireTimeMicros int64 }
CollectionLockStatus stores a collection's lock statistics.
type CommandsStats ¶
type CommandsStats struct { Aggregate *CommandsStatsValue `bson:"aggregate"` Count *CommandsStatsValue `bson:"count"` Delete *CommandsStatsValue `bson:"delete"` Distinct *CommandsStatsValue `bson:"distinct"` Find *CommandsStatsValue `bson:"find"` FindAndModify *CommandsStatsValue `bson:"findAndModify"` GetMore *CommandsStatsValue `bson:"getMore"` Insert *CommandsStatsValue `bson:"insert"` Update *CommandsStatsValue `bson:"update"` }
CommandsStats stores information related to document metrics.
type CommandsStatsValue ¶
type ConcurrentTransStats ¶
type ConcurrentTransactions ¶
type ConcurrentTransactions struct { Write ConcurrentTransStats `bson:"write"` Read ConcurrentTransStats `bson:"read"` }
type ConnectionStats ¶
type ConnectionStats struct { Current int64 `bson:"current"` Available int64 `bson:"available"` TotalCreated int64 `bson:"totalCreated"` }
ConnectionStats stores information related to incoming database connections.
type CursorStats ¶
type CursorStats struct { TimedOut int64 `bson:"timedOut"` Open *OpenCursorStats `bson:"open"` }
CursorStats stores information related to cursor metrics.
type DBRecordStats ¶
type DBRecordStats struct { AccessesNotInMemory int64 `bson:"accessesNotInMemory"` PageFaultExceptionsThrown int64 `bson:"pageFaultExceptionsThrown"` DBRecordAccesses map[string]RecordAccesses `bson:",inline"` }
DBRecordStats stores data related to memory operations across databases.
type DbStatLine ¶
type DbStatsData ¶
type DbStatsData struct { Db string `bson:"db"` Collections int64 `bson:"collections"` Objects int64 `bson:"objects"` AvgObjSize float64 `bson:"avgObjSize"` DataSize int64 `bson:"dataSize"` StorageSize int64 `bson:"storageSize"` NumExtents int64 `bson:"numExtents"` Indexes int64 `bson:"indexes"` IndexSize int64 `bson:"indexSize"` Ok int64 `bson:"ok"` GleStats interface{} `bson:"gleStats"` }
DbStatsData stores stats from a db
type DetailedTCMallocStats ¶
type DetailedTCMallocStats struct { PageheapFreeBytes int64 `bson:"pageheap_free_bytes"` PageheapUnmappedBytes int64 `bson:"pageheap_unmapped_bytes"` MaxTotalThreadCacheBytes int64 `bson:"max_total_thread_cache_bytes"` CurrentTotalThreadCacheBytes int64 `bson:"current_total_thread_cache_bytes"` TotalFreeBytes int64 `bson:"total_free_bytes"` CentralCacheFreeBytes int64 `bson:"central_cache_free_bytes"` TransferCacheFreeBytes int64 `bson:"transfer_cache_free_bytes"` ThreadCacheFreeBytes int64 `bson:"thread_cache_free_bytes"` PageheapComittedBytes int64 `bson:"pageheap_committed_bytes"` PageheapScavengeCount int64 `bson:"pageheap_scavenge_count"` PageheapCommitCount int64 `bson:"pageheap_commit_count"` PageheapTotalCommitBytes int64 `bson:"pageheap_total_commit_bytes"` PageheapDecommitCount int64 `bson:"pageheap_decommit_count"` PageheapTotalDecommitBytes int64 `bson:"pageheap_total_decommit_bytes"` PageheapReserveCount int64 `bson:"pageheap_reserve_count"` PageheapTotalReserveBytes int64 `bson:"pageheap_total_reserve_bytes"` SpinLockTotalDelayNanos int64 `bson:"spinlock_total_delay_ns"` }
DetailedTCMallocStats stores detailed TCMalloc memory allocator metrics
type DocumentStats ¶
type DocumentStats struct { Deleted int64 `bson:"deleted"` Inserted int64 `bson:"inserted"` Returned int64 `bson:"returned"` Updated int64 `bson:"updated"` }
DocumentStats stores information related to document metrics.
type DurStats ¶
type DurStats struct { Commits int64 `bson:"commits"` JournaledMB int64 `bson:"journaledMB"` WriteToDataFilesMB int64 `bson:"writeToDataFilesMB"` Compression int64 `bson:"compression"` CommitsInWriteLock int64 `bson:"commitsInWriteLock"` EarlyCommits int64 `bson:"earlyCommits"` TimeMs DurTiming }
DurStats stores information related to journaling statistics.
type DurTiming ¶
type DurTiming struct { Dt int64 `bson:"dt"` PrepLogBuffer int64 `bson:"prepLogBuffer"` WriteToJournal int64 `bson:"writeToJournal"` WriteToDataFiles int64 `bson:"writeToDataFiles"` RemapPrivateView int64 `bson:"remapPrivateView"` }
DurTiming stores information related to journaling.
type ExtraInfo ¶
type ExtraInfo struct {
PageFaults *int64 `bson:"page_faults"`
}
ExtraInfo stores additional platform specific information.
type FlushStats ¶
type FlushStats struct { Flushes int64 `bson:"flushes"` TotalMs int64 `bson:"total_ms"` AverageMs float64 `bson:"average_ms"` LastMs int64 `bson:"last_ms"` LastFinished time.Time `bson:"last_finished"` }
FlushStats stores information about memory flushes.
type GenericTCMAllocStats ¶
type GenericTCMAllocStats struct { CurrentAllocatedBytes int64 `bson:"current_allocated_bytes"` HeapSize int64 `bson:"heap_size"` }
GenericTCMAllocStats stores generic TCMalloc memory allocator metrics
type GlobalLockStats ¶
type GlobalLockStats struct { TotalTime int64 `bson:"totalTime"` LockTime int64 `bson:"lockTime"` CurrentQueue *QueueStats `bson:"currentQueue"` ActiveClients *ClientStats `bson:"activeClients"` }
GlobalLockStats stores information related locks in the MMAP storage engine.
type LatencyStats ¶
LatencyStats lists total latency in microseconds and count of operations, enabling you to obtain an average
type LockStats ¶
type LockStats struct { TimeLockedMicros ReadWriteLockTimes `bson:"timeLockedMicros"` TimeAcquiringMicros ReadWriteLockTimes `bson:"timeAcquiringMicros"` // AcquireCount and AcquireWaitCount are new fields of the lock stats only populated on 3.0 or newer. // Typed as a pointer so that if it is nil, mongostat can assume the field is not populated // with real namespace data. AcquireCount *ReadWriteLockTimes `bson:"acquireCount,omitempty"` AcquireWaitCount *ReadWriteLockTimes `bson:"acquireWaitCount,omitempty"` }
LockStats stores information related to time spent acquiring/holding locks for a given database.
type LockStatus ¶
LockStatus stores a database's lock statistics.
type MemStats ¶
type MemStats struct { Bits int64 `bson:"bits"` Resident int64 `bson:"resident"` Virtual int64 `bson:"virtual"` Supported interface{} `bson:"supported"` Mapped int64 `bson:"mapped"` MappedWithJournal int64 `bson:"mappedWithJournal"` }
MemStats stores data related to memory statistics.
type MetricsStats ¶
type MetricsStats struct { TTL *TTLStats `bson:"ttl"` Cursor *CursorStats `bson:"cursor"` Document *DocumentStats `bson:"document"` Commands *CommandsStats `bson:"commands"` Operation *OperationStats `bson:"operation"` QueryExecutor *QueryExecutorStats `bson:"queryExecutor"` Repl *ReplStats `bson:"repl"` Storage *StorageStats `bson:"storage"` }
MetricsStats stores information related to metrics
type MongoDB ¶
type MongoDB struct { Servers []string Ssl Ssl GatherClusterStatus bool GatherPerdbStats bool GatherColStats bool ColStatsDbs []string tlsint.ClientConfig Log telegraf.Logger // contains filtered or unexported fields }
func (*MongoDB) Description ¶
func (*MongoDB) Gather ¶
Reads stats from all configured servers accumulates stats. Returns one of the errors encountered while gather stats (if any).
func (*MongoDB) SampleConfig ¶
type MongoStatus ¶
type MongoStatus struct { SampleTime time.Time ServerStatus *ServerStatus ReplSetStatus *ReplSetStatus ClusterStatus *ClusterStatus DbStats *DbStats ColStats *ColStats ShardStats *ShardStats OplogStats *OplogStats }
type MongodbData ¶
type MongodbData struct { StatLine *StatLine Fields map[string]interface{} Tags map[string]string DbData []DbData ColData []ColData ShardHostData []DbData }
func NewMongodbData ¶
func NewMongodbData(statLine *StatLine, tags map[string]string) *MongodbData
func (*MongodbData) AddColStats ¶
func (d *MongodbData) AddColStats()
func (*MongodbData) AddDbStats ¶
func (d *MongodbData) AddDbStats()
func (*MongodbData) AddDefaultStats ¶
func (d *MongodbData) AddDefaultStats()
func (*MongodbData) AddShardHostStats ¶
func (d *MongodbData) AddShardHostStats()
type NamespacedLocks ¶
type NamespacedLocks map[string]LockStatus
NamespacedLocks stores information on the LockStatus of namespaces.
type NetworkStats ¶
type NetworkStats struct { BytesIn int64 `bson:"bytesIn"` BytesOut int64 `bson:"bytesOut"` NumRequests int64 `bson:"numRequests"` }
NetworkStats stores information related to network traffic.
type OpLatenciesStats ¶
type OpLatenciesStats struct { Reads *LatencyStats `bson:"reads"` Writes *LatencyStats `bson:"writes"` Commands *LatencyStats `bson:"commands"` }
OpLatenciesStats stores information related to operation latencies for the database as a whole
type OpcountStats ¶
type OpcountStats struct { Insert int64 `bson:"insert"` Query int64 `bson:"query"` Update int64 `bson:"update"` Delete int64 `bson:"delete"` GetMore int64 `bson:"getmore"` Command int64 `bson:"command"` }
OpcountStats stores information related to commands and basic CRUD operations.
type OpenCursorStats ¶
type OpenCursorStats struct { NoTimeout int64 `bson:"noTimeout"` Pinned int64 `bson:"pinned"` Total int64 `bson:"total"` }
OpenCursorStats stores information related to open cursor metrics
type OperationStats ¶
type OperationStats struct { ScanAndOrder int64 `bson:"scanAndOrder"` WriteConflicts int64 `bson:"writeConflicts"` }
OperationStats stores information related to query operations using special operation types
type OplogStats ¶
type OplogStats struct {
TimeDiff int64
}
OplogStatus stores information from getReplicationInfo
type QueryExecutorStats ¶
type QueryExecutorStats struct { Scanned int64 `bson:"scanned"` ScannedObjects int64 `bson:"scannedObjects"` }
QueryExecutorStats stores information related to query execution
type QueueStats ¶
type QueueStats struct { Total int64 `bson:"total"` Readers int64 `bson:"readers"` Writers int64 `bson:"writers"` }
QueueStats stores the number of queued read/write operations.
type ReadWriteLockTimes ¶
type ReadWriteLockTimes struct { Read int64 `bson:"R"` Write int64 `bson:"W"` ReadLower int64 `bson:"r"` WriteLower int64 `bson:"w"` }
ReadWriteLockTimes stores time spent holding read/write locks.
type RecordAccesses ¶
type RecordAccesses struct { AccessesNotInMemory int64 `bson:"accessesNotInMemory"` PageFaultExceptionsThrown int64 `bson:"pageFaultExceptionsThrown"` }
RecordAccesses stores data related to memory operations scoped to a database.
type ReplApplyStats ¶
type ReplApplyStats struct { Batches *BasicStats `bson:"batches"` Ops int64 `bson:"ops"` }
ReplApplyStats stores information related to oplog application process
type ReplBufferStats ¶
ReplBufferStats stores information related to oplog buffer
type ReplExecutorStats ¶
type ReplExecutorStats struct { Pool map[string]int64 `bson:"pool"` Queues map[string]int64 `bson:"queues"` UnsignaledEvents int64 `bson:"unsignaledEvents"` }
ReplExecutorStats stores information related to replication executor
type ReplNetworkStats ¶
type ReplNetworkStats struct { Bytes int64 `bson:"bytes"` GetMores *BasicStats `bson:"getmores"` Ops int64 `bson:"ops"` }
ReplNetworkStats stores information related to network usage by replication process
type ReplSetMember ¶
type ReplSetMember struct { Name string `bson:"name"` State int64 `bson:"state"` StateStr string `bson:"stateStr"` OptimeDate time.Time `bson:"optimeDate"` }
ReplSetMember stores information related to a replica set member
type ReplSetStatus ¶
type ReplSetStatus struct { Members []ReplSetMember `bson:"members"` MyState int64 `bson:"myState"` }
ReplSetStatus stores information from replSetGetStatus
type ReplStats ¶
type ReplStats struct { Apply *ReplApplyStats `bson:"apply"` Buffer *ReplBufferStats `bson:"buffer"` Executor *ReplExecutorStats `bson:"executor,omitempty"` Network *ReplNetworkStats `bson:"network"` }
ReplStats stores information related to replication process
type ReplStatus ¶
type ReplStatus struct { SetName interface{} `bson:"setName"` IsMaster interface{} `bson:"ismaster"` Secondary interface{} `bson:"secondary"` IsReplicaSet interface{} `bson:"isreplicaset"` ArbiterOnly interface{} `bson:"arbiterOnly"` Hosts []string `bson:"hosts"` Passives []string `bson:"passives"` Me string `bson:"me"` }
ReplStatus stores data related to replica sets.
type ServerStatus ¶
type ServerStatus struct { Host string `bson:"host"` Version string `bson:"version"` Process string `bson:"process"` Pid int64 `bson:"pid"` Uptime int64 `bson:"uptime"` UptimeMillis int64 `bson:"uptimeMillis"` UptimeEstimate int64 `bson:"uptimeEstimate"` LocalTime time.Time `bson:"localTime"` Asserts *AssertsStats `bson:"asserts"` BackgroundFlushing *FlushStats `bson:"backgroundFlushing"` ExtraInfo *ExtraInfo `bson:"extra_info"` Connections *ConnectionStats `bson:"connections"` Dur *DurStats `bson:"dur"` GlobalLock *GlobalLockStats `bson:"globalLock"` Locks map[string]LockStats `bson:"locks,omitempty"` Network *NetworkStats `bson:"network"` Opcounters *OpcountStats `bson:"opcounters"` OpcountersRepl *OpcountStats `bson:"opcountersRepl"` OpLatencies *OpLatenciesStats `bson:"opLatencies"` RecordStats *DBRecordStats `bson:"recordStats"` Mem *MemStats `bson:"mem"` Repl *ReplStatus `bson:"repl"` ShardCursorType map[string]interface{} `bson:"shardCursorType"` StorageEngine map[string]string `bson:"storageEngine"` WiredTiger *WiredTiger `bson:"wiredTiger"` Metrics *MetricsStats `bson:"metrics"` TCMallocStats *TCMallocStats `bson:"tcmalloc"` }
type ShardHostStatLine ¶
type ShardHostStatsData ¶
type ShardHostStatsData struct { InUse int64 `bson:"inUse"` Available int64 `bson:"available"` Created int64 `bson:"created"` Refreshing int64 `bson:"refreshing"` }
ShardHostStatsData is the host-specific stats from shardConnPoolStats database command.
type ShardStats ¶
type ShardStats struct { ShardStatsData `bson:",inline"` Hosts map[string]ShardHostStatsData `bson:"hosts"` }
ShardStats stores information from shardConnPoolStats.
type ShardStatsData ¶
type ShardStatsData struct { TotalInUse int64 `bson:"totalInUse"` TotalAvailable int64 `bson:"totalAvailable"` TotalCreated int64 `bson:"totalCreated"` TotalRefreshing int64 `bson:"totalRefreshing"` }
ShardStatsData is the total Shard Stats from shardConnPoolStats database command.
type StatHeader ¶
type StatHeader struct { // The text to appear in the column's header cell HeaderText string // Bitmask containing flags to determine if this header is active or not ActivateFlags int }
StatHeader describes a single column for mongostat's terminal output, its formatting, and in which modes it should be displayed.
type StatLine ¶
type StatLine struct { Key string // What storage engine is being used for the node with this stat line StorageEngine string Error error IsMongos bool Host string Version string UptimeNanos int64 // The time at which this StatLine was generated. Time time.Time // The last time at which this StatLine was printed to output. LastPrinted time.Time // Opcounter fields Insert, InsertCnt int64 Query, QueryCnt int64 Update, UpdateCnt int64 Delete, DeleteCnt int64 GetMore, GetMoreCnt int64 Command, CommandCnt int64 // Asserts fields Regular int64 Warning int64 Msg int64 User int64 Rollovers int64 // OpLatency fields WriteOpsCnt int64 WriteLatency int64 ReadOpsCnt int64 ReadLatency int64 CommandOpsCnt int64 CommandLatency int64 // TTL fields Passes, PassesCnt int64 DeletedDocuments, DeletedDocumentsCnt int64 // Cursor fields TimedOutC, TimedOutCCnt int64 NoTimeoutC, NoTimeoutCCnt int64 PinnedC, PinnedCCnt int64 TotalC, TotalCCnt int64 // Document fields DeletedD, InsertedD, ReturnedD, UpdatedD int64 //Commands fields AggregateCommandTotal, AggregateCommandFailed int64 CountCommandTotal, CountCommandFailed int64 DeleteCommandTotal, DeleteCommandFailed int64 DistinctCommandTotal, DistinctCommandFailed int64 FindCommandTotal, FindCommandFailed int64 FindAndModifyCommandTotal, FindAndModifyCommandFailed int64 GetMoreCommandTotal, GetMoreCommandFailed int64 InsertCommandTotal, InsertCommandFailed int64 UpdateCommandTotal, UpdateCommandFailed int64 // Operation fields ScanAndOrderOp, WriteConflictsOp int64 // Query Executor fields TotalKeysScanned, TotalObjectsScanned int64 // Connection fields CurrentC, AvailableC, TotalCreatedC int64 // Collection locks (3.0 mmap only) CollectionLocks *CollectionLockStatus // Cache utilization (wiredtiger only) CacheDirtyPercent float64 CacheUsedPercent float64 // Cache utilization extended (wiredtiger only) TrackedDirtyBytes int64 CurrentCachedBytes int64 MaxBytesConfigured int64 AppThreadsPageReadCount int64 AppThreadsPageReadTime int64 AppThreadsPageWriteCount int64 BytesWrittenFrom int64 BytesReadInto int64 PagesEvictedByAppThread int64 PagesQueuedForEviction int64 PagesReadIntoCache int64 PagesRequestedFromCache int64 ServerEvictingPages int64 WorkerThreadEvictingPages int64 InternalPagesEvicted int64 ModifiedPagesEvicted int64 UnmodifiedPagesEvicted int64 // Replicated Opcounter fields InsertR, InsertRCnt int64 QueryR, QueryRCnt int64 UpdateR, UpdateRCnt int64 DeleteR, DeleteRCnt int64 GetMoreR, GetMoreRCnt int64 CommandR, CommandRCnt int64 ReplLag int64 OplogStats *OplogStats Flushes, FlushesCnt int64 FlushesTotalTime int64 Mapped, Virtual, Resident, NonMapped int64 Faults, FaultsCnt int64 HighestLocked *LockStatus QueuedReaders, QueuedWriters int64 ActiveReaders, ActiveWriters int64 AvailableReaders, AvailableWriters int64 TotalTicketsReaders, TotalTicketsWriters int64 NetIn, NetInCnt int64 NetOut, NetOutCnt int64 NumConnections int64 ReplSetName string NodeType string NodeState string NodeStateInt int64 // Replicated Metrics fields ReplNetworkBytes int64 ReplNetworkGetmoresNum int64 ReplNetworkGetmoresTotalMillis int64 ReplNetworkOps int64 ReplBufferCount int64 ReplBufferSizeBytes int64 ReplApplyBatchesNum int64 ReplApplyBatchesTotalMillis int64 ReplApplyOps int64 ReplExecutorPoolInProgressCount int64 ReplExecutorQueuesNetworkInProgress int64 ReplExecutorQueuesSleepers int64 ReplExecutorUnsignaledEvents int64 // Cluster fields JumboChunksCount int64 // DB stats field DbStatsLines []DbStatLine // Col Stats field ColStatsLines []ColStatLine // Shard stats TotalInUse, TotalAvailable, TotalCreated, TotalRefreshing int64 // Shard Hosts stats field ShardHostStatsLines map[string]ShardHostStatLine // TCMalloc stats field TCMallocCurrentAllocatedBytes int64 TCMallocHeapSize int64 TCMallocCentralCacheFreeBytes int64 TCMallocCurrentTotalThreadCacheBytes int64 TCMallocMaxTotalThreadCacheBytes int64 TCMallocTotalFreeBytes int64 TCMallocTransferCacheFreeBytes int64 TCMallocThreadCacheFreeBytes int64 TCMallocSpinLockTotalDelayNanos int64 TCMallocPageheapFreeBytes int64 TCMallocPageheapUnmappedBytes int64 TCMallocPageheapComittedBytes int64 TCMallocPageheapScavengeCount int64 TCMallocPageheapCommitCount int64 TCMallocPageheapTotalCommitBytes int64 TCMallocPageheapDecommitCount int64 TCMallocPageheapTotalDecommitBytes int64 TCMallocPageheapReserveCount int64 TCMallocPageheapTotalReserveBytes int64 // Storage stats field StorageFreelistSearchBucketExhausted int64 StorageFreelistSearchRequests int64 StorageFreelistSearchScanned int64 }
StatLine is a wrapper for all metrics reported by mongostat for monitored hosts.
func NewStatLine ¶
func NewStatLine(oldMongo, newMongo MongoStatus, key string, all bool, sampleSecs int64) *StatLine
NewStatLine constructs a StatLine object from two MongoStatus objects.
type StorageStats ¶
type StorageStats struct { FreelistSearchBucketExhausted int64 `bson:"freelist.search.bucketExhausted"` FreelistSearchRequests int64 `bson:"freelist.search.requests"` FreelistSearchScanned int64 `bson:"freelist.search.scanned"` }
StorageStats stores information related to record allocations
type TCMallocStats ¶
type TCMallocStats struct { Generic *GenericTCMAllocStats `bson:"generic"` TCMalloc *DetailedTCMallocStats `bson:"tcmalloc"` }
TCMallocStats stores information related to TCMalloc memory allocator metrics
type TTLStats ¶
type TTLStats struct { DeletedDocuments int64 `bson:"deletedDocuments"` Passes int64 `bson:"passes"` }
TTLStats stores information related to documents with a ttl index.
type TransactionStats ¶
type TransactionStats struct { TransCheckpointsTotalTimeMsecs int64 `bson:"transaction checkpoint total time (msecs)"` TransCheckpoints int64 `bson:"transaction checkpoints"` }
TransactionStats stores transaction checkpoints in WiredTiger.
type WiredTiger ¶
type WiredTiger struct { Transaction TransactionStats `bson:"transaction"` Concurrent ConcurrentTransactions `bson:"concurrentTransactions"` Cache CacheStats `bson:"cache"` }
WiredTiger stores information related to the WiredTiger storage engine.