Class: MCollective::RPC::Audit

Inherits:
Object
  • Object
show all
Defined in:
lib/mcollective/rpc/audit.rb

Overview

Auditing of requests is done only for SimpleRPC requests, you provide a plugin in the MCollective::Audit::* namespace which the SimpleRPC framework calls for each message

We provide a simple one that logs to a logfile in the class MCollective::Audit::Logfile you can create your own:

Create a class in plugins/mcollective/audit/<yourplugin>.rb

You must inherit from MCollective::RPC::Audit which will take care of registering you with the plugin system.

Your plugin must provide audit_request(request, connection) the request parameter will be an instance of MCollective::RPC::Request

To enable auditing you should set:

rpcaudit = 1 rpcauditprovider = Logfile

in the config file this will enable logging using the MCollective::Audit::Logile class

The Audit class acts as a base for audit plugins and takes care of registering them with the plugin manager

Direct Known Subclasses

Audit::Choria

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.inherited(klass) ⇒ Object



29
30
31
32
# File 'lib/mcollective/rpc/audit.rb', line 29

def self.inherited(klass)
  PluginManager << {:type => "rpcaudit_plugin", :class => klass.to_s}
  super
end

Instance Method Details

#audit_request(request, connection) ⇒ Object



34
35
36
# File 'lib/mcollective/rpc/audit.rb', line 34

def audit_request(request, connection)
  @log.error("audit_request is not implimented in #{this.class}")
end