You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by bu...@apache.org on 2017/01/18 14:18:41 UTC
svn commit: r1005161 - in /websites/production/camel/content:
aws-kinesis.html cache/main.pageCache
Author: buildbot
Date: Wed Jan 18 14:18:41 2017
New Revision: 1005161
Log:
Production update by buildbot for camel
Modified:
websites/production/camel/content/aws-kinesis.html
websites/production/camel/content/cache/main.pageCache
Modified: websites/production/camel/content/aws-kinesis.html
==============================================================================
--- websites/production/camel/content/aws-kinesis.html (original)
+++ websites/production/camel/content/aws-kinesis.html Wed Jan 18 14:18:41 2017
@@ -85,20 +85,23 @@
<tbody>
<tr>
<td valign="top" width="100%">
-<div class="wiki-content maincontent"><h2 id="AWS-KINESIS-KinesisComponent">Kinesis Component</h2><p><strong>Available as of Camel 2.17</strong></p><p>The Kinesis component supports receiving messages from Amazon Kinesis service.</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Prerequisites</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>You must have a valid Amazon Web Services developer account, and be signed up to use Amazon Kinesis. More information are available at <a shape="rect" class="external-link" href="http://aws.amazon.com/kinesis/" rel="nofollow">AWS Kinesis</a></p></div></div><h3 id="AWS-KINESIS-URIFormat">URI Format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<div class="wiki-content maincontent"><h2 id="AWS-KINESIS-KinesisComponent">Kinesis Component</h2><p><strong>Available as of Camel 2.17</strong></p><p>The Kinesis component supports receiving messages from and sending messages to Amazon Kinesis service.</p><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Prerequisites</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>You must have a valid Amazon Web Services developer account, and be signed up to use Amazon Kinesis. More information are available at <a shape="rect" class="external-link" href="http://aws.amazon.com/kinesis/" rel="nofollow">AWS Kinesis</a></p></div></div><h3 id="AWS-KINESIS-URIFormat">URI Format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[aws-kinesis://stream-name[?options]
]]></script>
-</div></div><p>The stream needs to be created prior to it being used.<br clear="none"> You can append query options to the URI in the following format, ?options=value&option2=value&...</p><h3 id="AWS-KINESIS-URIOptions">URI Options</h3><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Context</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>amazonKinesisClient</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Reference to a <code>com.amazonaws.services.kinesis.AmazonKinesisClient</code> in the <a shape="rect" href="registry.htm
l">Registry</a>.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxMessagesPerPoll</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>100</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Maximum results that will be returned in each poll to the AWS API, Given that the shard iterator is unique to the consumer, changing it shouldn't effect other consumers.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>iteratorType</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>TRIM_HORIZON</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>One of trim_horizon or latest. See <a shape="rect" class="external-link" href="http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html" rel="nofollow">http://docs.aws.amazon.com/kinesis/latest/A
PIReference/API_GetShardIterator.html</a> for descriptions of these two iterator types.</p></td></tr></tbody></table></div><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Required Kinesis component options</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>You have to provide the amazonKinesisClient in the <a shape="rect" href="registry.html">Registry</a> with proxies and relevant credentials configured.</p></div></div><h3 id="AWS-KINESIS-BatchConsumer">Batch Consumer</h3><p>This component implements the <a shape="rect" href="batch-consumer.html">Batch Consumer</a>.</p><p>This allows you for instance to know how many messages exists in this batch and for instance let the <a shape="rect" href="aggregator.html">Aggregator</a> aggregate this number of messages.</p><h3 id="AWS-KINESIS-Usage">Usage</h3><h4 id="AWS-KINESIS-Messageheade
rssetbytheKinesisconsumer">Message headers set by the Kinesis consumer</h4><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelAwsKinesisSequenceNumber</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The sequence number of the record. This is represented as a String as it size is not defined by the API. If it is to be used as a numerical type then use</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelAwsKinesisApproximateArrivalTimestamp</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="conflu
enceTd"><p>The time AWS assigned as the arrival time of the record.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelAwsKinesisPartitionKey</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code><code>String</code></code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Identifies which shard in the stream the data record is assigned to.</p></td></tr></tbody></table></div><h4 id="AWS-KINESIS-AmazonKinesisconfiguration">AmazonKinesis configuration</h4><p>You will need to create an instance of AmazonDynamoDBStreamsClient and bind it to the registry</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><p>The stream needs to be created prior to it being used.<br clear="none"> You can append query options to the URI in the following format, ?options=value&option2=value&...</p><h3 id="AWS-KINESIS-URIOptions">URI Options</h3><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Context</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>amazonKinesisClient</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Reference to a <code>com.amazonaws.services.kinesis.AmazonKinesisClient</code> in the <a shape="rect" href="registry.htm
l">Registry</a>.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>maxMessagesPerPoll</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>100</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Maximum results that will be returned in each poll to the AWS API, Given that the shard iterator is unique to the consumer, changing it shouldn't effect other consumers.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>iteratorType</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>TRIM_HORIZON</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>One of TRIM_HORIZON, LATEST, AFTER_SEQUENCE_NUMBER or AT_SEQUENCE_NUMBER. See <a shape="rect" class="external-link" href="http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html" rel="nofollow">
http://docs.aws.amazon.com/kinesis/latest/APIReference/API_GetShardIterator.html</a> for descriptions of these two iterator types.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd">sequenceNumber</td><td colspan="1" rowspan="1" class="confluenceTd"><span>null</span></td><td colspan="1" rowspan="1" class="confluenceTd"><span>Consumer</span></td><td colspan="1" rowspan="1" class="confluenceTd">The sequence number to start polling from. Required if iteratorType is set to AFTER_SEQUENCE_NUMBER or AT_SEQUENCE_NUMBER</td></tr></tbody></table></div><div class="confluence-information-macro confluence-information-macro-information"><p class="title">Required Kinesis component options</p><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>You have to provide the amazonKinesisClient in the <a shape="rect" href="registry.html">Registry</a> with proxies and relevant credentials conf
igured.</p></div></div><h3 id="AWS-KINESIS-BatchConsumer">Batch Consumer</h3><p>This component implements the <a shape="rect" href="batch-consumer.html">Batch Consumer</a>.</p><p>This allows you for instance to know how many messages exists in this batch and for instance let the <a shape="rect" href="aggregator.html">Aggregator</a> aggregate this number of messages.</p><h3 id="AWS-KINESIS-Usage">Usage</h3><h4 id="AWS-KINESIS-MessageheaderssetbytheKinesisconsumer">Message headers set by the Kinesis consumer</h4><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelAwsKinesisSequenceNumber</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" row
span="1" class="confluenceTd"><p>The sequence number of the record. This is represented as a String as it size is not defined by the API. If it is to be used as a numerical type then use</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelAwsKinesisApproximateArrivalTimestamp</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The time AWS assigned as the arrival time of the record.</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>CamelAwsKinesisPartitionKey</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code><code>String</code></code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Identifies which shard in the stream the data record is assigned to.</p></td></tr></tbody></table></div><h4 id="AWS-KINESIS-AmazonKinesisconfiguration">AmazonKinesis configuration</h4><p>You will need to create an instance of
AmazonKinesisClient and bind it to the registry</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[ClientConfiguration clientConfiguration = new ClientConfiguration();
clientConfiguration.setProxyHost("http://myProxyHost");
clientConfiguration.setProxyPort(8080);
Region region = Region.getRegion(Regions.fromName(region));
-region.createClient(AmazonDynamoDBStreamsClient.class, null, clientConfiguration);
+region.createClient(AmazonKinesisClient.class, null, clientConfiguration);
// the 'null' here is the AWSCredentialsProvider which defaults to an instance of DefaultAWSCredentialsProviderChain
registry.bind("kinesisClient", client);
]]></script>
+</div></div><p>You then have to reference the AmazonKinesisClient in the amazonKinesisClient URI option.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+<script class="brush: java; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[from("aws-kinesis://mykinesisstream?amazonKinesisClient=#kinesisClient")
+ .to("log:out?showAll=true");]]></script>
</div></div><h4 id="AWS-KINESIS-ProvidingAWSCredentials">Providing AWS Credentials</h4><p>It is recommended that the credentials are obtained by using the <a shape="rect" class="external-link" href="http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/DefaultAWSCredentialsProviderChain.html" rel="nofollow">DefaultAWSCredentialsProviderChain</a> that is the default when creating a new ClientConfiguration instance, however, a different <a shape="rect" class="external-link" href="http://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/auth/AWSCredentialsProvider.html" rel="nofollow">AWSCredentialsProvider</a> can be specified when calling createClient(...).</p><h3 id="AWS-KINESIS-Dependencies">Dependencies</h3><p>Maven users will need to add the following dependency to their pom.xml.</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeHeader panelHeader pdl" style="border-bottom-width: 1px;"><b>pom.xml</b></div><div class="codeCo
ntent panelContent pdl">
<script class="brush: xml; gutter: false; theme: Default" type="syntaxhighlighter"><![CDATA[<dependency>
<groupId>org.apache.camel</groupId>
Modified: websites/production/camel/content/cache/main.pageCache
==============================================================================
Binary files - no diff available.