Module: S3Loggable

Defined in:
lib/s3_loggable.rb,
lib/s3_loggable/logger.rb,
lib/s3_loggable/version.rb,
lib/s3_loggable/exceptions.rb,
lib/s3_loggable/configuration.rb

Defined Under Namespace

Classes: Configuration, ConfigurationError, Logger

Constant Summary collapse

RequiredCredentials =
[:aws_access_key_id, :aws_secret_access_key]
VERSION =
"0.1.4"

Class Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Class Attribute Details

.configurationObject



5
6
7
# File 'lib/s3_loggable/configuration.rb', line 5

def configuration
  @configuration ||= Configuration.new
end

Class Method Details

.configure {|self.configuration| ... } ⇒ Object

Yields:



9
10
11
# File 'lib/s3_loggable/configuration.rb', line 9

def configure
  yield(self.configuration)
end

.credentials?Boolean

Returns:

  • (Boolean)


10
11
12
13
# File 'lib/s3_loggable.rb', line 10

def self.credentials?
  set_credentials unless (Fog.credentials.keys & RequiredCredentials).count == RequiredCredentials.count
  true
end

.set_credentialsObject



15
16
17
18
19
20
21
22
23
24
25
# File 'lib/s3_loggable.rb', line 15

def self.set_credentials
  key = (S3Loggable.configuration.aws_access_key_id || ENV["AWS_ACCESS_KEY_ID"])
  secret = (S3Loggable.configuration.aws_secret_access_key || ENV["AWS_SECRET_ACCESS_KEY"])

  if key and secret
    Fog.credentials[:aws_access_key_id] = key
    Fog.credentials[:aws_secret_access_key] = secret
  else
    raise ConfigurationError, "Set AWS access key id and secret access key"
  end
end

Instance Method Details

#log_to_s3(message, bucket = S3Loggable.configuration.default_bucket, id = self.id.to_s, folder = self.class.to_s, date_time = DateTime.now) ⇒ Object



27
28
29
30
# File 'lib/s3_loggable.rb', line 27

def log_to_s3(message, bucket = S3Loggable.configuration.default_bucket, id = self.id.to_s,
folder = self.class.to_s, date_time = DateTime.now)
  S3Loggable::Logger.new(bucket).log_to_s3(message, id, folder, date_time)
end