aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeiko Bernloehr <Heiko.Bernloehr@FreeIT.de>2015-01-13 23:51:27 +0100
committerHeiko Bernloehr <Heiko.Bernloehr@FreeIT.de>2016-01-27 01:50:46 +0100
commita9bcc93279551b1e01ade6593894530fecedbacf (patch)
treed7ea66fbb7ae3b62ae09e744bd749a75b7722604
parentdafe3f1723501ebba3f10847eb37f360b4693e67 (diff)
downloadecs2-a9bcc93279551b1e01ade6593894530fecedbacf.tar.gz
ecs2-a9bcc93279551b1e01ade6593894530fecedbacf.zip
Logging-Observer.
Logging event creations.
-rw-r--r--app/models/logging_observer.rb15
-rw-r--r--config/environment.rb1
2 files changed, 16 insertions, 0 deletions
diff --git a/app/models/logging_observer.rb b/app/models/logging_observer.rb
new file mode 100644
index 0000000..d920666
--- /dev/null
+++ b/app/models/logging_observer.rb
@@ -0,0 +1,15 @@
+class LoggingObserver < ActiveRecord::Observer
+ observe Event
+
+ def after_create(model)
+ case model
+ when Event
+ msgpath= "#{model.message.ressource.namespace}/#{model.message.ressource.ressource}/#{model.message.id}"
+ evreceiver_pid= model.participant.id
+ evreceiver_mid= (Membership.receiver(evreceiver_pid, model.message.id)).id
+ evtype= model.ev_type.name
+ model.logger.info("**#{model.message.ressource.namespace}** Event: Type:#{evtype} -- MsgPath:#{msgpath} -- ReceiverPid:#{evreceiver_pid} -- ReceiverMid:#{evreceiver_mid}")
+ end
+ end
+
+end
diff --git a/config/environment.rb b/config/environment.rb
index 9d23148..9bb578b 100644
--- a/config/environment.rb
+++ b/config/environment.rb
@@ -47,6 +47,7 @@ Rails::Initializer.run do |config|
# Activate observers that should always be running
# config.active_record.observers = :cacher, :garbage_collector, :forum_observer
+ config.active_record.observers = :logging_observer
# Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
# Run "rake -D time" for a list of tasks for finding time zone names.