Class: LogStash::Outputs::S3::WriteBucketPermissionValidator

Inherits:
Object
  • Object
show all
Defined in:
lib/logstash/outputs/s3/write_bucket_permission_validator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(logger) ⇒ WriteBucketPermissionValidator

Returns a new instance of WriteBucketPermissionValidator.



12
13
14
# File 'lib/logstash/outputs/s3/write_bucket_permission_validator.rb', line 12

def initialize(logger)
  @logger = logger
end

Instance Attribute Details

#loggerObject (readonly)

Returns the value of attribute logger.



10
11
12
# File 'lib/logstash/outputs/s3/write_bucket_permission_validator.rb', line 10

def logger
  @logger
end

Instance Method Details

#valid?(bucket_resource, upload_options = {}) ⇒ Boolean

Returns:

  • (Boolean)


16
17
18
19
20
21
22
23
24
25
26
27
28
# File 'lib/logstash/outputs/s3/write_bucket_permission_validator.rb', line 16

def valid?(bucket_resource, upload_options = {})
  begin
    upload_test_file(bucket_resource, upload_options)
    true
  rescue StandardError => e
    logger.error("Error validating bucket write permissions!",
      :message => e.message,
      :class => e.class.name,
      :backtrace => e.backtrace
      )
    false
  end
end