class Mongo::Monitoring::Event::CommandFailed
Event
that is fired when a command operation fails.
@since 2.1.0
Attributes
@return [ Server::Address ] address The server address.
@return [ String ] command_name
The name of the command.
@return [ String ] database_name
The name of the database_name.
@return [ Float ] duration The duration of the command in seconds.
@return [ BSON::Document ] failure The error document, if present.
This will only be filled out for errors communicated by a MongoDB server. In other situations, for example in case of a network error, this attribute may be nil.
@return [ String ] message The error message. Unlike the error
document, the error message should always be present.
@return [ Integer ] operation_id
The operation id.
@return [ Integer ] request_id
The request id.
Public Class Methods
Create the event from a wire protocol message payload.
@example Create the event.
CommandFailed.generate(address, 1, payload, duration)
@param [ Server::Address ] address The server address. @param [ Integer ] operation_id
The operation id. @param [ Hash ] payload The message payload. @param [ String ] message The error message. @param [ BSON::Document ] failure The error document, if any. @param [ Float ] duration The duration of the command in seconds.
@return [ CommandFailed
] The event.
@since 2.1.0 @api private
# File lib/mongo/monitoring/event/command_failed.rb, line 94 def self.generate(address, operation_id, payload, message, failure, duration) new( payload[:command_name], payload[:database_name], address, payload[:request_id], operation_id, message, failure, duration ) end
Create the new event.
@example Create the event.
@param [ String ] command_name
The name of the command. @param [ String ] database_name
The database_name
name. @param [ Server::Address ] address The server address. @param [ Integer ] request_id
The request id. @param [ Integer ] operation_id
The operation id. @param [ String ] message The error message. @param [ BSON::Document ] failure The error document, if any. @param [ Float ] duration The duration the command took in seconds.
@since 2.1.0 @api private
# File lib/mongo/monitoring/event/command_failed.rb, line 67 def initialize(command_name, database_name, address, request_id, operation_id, message, failure, duration) @command_name = command_name.to_s @database_name = database_name @address = address @request_id = request_id @operation_id = operation_id @message = message @failure = failure @duration = duration end