mdbstructs

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 14, 2019 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ReplsetMemberHealthDown ReplsetMemberHealth = iota
	ReplsetMemberHealthUp
	ReplsetMemberStateStartup    ReplsetMemberState = 0
	ReplsetMemberStatePrimary    ReplsetMemberState = 1
	ReplsetMemberStateSecondary  ReplsetMemberState = 2
	ReplsetMemberStateRecovering ReplsetMemberState = 3
	ReplsetMemberStateStartup2   ReplsetMemberState = 5
	ReplsetMemberStateUnknown    ReplsetMemberState = 6
	ReplsetMemberStateArbiter    ReplsetMemberState = 7
	ReplsetMemberStateDown       ReplsetMemberState = 8
	ReplsetMemberStateRollback   ReplsetMemberState = 9
	ReplsetMemberStateRemoved    ReplsetMemberState = 10
)

Variables

Functions

This section is empty.

Types

type BalancerMode

type BalancerMode string
const (
	BalancerModeFull BalancerMode = "full"
	BalancerModeOff  BalancerMode = "off"
)

type BalancerStatus

type BalancerStatus struct {
	Mode              BalancerMode         `bson:"mode"`
	InBalancerRound   bool                 `bson:"inBalancerRound"`
	NumBalancerRounds int64                `bson:"numBalancerRounds"`
	Ok                int                  `bson:"ok"`
	ClusterTime       *ClusterTime         `bson:"$clusterTime,omitempty"`
	OperationTime     *bson.MongoTimestamp `bson:"operationTime,omitempty"`
}

type ClusterTime

type ClusterTime struct {
	ClusterTime time.Time `bson:"clusterTime"`
	Signature   struct {
		Hash  bson.Binary `bson:"hash"`
		KeyID int64       `bson:"keyId"`
	} `bson:"signature"`
}

type ConfigServerState

type ConfigServerState struct {
	OpTime *OpTime `bson:"opTime"`
}

type GleStats

type GleStats struct {
	LastOpTime bson.MongoTimestamp `bson:"lastOpTime"`
	ElectionId bson.ObjectId       `bson:"electionId"`
}

type IsMaster

type IsMaster struct {
	Hosts                        []string             `bson:"hosts,omitempty"`
	IsMaster                     bool                 `bson:"ismaster"`
	Msg                          string               `bson:"msg"`
	MaxBsonObjectSise            int64                `bson:"maxBsonObjectSize"`
	MaxMessageSizeBytes          int64                `bson:"maxMessageSizeBytes"`
	MaxWriteBatchSize            int64                `bson:"maxWriteBatchSize"`
	LocalTime                    time.Time            `bson:"localTime"`
	LogicalSessionTimeoutMinutes int64                `bson:"logicalSessionTimeoutMinutes"`
	MaxWireVersion               int64                `bson:"maxWireVersion"`
	MinWireVersion               int64                `bson:"minWireVersion"`
	Ok                           int                  `bson:"ok"`
	SetName                      string               `bson:"setName,omitempty"`
	SetVersion                   string               `bson:"setVersion,omitempty"`
	Primary                      string               `bson:"primary,omitempty"`
	Secondary                    bool                 `bson:"secondary,omitempty"`
	Hidden                       bool                 `bson:"hidden,omitempty"`
	ConfigSvr                    int                  `bson:"configsvr,omitempty"`
	Me                           string               `bson:"me"`
	LastWrite                    IsMasterLastWrite    `bson:"lastWrite"`
	ClusterTime                  *ClusterTime         `bson:"$clusterTime,omitempty"`
	ConfigServerState            *ConfigServerState   `bson:"$configServerState,omitempty"`
	GleStats                     *GleStats            `bson:"$gleStats,omitempty"`
	OperationTime                *bson.MongoTimestamp `bson:"operationTime,omitempty"`
}

IsMaster represents the document returned by db.runCommand( { isMaster: 1 } )

type IsMasterLastWrite

type IsMasterLastWrite struct {
	OpTime            *OpTime   `bson:"opTime"`
	LastWriteDate     time.Time `bson:"lastWriteDate"`
	MajorityOpTime    *OpTime   `bson:"majorityTime"`
	MajorityWriteDate time.Time `bson:"majorityWriteDate"`
}

