lib/mongo/monitoring/event/command_succeeded.rb in mongo-2.1.0.beta vs lib/mongo/monitoring/event/command_succeeded.rb in mongo-2.1.0.rc0
- old
+ new
@@ -84,12 +84,31 @@
command_payload[:command_name],
command_payload[:database_name],
address,
command_payload[:request_id],
operation_id,
- reply_payload ? reply_payload[:reply] : nil,
+ generate_reply(command_payload, reply_payload),
duration
)
+ end
+
+ private
+
+ def self.generate_reply(command_payload, reply_payload)
+ if reply_payload
+ reply = reply_payload[:reply]
+ if cursor = reply[:cursor]
+ reply = reply.merge(cursor: cursor.merge(ns: namespace(command_payload)))
+ end
+ reply
+ else
+ BSON::Document.new(ok: 1)
+ end
+ end
+
+ def self.namespace(payload)
+ command = payload[:command]
+ "#{payload[:database_name]}.#{command[:collection] || command.values.first}"
end
end
end
end
end