Class: Mongo::Monitoring::Event::CommandStarted

Inherits:
Object
  • Object
show all
Includes:
Secure
Defined in:
lib/mongo/monitoring/event/command_started.rb

Overview

Event that is fired when a command operation starts.

Since:

  • 2.1.0

Constant Summary

Constants included from Secure

Secure::REDACTED_COMMANDS

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Secure

#redacted

Constructor Details

#initialize(command_name, database_name, address, request_id, operation_id, command) ⇒ CommandStarted

Create the new event.

Examples:

Create the event.

Parameters:

  • command_name (String)

    The name of the command.

  • database_name (String)

    The database_name name.

  • address (Server::Address)

    The server address.

  • request_id (Integer)

    The request id.

  • operation_id (Integer)

    The operation id.

  • command (BSON::Document)

    The command arguments.

Since:

  • 2.1.0



55
56
57
58
59
60
61
62
# File 'lib/mongo/monitoring/event/command_started.rb', line 55

def initialize(command_name, database_name, address, request_id, operation_id, command)
  @command_name = command_name
  @database_name = database_name
  @address = address
  @request_id = request_id
  @operation_id = operation_id
  @command = redacted(command_name, command)
end

Instance Attribute Details

#addressServer::Address (readonly)

Returns address The server address.

Returns:

  • (Server::Address)

    address The server address.

Since:

  • 2.1.0



26
27
28
# File 'lib/mongo/monitoring/event/command_started.rb', line 26

def address
  @address
end

#commandBSON::Document (readonly)

Returns command The command arguments.

Returns:

  • (BSON::Document)

    command The command arguments.

Since:

  • 2.1.0



29
30
31
# File 'lib/mongo/monitoring/event/command_started.rb', line 29

def command
  @command
end

#command_nameString (readonly)

Returns command_name The name of the command.

Returns:

  • (String)

    command_name The name of the command.

Since:

  • 2.1.0



32
33
34
# File 'lib/mongo/monitoring/event/command_started.rb', line 32

def command_name
  @command_name
end

#database_nameString (readonly)

Returns database_name The name of the database_name.

Returns:

  • (String)

    database_name The name of the database_name.

Since:

  • 2.1.0



35
36
37
# File 'lib/mongo/monitoring/event/command_started.rb', line 35

def database_name
  @database_name
end

#operation_idInteger (readonly)

Returns operation_id The operation id.

Returns:

  • (Integer)

    operation_id The operation id.

Since:

  • 2.1.0



38
39
40
# File 'lib/mongo/monitoring/event/command_started.rb', line 38

def operation_id
  @operation_id
end

#request_idInteger (readonly)

Returns request_id The request id.

Returns:

  • (Integer)

    request_id The request id.

Since:

  • 2.1.0



41
42
43
# File 'lib/mongo/monitoring/event/command_started.rb', line 41

def request_id
  @request_id
end

Class Method Details

.generate(address, operation_id, payload) ⇒ CommandStarted

Create the event from a wire protocol message payload.

Examples:

Create the event.

CommandStarted.generate(address, 1, payload)

Parameters:

  • address (Server::Address)

    The server address.

  • operation_id (Integer)

    The operation id.

  • payload (Hash)

    The message payload.

Returns:

Since:

  • 2.1.0



76
77
78
79
80
81
82
83
84
85
# File 'lib/mongo/monitoring/event/command_started.rb', line 76

def self.generate(address, operation_id, payload)
  new(
    payload[:command_name],
    payload[:database_name],
    address,
    payload[:request_id],
    operation_id,
    payload[:command]
  )
end