IsMasterLastWrite represents the last write to the MongoDB server

type ListShards

type ListShards struct {
	Shards        []*Shard             `bson:"shards"`
	Ok            int                  `bson:"ok"`
	OperationTime *bson.MongoTimestamp `bson:"operationTime"`
	ClusterTime   *ClusterTime         `bson:"$clusterTime"`
}

ListShards reflects the output of the MongoDB 'listShards' command.

https://docs.mongodb.com/manual/reference/command/listShards/

type Mongos

type Mongos struct {
	Id                string    `bson:"_id"`
	Ping              time.Time `bson:"ping"`
	Up                int64     `bson:"up"`
	MongoVersion      string    `bson:"mongoVersion"`
	AdvisoryHostFQDNs []string  `bson:"advisoryHostFQDNs,omitempty"`
	Waiting           bool      `bson:"waiting,omitempty"`
}

Mongos reflects a document in the config server 'config.mongos' collection.

https://docs.mongodb.com/manual/reference/config-database/#config.mongos

type Namespace

type Namespace string

func (Namespace) Collection

func (n Namespace) Collection() string

func (Namespace) Database

func (n Namespace) Database() string

type OkResponse

type OkResponse struct {
	Ok            int                  `bson:"ok"`
	ClusterTime   *ClusterTime         `bson:"$clusterTime,omitempty"`
	OperationTime *bson.MongoTimestamp `bson:"operationTime,omitempty"`
}

type OpTime

type OpTime struct {
	Ts   bson.MongoTimestamp `bson:"ts" json:"ts"`
	Term int64               `bson:"t" json:"t"`
}

type Operation

type Operation string
const (
	OperationInsert  Operation = "i"
	OperationNoop    Operation = "n"
	OperationUpdate  Operation = "u"
	OperationDelete  Operation = "d"
	OperationCommand Operation = "c"
)

func (Operation) String

func (o Operation) String() string

type Oplog

type Oplog struct {
	Timestamp bson.MongoTimestamp `bson:"ts"`
	HistoryID int64               `bson:"h"`
	Version   int                 `bson:"v"`
	Operation Operation           `bson:"op"`
	Namespace Namespace           `bson:"ns"`
	Object    bson.RawD           `bson:"o"`
	Query     bson.RawD           `bson:"o2,omitempty"`
	Term      int64               `bson:"t,omitempty"`
	UI        *bson.Binary        `bson:"ui,omitempty"`
	WallTime  time.Time           `bson:"wall,omitempty"`
}

type OplogTimestampOnly

type OplogTimestampOnly struct {
	Timestamp bson.MongoTimestamp `bson:"ts"`
}

type ReplSetGetConfig

type ReplSetGetConfig struct {
	Config            *ReplsetConfig       `bson:"config" json:"config"`
	Errmsg            string               `bson:"errmsg,omitempty" json:"errmsg,omitempty"`
	Ok                int                  `bson:"ok" json:"ok" json:"ok"`
	ClusterTime       *ClusterTime         `bson:"$clusterTime,omitempty" json:"$clusterTime,omitempty"`
	ConfigServerState *ConfigServerState   `bson:"$configServerState,omitempty" json:"$configServerState,omitempty"`
	GleStats          *GleStats            `bson:"$gleStats,omitempty" json:"$gleStats,omitempty"`
	OperationTime     *bson.MongoTimestamp `bson:"operationTime,omitempty" json:"operationTime,omitempty"`
}

Response document from 'replSetGetConfig': https://docs.mongodb.com/manual/reference/command/replSetGetConfig/#dbcmd.replSetGetConfig

type ReplsetConfig

type ReplsetConfig struct {
	Name                               string                 `bson:"_id" json:"_id"`
	Version                            int                    `bson:"version" json:"version"`
	Members                            []*ReplsetConfigMember `bson:"members" json:"members"`
	Configsvr                          bool                   `bson:"configsvr,omitempty" json:"configsvr,omitempty"`
	ProtocolVersion                    int                    `bson:"protocolVersion,omitempty" json:"protocolVersion,omitempty"`
	Settings                           *ReplsetConfigSettings `bson:"settings,omitempty" json:"settings,omitempty"`
	WriteConcernMajorityJournalDefault bool                   `bson:"writeConcernMajorityJournalDefault,omitempty" json:"writeConcernMajorityJournalDefault,omitempty"`
}

