module SendAwsKinesisEvent
Constants
- VERSION
Public Class Methods
call(partition_key, data)
click to toggle source
# File lib/send_aws_kinesis_event.rb, line 5 def self.call(partition_key, data) begin kinesis = Aws::Kinesis::Client.new( region: ENV['AWS_REGION'], access_key_id: ENV['AWS_ACCESS_KEY_ID'], secret_access_key: ENV['AWS_SECRET_ACCESS_KEY'] ) data_blob = MultiJson.dump(data) record = kinesis.put_record(:stream_name => ENV['KINESIS_STREAM_NAME'], :data => data_blob, :partition_key => partition_key ) rescue => error puts error if record shard_id = record[:shard_id] if record sequence_number = record[:sequence_number] if record end Rails.logger.info "Put Kinesis event record to partition key '#{partition_key}' shard '#{shard_id}' (#{sequence_number}): '#{data_blob}'" end end