@@ -103,6 +103,14 @@ class Agent < ActiveRecord::Base |
||
103 | 103 |
keep_events_for > 0 ? keep_events_for.days.from_now : nil |
104 | 104 |
end |
105 | 105 |
|
106 |
+ def update_event_expirations! |
|
107 |
+ if keep_events_for == 0 |
|
108 |
+ events.update_all :expires_at => nil |
|
109 |
+ else |
|
110 |
+ events.update_all "expires_at = DATE_ADD(`created_at`, INTERVAL #{keep_events_for.to_i} DAY)" |
|
111 |
+ end |
|
112 |
+ end |
|
113 |
+ |
|
106 | 114 |
def make_message(payload, message = options[:message]) |
107 | 115 |
message.gsub(/<([^>]+)>/) { Utils.value_at(payload, $1) || "??" } |
108 | 116 |
end |
@@ -151,6 +159,11 @@ class Agent < ActiveRecord::Base |
||
151 | 159 |
log(message, options.merge(:level => 4)) |
152 | 160 |
end |
153 | 161 |
|
162 |
+ def delete_logs! |
|
163 |
+ logs.delete_all |
|
164 |
+ update_column :last_error_log_at, nil |
|
165 |
+ end |
|
166 |
+ |
|
154 | 167 |
# Validations and Callbacks |
155 | 168 |
|
156 | 169 |
def sources_are_owned |
@@ -181,25 +194,8 @@ class Agent < ActiveRecord::Base |
||
181 | 194 |
update_event_expirations! if keep_events_for_changed? |
182 | 195 |
end |
183 | 196 |
|
184 |
- def delete_logs! |
|
185 |
- logs.delete_all |
|
186 |
- update_column :last_error_log_at, nil |
|
187 |
- end |
|
188 |
- |
|
189 |
- def log(message, options = {}) |
|
190 |
- puts "Agent##{id}: #{message}" unless Rails.env.test? |
|
191 |
- AgentLog.log_for_agent(self, message, options) |
|
192 |
- end |
|
193 |
- |
|
194 |
- def update_event_expirations! |
|
195 |
- if keep_events_for == 0 |
|
196 |
- events.update_all :expires_at => nil |
|
197 |
- else |
|
198 |
- events.update_all "expires_at = DATE_ADD(`created_at`, INTERVAL #{keep_events_for.to_i} DAY)" |
|
199 |
- end |
|
200 |
- end |
|
201 |
- |
|
202 | 197 |
# Class Methods |
198 |
+ |
|
203 | 199 |
class << self |
204 | 200 |
def cannot_be_scheduled! |
205 | 201 |
@cannot_be_scheduled = true |
@@ -458,7 +458,7 @@ describe Agent do |
||
458 | 458 |
|
459 | 459 |
it "sets expires_at on created events" do |
460 | 460 |
event = agents(:jane_weather_agent).create_event :payload => { 'hi' => 'there' } |
461 |
- event.expires_at.should be_within(5).of(agents(:jane_weather_agent).keep_events_for.days.from_now) |
|
461 |
+ event.expires_at.to_i.should be_within(5).of(agents(:jane_weather_agent).keep_events_for.days.from_now.to_i) |
|
462 | 462 |
end |
463 | 463 |
end |
464 | 464 |
|