123456789_123456789_123456789_123456789_123456789_

Class: ActiveStorage::LogSubscriber

Relationships & Source Files
Super Chains via Extension / Inclusion / Inheritance
Class Chain:
Instance Chain:
Inherits: ActiveSupport::LogSubscriber
Defined in: activestorage/lib/active_storage/log_subscriber.rb

Constant Summary

::ActiveSupport::LogSubscriber - Inherited

BLACK, BLUE, CYAN, GREEN, LEVEL_CHECKS, MAGENTA, MODES, RED, WHITE, YELLOW

Class Attribute Summary

Class Method Summary

::ActiveSupport::LogSubscriber - Inherited

::ActiveSupport::Subscriber - Inherited

.attach_to

Attach the subscriber to a namespace.

.detach_from

Detach the subscriber from a namespace.

.method_added

Adds event subscribers for all new methods added to the class.

.new, .subscribers, .add_event_subscriber, .fetch_public_methods, .find_attached_subscriber, .invalid_event?, .pattern_subscribed?, .prepare_pattern, .remove_event_subscriber

Instance Attribute Summary

Instance Method Summary

Constructor Details

This class inherits a constructor from ActiveSupport::LogSubscriber

Instance Method Details

#debug(event, colored_message) (private)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 62

def debug(event, colored_message)
  super log_prefix_for_service(event) + colored_message
end

#info(event, colored_message) (private)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 58

def info(event, colored_message)
  super log_prefix_for_service(event) + colored_message
end

#key_in(event) (private)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 70

def key_in(event)
  event.payload[:key]
end

#log_prefix_for_service(event) (private)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 66

def log_prefix_for_service(event)
  color "  #{event.payload[:service]} Storage (#{event.duration.round(1)}ms) ", CYAN
end

#logger

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 53

def logger
  ActiveStorage.logger
end

#preview(event)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 21

def preview(event)
  info event, color("Previewed file from key: #{key_in(event)}", BLUE)
end

#service_delete(event)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 26

def service_delete(event)
  info event, color("Deleted file from key: #{key_in(event)}", RED)
end

#service_delete_prefixed(event)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 31

def service_delete_prefixed(event)
  info event, color("Deleted files by key prefix: #{event.payload[:prefix]}", RED)
end

#service_download(event) Also known as: #service_streaming_download

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 14

def service_download(event)
  info event, color("Downloaded file from key: #{key_in(event)}", BLUE)
end

#service_exist(event)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 36

def service_exist(event)
  debug event, color("Checked if file exists at key: #{key_in(event)} (#{event.payload[:exist] ? "yes" : "no"})", BLUE)
end

#service_mirror(event)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 46

def service_mirror(event)
  message = "Mirrored file at key: #{key_in(event)}"
  message += " (checksum: #{event.payload[:checksum]})" if event.payload[:checksum]
  debug event, color(message, GREEN)
end

#service_streaming_download(event)

Alias for #service_download.

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 19

alias_method :service_streaming_download, :service_download

#service_upload(event)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 7

def service_upload(event)
  message = "Uploaded file to key: #{key_in(event)}"
  message += " (checksum: #{event.payload[:checksum]})" if event.payload[:checksum]
  info event, color(message, GREEN)
end

#service_url(event)

[ GitHub ]

  
# File 'activestorage/lib/active_storage/log_subscriber.rb', line 41

def service_url(event)
  debug event, color("Generated URL for file at key: #{key_in(event)} (#{event.payload[:url]})", BLUE)
end