1
0

image_subscriber.rb 812 B

123456789101112131415161718192021222324252627
  1. # frozen_string_literal: true
  2. module Docs
  3. class ImageSubscriber < Subscriber
  4. self.namespace = 'image'
  5. def broken(event)
  6. log "Skipped broken image (#{event.payload[:code]}): #{event.payload[:url]}"
  7. end
  8. def invalid(event)
  9. log "Skipped invalid image (#{event.payload[:content_type]}): #{event.payload[:url]}"
  10. end
  11. def too_big(event)
  12. log "Skipped large image (#{(event.payload[:size] / 1_000.0).round} KB): #{event.payload[:url]}"
  13. end
  14. def error(event)
  15. exception = event.payload[:exception]
  16. log "ERROR: #{event.payload[:url]}"
  17. puts " #{exception.class}: #{exception.message.gsub("\n", "\n ")}"
  18. puts exception.backtrace.select { |line| line.start_with?(Docs.root_path) }.join("\n ").prepend("\n ")
  19. puts "\n"
  20. end
  21. end
  22. end