Log times when outputting in the TwitterStreamAgent::Worker

Andrew Cantino 9 lat temu
rodzic
commit
a78c365ba0
2 zmienionych plików z 8 dodań i 10 usunięć
  1. 6 8
      app/models/agents/twitter_stream_agent.rb
  2. 2 2
      config/initializers/delayed_job.rb

+ 6 - 8
app/models/agents/twitter_stream_agent.rb

@@ -159,7 +159,7 @@ module Agents
159 159
         @filter_to_agent_map = @config[:filter_to_agent_map]
160 160
 
161 161
         schedule_in RELOAD_TIMEOUT do
162
-          puts "--> Restarting TwitterStream #{id}"
162
+          puts "--> Restarting TwitterStream #{id} at #{Time.now} <--"
163 163
           restart!
164 164
         end
165 165
       end
@@ -199,16 +199,16 @@ module Agents
199 199
         end
200 200
 
201 201
         stream.on_error do |message|
202
-          STDERR.puts " --> Twitter error: #{message} <--"
202
+          STDERR.puts " --> Twitter error: #{message} at #{Time.now} <--"
203 203
         end
204 204
 
205 205
         stream.on_no_data do |message|
206
-          STDERR.puts " --> Got no data for awhile; trying to reconnect."
206
+          STDERR.puts " --> Got no data for awhile; trying to reconnect at #{Time.now} <--"
207 207
           restart!
208 208
         end
209 209
 
210 210
         stream.on_max_reconnects do |timeout, retries|
211
-          STDERR.puts " --> Oops, tried too many times! <--"
211
+          STDERR.puts " --> Oops, tried too many times! at #{Time.now} <--"
212 212
           sleep 60
213 213
           restart!
214 214
         end
@@ -222,20 +222,18 @@ module Agents
222 222
         status['text'] = status['text'].gsub(/&lt;/, "<").gsub(/&gt;/, ">").gsub(/[\t\n\r]/, '  ')
223 223
 
224 224
         if status["retweeted_status"].present? && status["retweeted_status"].is_a?(Hash)
225
-          puts "Skipping retweet: #{status["text"]}"
226 225
           return
227 226
         elsif @recent_tweets.include?(status["id_str"])
228
-          puts "Skipping duplicate tweet: #{status["text"]}"
227
+          puts "(#{Time.now}) Skipping duplicate tweet: #{status["text"]}"
229 228
           return
230 229
         end
231 230
 
232 231
         @recent_tweets << status["id_str"]
233 232
         @recent_tweets.shift if @recent_tweets.length > DUPLICATE_DETECTION_LENGTH
234
-        puts status["text"]
235 233
         @filter_to_agent_map.keys.each do |filter|
236 234
           next unless (filter.downcase.split(SEPARATOR) - status["text"].downcase.split(SEPARATOR)).reject(&:empty?) == [] # Hacky McHackerson
237 235
           @filter_to_agent_map[filter].each do |agent|
238
-            puts " -> #{agent.name}"
236
+            puts "(#{Time.now}) #{agent.name} received: #{status["text"]}"
239 237
             AgentRunner.with_connection do
240 238
               agent.process_tweet(filter, status)
241 239
             end

+ 2 - 2
config/initializers/delayed_job.rb

@@ -6,8 +6,8 @@ Delayed::Worker.default_priority = 10
6 6
 Delayed::Worker.delay_jobs = !Rails.env.test?
7 7
 Delayed::Worker.sleep_delay = (ENV['DELAYED_JOB_SLEEP_DELAY'].presence || 10).to_f
8 8
 
9
-# Delayed::Worker.logger = Logger.new(Rails.root.join('log', 'delayed_job.log'))
10
-# Delayed::Worker.logger.level = Logger::DEBUG
9
+Delayed::Worker.logger = Logger.new(STDOUT)
10
+Delayed::Worker.logger.level = Logger::WARN
11 11
 
12 12
 class Delayed::Job
13 13
   scope :pending, ->{ where("locked_at IS NULL AND attempts = 0") }