Config document from 'replSetGetConfig': https://docs.mongodb.com/manual/reference/command/replSetGetConfig/#dbcmd.replSetGetConfig

type ReplsetConfigMember

type ReplsetConfigMember struct {
	Id           int               `bson:"_id" json:"_id"`
	Host         string            `bson:"host" json:"host"`
	ArbiterOnly  bool              `bson:"arbiterOnly" json:"arbiterOnly"`
	BuildIndexes bool              `bson:"buildIndexes" json:"buildIndexes"`
	Hidden       bool              `bson:"hidden" json:"hidden"`
	Priority     int               `bson:"priority" json:"priority"`
	Tags         map[string]string `bson:"tags,omitempty" json:"tags,omitempty"`
	SlaveDelay   int64             `bson:"slaveDelay" json:"slaveDelay"`
	Votes        int               `bson:"votes" json:"votes"`
}

Member document from 'replSetGetConfig': https://docs.mongodb.com/manual/reference/command/replSetGetConfig/#dbcmd.replSetGetConfig

type ReplsetConfigSettings

type ReplsetConfigSettings struct {
	ChainingAllowed         bool                         `bson:"chainingAllowed,omitempty" json:"chainingAllowed,omitempty"`
	HeartbeatIntervalMillis int64                        `bson:"heartbeatIntervalMillis,omitempty" json:"heartbeatIntervalMillis,omitempty"`
	HeartbeatTimeoutSecs    int                          `bson:"heartbeatTimeoutSecs,omitempty" json:"heartbeatTimeoutSecs,omitempty"`
	ElectionTimeoutMillis   int64                        `bson:"electionTimeoutMillis,omitempty" json:"electionTimeoutMillis,omitempty"`
	CatchUpTimeoutMillis    int64                        `bson:"catchUpTimeoutMillis,omitempty" json:"catchUpTimeoutMillis,omitempty"`
	GetLastErrorModes       map[string]map[string]string `bson:"getLastErrorModes,omitempty" json:"getLastErrorModes,omitempty"`
	GetLastErrorDefaults    *WriteConcern                `bson:"getLastErrorDefaults,omitempty" json:"getLastErrorDefaults,omitempty"`
	ReplicaSetId            bson.ObjectId                `bson:"replicaSetId,omitempty" json:"replicaSetId,omitempty"`
}

Settings document from 'replSetGetConfig': https://docs.mongodb.com/manual/reference/command/replSetGetConfig/#dbcmd.replSetGetConfig

type ReplsetMemberHealth

type ReplsetMemberHealth int

type ReplsetMemberState

type ReplsetMemberState int

func (ReplsetMemberState) String

func (ms ReplsetMemberState) String() string

type ReplsetStatus

type ReplsetStatus struct {
	Set                     string                 `bson:"set" json:"set"`
	Date                    time.Time              `bson:"date" json:"date"`
	MyState                 ReplsetMemberState     `bson:"myState" json:"myState"`
	Members                 []*ReplsetStatusMember `bson:"members" json:"members"`
	Term                    int64                  `bson:"term,omitempty" json:"term,omitempty"`
	HeartbeatIntervalMillis int64                  `bson:"heartbeatIntervalMillis,omitempty" json:"heartbeatIntervalMillis,omitempty"`
	Optimes                 *StatusOpTimes         `bson:"optimes,omitempty" json:"optimes,omitempty"`
	Errmsg                  string                 `bson:"errmsg,omitempty" json:"errmsg,omitempty"`
	Ok                      int                    `bson:"ok" json:"ok"`
	ClusterTime             *ClusterTime           `bson:"$clusterTime,omitempty" json:"$clusterTime,omitempty"`
	ConfigServerState       *ConfigServerState     `bson:"$configServerState,omitempty" json:"$configServerState,omitempty"`
	GleStats                *GleStats              `bson:"$gleStats,omitempty" json:"$gleStats,omitempty"`
	OperationTime           *bson.MongoTimestamp   `bson:"operationTime,omitempty" json:"operationTime,omitempty"`
}

