AWS S3 Streaming Output and Integration

George Alpizar
George Alpizar
  • Updated

Overview

The AWS S3 output will stream analytics and insights to an S3 bucket.


Review Parameters

Review the following parameters that you can configure in the Edge Delta App:

Name name

Enter a descriptive name for the output or integration.

For outputs, this name will be used to map this destination to a workflow.

This parameter is required. 

Review the following example:

name: my-s3-streamer
Integration integration_name

This parameter only appears when you create an individual output.

This parameter refers to the organization-level integration created in the Integrations page. If you enter this name, then the rest of the fields will be automatically populated.

If you need to add multiple instances of the same integration into the config, then you can add a custom name to each instance via the name field. In this situation, the name should be used to refer to the specific instance of the destination in the workflows.

This parameter is optional. 

Review the following example:

integration_name: orgs-s3stream
Not applicable type

Enter s3stream.

This parameter is required. 

Review the following example:

type: s3stream
Features features

This parameter defines which data types to stream to the destination.

To learn more, review the Review Feature Types section in Stream Outputs and Integrations Overview.

This parameter is optional. 

Review the following example:

features: metric
Bucket bucket

Enter the target S3 bucket.

This parameter is required. 

Review the following example:

bucket: testbucket
Region region

Enter the specified S3 bucket's region.

This parameter is required. 

Review the following example:

region: us-east-2
AWS Key aws_key_id

Enter the AWS key ID associated with the specified bucket. 

This parameter is optional. 

Review the following example:

aws_key_id: '{{ Env "AWS_KEY_ID" }}'
AWS Secret Key aws_sec_key

Enter the AWS secret key ID associated with the specified bucket. 

This parameter is optional. 

Review the following example:

aws_sec_key: '{{ Env "AWS_SECRET_KEY" }}'
Role ARN  role_arn

To assume an AWS IAM role, enter the account ID and role name.

This parameter is optional. 

Review the following example:

role_arn: "arn:aws:iam::<ACCOUNT_ID>:role/<ROLE_NAME>"
External ID  external_id

Enter a unique identifier to avoid a confused deputy attack.

This parameter is optional. 

Review the following example:

external_id: "053cf606-8e80-47bf-b849-8cd1cc826cfc"
Fluster Interval flush_interval

Enter a time to flush (or force) data to the destination, including buffered data. 

This parameter is optional. 

Review the following example:

flush_interval: 30s
Flush Byte Size flush_bytesize

Enter a data threshold to flush (or force) data to the destination, including buffered data. 

This parameter is optional. 

Review the following example:

flush_bytesize: 1M
Buffer TTL  buffer_ttl

Enter a length of time to retry failed streaming data.

After this length of time is reached, the failed streaming data will no longer be tried.

This parameter is optional. 

Review the following example: 

buffer_ttl: 2h

Buffer Path 

buffer_path

Enter a folder path to temporarily store failed streaming data.

The failed streaming data will be retried until the data reaches its destinations or until the Buffer TTL value is reached.

If you enter a path that does not exist, then the agent will create directories, as needed.

This parameter is optional.

Review the following example:

buffer_path: /var/log/edgedelta/pushbuffer/
Buffer Max Size 
buffer_max_bytesize

Enter the maximum size of failed streaming data that you want to retry.

If the failed streaming data is larger than this size, then the failed streaming data will not be retried.

This parameter is optional.

Review the following example:

buffer_max_bytesize: 100MB

Review Sample Configuration

The following sample configuration displays an output without the name of the organization-level integration:

    - name: my-s3-streamer
      type: s3stream
      aws_key_id: {{ Env "AWS_KEY_ID" }}
      aws_sec_key: {{ Env "AWS_SECRET_KEY" }}
      bucket: testbucket
      region: us-east-2
      flush_interval: 30s 
      flush_bytesize: 1M 

Share this document