Package

com.gilt.gfc.aws.kinesis

client

Permalink

package client

Visibility
  1. Public
  2. All

Type Members

  1. case class KCLWorkerRunner(config: KinesisClientLibConfiguration, dynamoDBKinesisAdapter: Option[AmazonDynamoDBStreamsAdapterClient] = None, checkpointInterval: FiniteDuration = 5 minutes, numRetries: Int = 3, initialize: (String) ⇒ Unit = (_) => (), shutdown: (String, IRecordProcessorCheckpointer, ShutdownReason) ⇒ Unit = (_,_,_) => (), metricsFactory: Option[IMetricsFactory] = None, initialRetryDelay: Duration = 10 seconds, maxRetryDelay: FiniteDuration = 3 minutes) extends Loggable with Product with Serializable

    Permalink

    A helper class to merge required/optional/default parameters and run a KCL Worker.

    A helper class to merge required/optional/default parameters and run a KCL Worker.

    config

    KCL config, @see KCLConfiguration for some useful defaults.

    checkpointInterval

    how often to save checkpoint to dynamodb

    numRetries

    how many times to retry operation on exception before giving up

    initialize

    (ShardId) => Unit : additional code to execute when handler is initialized

    shutdown

    (ShardId, Checkpointer, ShutdownReason) => Unit : additional code to execute on shutdown

    metricsFactory

    CloudWatch metrics factory

    initialRetryDelay

    the initial failed operation retry delay value, defaults to 10 seconds

    maxRetryDelay

    the maximum failed operation retry delay value, defaults to 3 minutes

  2. case class KCLWorkerRunnerRecordConversionException(record: Record, cause: Throwable) extends RuntimeException with Product with Serializable

    Permalink
  3. case class KCLWorkerRunnerRecordProcessingException(record: Record, shardId: String, cause: Throwable) extends RuntimeException with Product with Serializable

    Permalink
  4. case class KinesisClientEndpoints(dynamoDBEndpoint: String, kinesisEndpoint: String) extends Product with Serializable

    Permalink

    Configures KCL

    Configures KCL

    http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-record-processor-implementation-app-java.html https://github.com/aws/aws-sdk-java/blob/master/src/samples/AmazonKinesisApplication/SampleKinesisApplication.java

    https://github.com/awslabs/amazon-kinesis-client

  5. trait KinesisPublisher extends AnyRef

    Permalink

    Publishes a mini-batch of records to Kinesis.

    Publishes a mini-batch of records to Kinesis. Implements the necessary retry logic.

  6. case class KinesisPublisherBatchResult(successRecordCount: Int = 0, failureRecordCount: Int = 0, serviceErrorCount: Int = 0, attemptCount: Int = 0, errorCodes: HashMap[String, Int] = HashMap.empty, shardRecordCounts: HashMap[String, Int] = HashMap.empty) extends Product with Serializable

    Permalink

    Stats about attempted call to publishBatch(), mostly to allow metrics library hooks.

  7. case class KinesisRecord(partitionKey: String, data: Array[Byte]) extends Product with Serializable

    Permalink

    Simplified view of AWS SDK's kinesis record, just a couple of things we care about.

  8. trait KinesisRecordReader[A] extends AnyRef

    Permalink

    Type class of things that kinesis records can be converted to.

  9. trait KinesisRecordWriter[R] extends AnyRef

    Permalink

    'type class' of things that can be converted to KinesisRecord.

Value Members

  1. object Implicits

    Permalink

    Few implicit definitions for easy import.

  2. object KCLConfiguration

    Permalink
  3. object KCLRecordProcessorFactory

    Permalink

    Constructs IRecordProcessorFactory.

    Constructs IRecordProcessorFactory.

    See https://github.com/aws/aws-sdk-java/blob/master/src/samples/AmazonKinesisApplication/SampleKinesisApplication.java http://docs.aws.amazon.com/kinesis/latest/dev/kinesis-record-processor-implementation-app-java.html

    N.B. This only constructs IRecordProcessorFactory, if you want higher level entry point take a look at KCLWorkerRunner.

  4. object KinesisPublisher

    Permalink

    Constructs KinesisPublisher.

  5. object KinesisPublisherBatchResult extends Serializable

    Permalink
  6. object KinesisRecordReader

    Permalink

Ungrouped