type ReplsetStatusMember

type ReplsetStatusMember struct {
	Id                int                 `bson:"_id" json:"_id"`
	Name              string              `bson:"name" json:"name"`
	Health            ReplsetMemberHealth `bson:"health" json:"health"`
	State             ReplsetMemberState  `bson:"state" json:"state"`
	StateStr          string              `bson:"stateStr" json:"stateStr"`
	Uptime            int64               `bson:"uptime" json:"uptime"`
	Optime            *OpTime             `bson:"optime" json:"optime"`
	OptimeDate        time.Time           `bson:"optimeDate" json:"optimeDate"`
	ConfigVersion     int                 `bson:"configVersion" json:"configVersion"`
	ElectionTime      bson.MongoTimestamp `bson:"electionTime,omitempty" json:"electionTime,omitempty"`
	ElectionDate      time.Time           `bson:"electionDate,omitempty" json:"electionDate,omitempty"`
	InfoMessage       string              `bson:"infoMessage,omitempty" json:"infoMessage,omitempty"`
	OptimeDurable     *OpTime             `bson:"optimeDurable,omitempty" json:"optimeDurable,omitempty"`
	OptimeDurableDate time.Time           `bson:"optimeDurableDate,omitempty" json:"optimeDurableDate,omitempty"`
	LastHeartbeat     time.Time           `bson:"lastHeartbeat,omitempty" json:"lastHeartbeat,omitempty"`
	LastHeartbeatRecv time.Time           `bson:"lastHeartbeatRecv,omitempty" json:"lastHeartbeatRecv,omitempty"`
	PingMs            int64               `bson:"pingMs,omitempty" json:"pingMs,omitempty"`
	Self              bool                `bson:"self,omitempty" json:"self,omitempty"`
	SyncingTo         string              `bson:"syncingTo,omitempty" json:"syncingTo,omitempty"`
}

type Shard

type Shard struct {
	Id    string `bson:"_id"`
	Host  string `bson:"host"`
	State int    `bson:"state"`
}

Shard reflects a document in the config server 'config.shards' collection (or the 'shards' array of the 'listShards' server command).

https://docs.mongodb.com/manual/reference/config-database/#config.shards

type ShardingState

type ShardingState struct {
	Enabled           bool                           `bson:"enabled"`
	ConfigServer      string                         `bson:"configServer,omitempty"`
	ShardName         string                         `bson:"shardName,omitempty"`
	ClusterID         bson.ObjectId                  `bson:"clusterId,omitempty"`
	Versions          map[string]bson.MongoTimestamp `bson:"versions"`
	Ok                int                            `bson:"ok"`
	ClusterTime       *ClusterTime                   `bson:"$clusterTime,omitempty"`
	GleStats          *GleStats                      `bson:"$gleStats,omitempty"`
	OperationTime     *bson.MongoTimestamp           `bson:"operationTime,omitempty"`
	ConfigServerState *ConfigServerState             `bson:"$configServerState,omitempty"`
}

ShardingState reflects the output of the MongoDB 'shardingState' command. This command should be ran on a shard server

https://docs.mongodb.com/manual/reference/command/shardingState/

type StatusOpTimes

type StatusOpTimes struct {
	LastCommittedOpTime       *OpTime `bson:"lastCommittedOpTime" json:"lastCommittedOpTime"`
	ReadConcernMajorityOpTime *OpTime `bson:"readConcernMajorityOpTime" json:"readConcernMajorityOpTime"`
	AppliedOpTime             *OpTime `bson:"appliedOpTime" json:"appliedOpTime"`
	DurableOptime             *OpTime `bson:"durableOpTime" json:"durableOpTime"`
}

type WriteConcern

type WriteConcern struct {
	WriteConcern interface{} `bson:"w" json:"w"`
	WriteTimeout int         `bson:"wtimeout" json:"wtimeout"`
	Journal      bool        `bson:"j,omitempty" json:"j,omitempty"`
}

Write Concern document: https://docs.mongodb.com/manual/reference/write-concern/

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL