Giter Site home page Giter Site logo

fluent-plugin-in-kinesis's Introduction

Fluent::Plugin::InKinesis

##Overview

  • This plugin retrieves records from Amazon Kinesis.

  • 1 thread is used for each shard; record retrieval occurs in parallel.

  • Number of threads is automatically adjusted to match number of shards.

  • Sequence numbers from each shard are saved.

  • Conforms to default fluent format.

Installation

Add this line to your application's Gemfile:

gem 'fluent-plugin-in-kinesis'

And then execute:

$ bundle

Or install it yourself as:

$ gem install fluent-plugin-in-kinesis

##Configuration

type

Use the word 'kinesis'.

stream_name

Name of the stream to put data.

aws_key_id

AWS access key id.

aws_sec_key

AWS secret key.

region

AWS region of your stream. It should be in form like "us-east-1", "us-west-2".

Refer to Regions and Endpoints in AWS General Reference

for supported regions.

profile & credentials_path

Set as needed to specify credentials file.

stream_name

Name of the stream to put data.

state_dir_path

Directory to save sequence number data. Save file will be created in specified directory.

use_base64

Set if BASE64 decode is necessary.

use_gunzip

Set if GZip decompress is necessary.

load_records_limit

The maximum number of records to return.

Valid range: Minimum value of 1. Maximum value of 10000.

load_record_interval

Frequency of record retrieval.

Value is in seconds.

load_shard_interval

Frequency of shard state checks.

Value is in seconds.

format

Parse strings in log. fluentd default parser.

describe_shard

Set to manually specify target Kinesis shards (see below).

describe_use_shards

Specify the shards to be used (see below).

retries_on_get_records

Max retry count.

##Configuration examples

  type kinesis
  
  stream_name YOUR_STREAM_NAME
  
  aws_key_id YOUR_AWS_ACCESS_KEY
  
  aws_sec_key YOUR_SECRET_KEY

  region ap-northeast-1
  
  load_records_limit 1000
  
  load_shard_interval 10
  
  load_record_interval 2
  
  tag target.log
  
  state_dir_path /tmp/kinesis/save_file
  
  use_base64 true
  
  format json
  
</source>

##Using describe_shard When describe_shard is specified, target shards are manually set using describe_use_shards parameter.

<source>

  type kinesis
  
  stream_name YOUR_STREAM_NAME
  
  aws_key_id YOUR_AWS_ACCESS_KEY
  
  aws_sec_key YOUR_SECRET_KEY

  region ap-northeast-1
  
  load_records_limit 1000
  
  load_shard_interval 10
  
  load_record_interval 2
  
  tag target.log
  
  state_dir_path /tmp/kinesis/save_file
  
  use_base64 true
  
  format json
  
  describe_shard true
  
  describe_use_shards  ["shardId-000000000000", "shardId-000000000002"]
  
</source>

Related Resources

fluent-plugin-in-kinesis's People

Contributors

jegt avatar koid avatar sasasin avatar yusukeyamatani avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

fluent-plugin-in-kinesis's Issues

Kinesis Consumer Library integration

We'd be very interested in this plugin if it supported consuming Kinesis data via the KCL, since we currently produce data into Kinesis using the KPL. The KCL does nice things like deaggregation and cloudwatch metrics.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.