Reads events from Amazon S3 objects. Supports both list-based polling and SQS event notifications.

Aws S3🔗

Reads events from Amazon S3 objects. Supports both list-based polling and SQS event notifications.

Configuration🔗

FieldTypeRequiredDefaultDescription
decodingDecoderConfigEnum (optional)noOptional decoder configuration for input events.
modestringyesSource mode: list for polling or event_stream for SQS notifications.
bucketstringyesS3 bucket to read objects from.
prefixstring (optional)noKey prefix filter (List mode only).
interval_secsunsigned integerno60Polling interval in seconds (List mode only).
delete_after_readbooleannofalseWhether to delete objects after reading (List mode only).
authAwsConfig (optional)no[Authentication] AWS authentication and region settings.
  regionstring (optional)noAWS region to operate in.
  endpointstring (optional)noCustom AWS endpoint URL (for LocalStack, MinIO, etc.).
  access_key_idstring (optional)noAWS access key ID for static credentials.
  secret_access_keystring (optional)noAWS secret access key for static credentials. (sensitive)
  session_tokenstring (optional)noAWS session token for temporary credentials. (sensitive)
  assume_rolestring (optional)noIAM role ARN to assume.
  session_namestring (optional)noSession name when assuming a role.
  external_idstring (optional)noExternal ID for cross-account role assumption.
  profilestring (optional)noAWS profile name from shared credentials file.
  credentials_filestring (optional)noPath to an AWS credentials file.
  imdsImdsConfig (optional)noInstance Metadata Service (IMDS) configuration.
    connect_timeout_secondsunsigned integer (optional)no1Timeout in seconds for IMDS connection.
    max_attemptsunsigned integer (optional)no3Maximum number of IMDS retry attempts.
    read_timeout_secondsunsigned integer (optional)no1Timeout in seconds for IMDS read operations.
  load_timeout_secsunsigned integer (optional)no10Timeout in seconds for loading AWS credentials.
sqsSqsConfigno[Event Stream] SQS configuration for consuming S3 event notifications.
  authAwsConfig (optional)noAWS authentication and region settings.
    regionstring (optional)noAWS region to operate in.
    endpointstring (optional)noCustom AWS endpoint URL (for LocalStack, MinIO, etc.).
    access_key_idstring (optional)noAWS access key ID for static credentials.
    secret_access_keystring (optional)noAWS secret access key for static credentials. (sensitive)
    session_tokenstring (optional)noAWS session token for temporary credentials. (sensitive)
    assume_rolestring (optional)noIAM role ARN to assume.
    session_namestring (optional)noSession name when assuming a role.
    external_idstring (optional)noExternal ID for cross-account role assumption.
    profilestring (optional)noAWS profile name from shared credentials file.
    credentials_filestring (optional)noPath to an AWS credentials file.
    imdsImdsConfig (optional)noInstance Metadata Service (IMDS) configuration.
      connect_timeout_secondsunsigned integer (optional)no1Timeout in seconds for IMDS connection.
      max_attemptsunsigned integer (optional)no3Maximum number of IMDS retry attempts.
      read_timeout_secondsunsigned integer (optional)no1Timeout in seconds for IMDS read operations.
    load_timeout_secsunsigned integer (optional)no10Timeout in seconds for loading AWS credentials.
  queue_urlstringyesSQS queue URL to consume from.
  poll_secsunsigned integerno20Polling interval in seconds.
  max_number_of_messagesintegerno10Maximum number of messages per poll request.
  visibility_timeout_secsinteger (optional)noVisibility timeout in seconds for received messages.
  client_concurrencyunsigned integerno1Number of concurrent SQS client workers.
  connect_timeout_secondsunsigned integer (optional)noConnection timeout in seconds.
  read_timeout_secondsunsigned integer (optional)noRead timeout in seconds.
  operation_timeout_secondsunsigned integer (optional)noOperation timeout in seconds.
  delete_messagebooleannotrueWhether to delete messages after successful processing.
  delete_failed_messagebooleannofalseWhether to delete messages that failed processing.
  deferredDeferredConfig (optional)noDeferred message configuration.
    max_age_secsunsigned integer (optional)no3600Maximum age in seconds for deferred messages.
    queue_urlstringyesSQS queue URL for deferred message processing.

Telemetry🔗

This component emits the following standard telemetry metrics and events.

Metrics🔗

NameTypeDescription
component_received_events_totalCounterTotal number of Kinetic events created by this source.
component_received_event_bytes_totalCounterTotal estimated byte size of events created.
component_received_network_bytes_totalCounterTotal number of raw network bytes received.
component_errors_totalCounterTotal number of errors encountered during processing.

Events🔗

NameDescription
ComponentErrorEmitted when an error occurs during component execution.
ComponentEventsDroppedEmitted when events are intentionally or unintentionally dropped.

Example🔗

sources:
  my_aws_s3:
    type: aws_s3
    mode: list
    bucket: my-data-bucket
    prefix: logs/2024/
    interval_secs: 300
    delete_after_read: true
    auth:
      region: us-west-2
      endpoint: http://localhost:4566
      access_key_id: AKIAIOSFODNN7EXAMPLE
      secret_access_key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
      assume_role: arn:aws:iam::123456789012:role/kinetic-ingest
      session_name: kinetic-session
      profile: default
      credentials_file: /home/kinetic/.aws/credentials
      imds:
        connect_timeout_seconds: 5
        max_attempts: 5
        read_timeout_seconds: 5
    sqs:
      auth:
        region: us-west-2
        endpoint: http://localhost:4566
        access_key_id: AKIAIOSFODNN7EXAMPLE
        secret_access_key: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY
        assume_role: arn:aws:iam::123456789012:role/kinetic-ingest
        session_name: kinetic-session
        profile: default
        credentials_file: /home/kinetic/.aws/credentials
        imds:
          connect_timeout_seconds: 5
          max_attempts: 5
          read_timeout_seconds: 5
      queue_url: https://sqs.us-west-2.amazonaws.com/123456789012/my-queue
      poll_secs: 10
      max_number_of_messages: 10
      visibility_timeout_secs: 30
      client_concurrency: 4
      deferred:
        max_age_secs: 86400
        queue_url: https://sqs.us-west-2.amazonaws.com/123456789012/deferred-queue