Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Limitations and Known Issues

None.

Snap Views

Type

Format

Number of Views

Examples of Upstream and Downstream Snaps

Description

Input 

Document

  • Min: 0

  • Max: 1

  • Mapper

  • S3 Copy

Key/value pairs used to evaluate expression properties in this Snap. 

Output

Document

  • Min: 1

  • Max: 2

  • S3 Download

  • Mapper

The output displays the following attributes:

  • bucket: The S3 bucket name.

  • objectKey: The S3 object with the prefix.

  • path: The path to the S3 bucket.

  • size: The size of the S3 object.

  • lastModified: The date when the S3 object was last modified.

  • storage-class: The Storage Class field, which indicates the archived status of the S3 object.

  • ownerDisplayName: The display name of the S3 owner.

  • ownerID: The ID of the S3 owner.

The attributes for each S3 object matching the specific Snap field values. For example, if you have the following S3 objects with the prefix "foo/" in the bucket "mrtest":

Info
  • foo/bar/ban

  • foo/bar/bash

  • foo/bar/baz

  • foo/batbat/baz

  • foo/boo

If the S3 Browser Snap has the following properties, then the Snap produces output documents for all the five S3 objects.

  • Bucket: mrtest

  • Prefix:  foo/

  • Filter:   **

  • Delimiter:

If the S3 Browser Snap has the following properties, then the Snap produces only one output document for foo/boo.

  • Bucket: mrtest

  • Prefix:  foo/

  • Filter:   **

  • Delimiter: /

 

Note

When you use the Cross Account IAM Role in the S3 account, the ownerDisplayName and ownerID fields may be empty in the output document.

Error

Error handling is a generic way to handle errors without losing data or failing the Snap execution. You can handle the errors that the Snap might encounter while running the Pipeline by choosing one of the following options from the When errors occur list under the Views tab:

  • Stop Pipeline Execution: Stops the current pipeline execution when the Snap encounters an error.

  • Discard Error Data and Continue: Ignores the error, discards that record, and continues with the remaining records.

  • Route Error Data to Error View: Routes the error data to an error view without stopping the Snap execution.

Learn more about Error handling in Pipelines.

Snap Settings

Info
  • Asterisk (*): Indicates a mandatory field.

  • Suggestion icon ((blue star)): Indicates a list that is dynamically populated based on the configuration.

  • Expression icon ( (blue star) ): Indicates the value is an expression (if enabled) or a static value (if disabled). Learn more about Using Expressions in SnapLogic.

  • Add icon ((blue star)): Indicates that you can add fields in the fieldset.

  • Remove icon ((blue star)): Indicates that you can remove fields from the fieldset.

Field Name

Field Type

Field Dependency

Description

Label*

Default ValueS3 Browser
Example: Browse IT Resources

String

N/A

Specify a unique name for the Snap.

Bucket*

Default Value: N/A
Examples: 

(an example of <S3_bucket_name>@<s3_endpoint>)

String/Expression/Suggestion

N/A

Specify or select the S3 bucket name, from where the S3 objects are to be listed.

Note

Do not add S3:/// before the bucket name, because the Snap can fail.

Bucket names are unique globally and can be accessed without

their

the region name in most cases. If you cannot access a bucket name without its region name, you can specify the region information

in

with the following

format

syntax:

<S3_bucket_name>@<region_name>

Note: If you enter an incorrect region name, but the bucket name is valid, the AWS S3 service might successfully access the bucket without errors.

  • You can

also
  • access an S3 bucket in

anS3
  • an S3 Virtual Private Cloud (VPC) endpoint by specifying the bucket name

using
  • with the following syntax:

    • <S3_bucket_name>@<VPC_S3_endpoint>

Note: When you enter an incorrect region name, but with a valid bucket name, AWS S3 service may successfully access the bucket without any error
  • You can access an S3 Express One Zone bucket with the following syntax:

    • <bucket-name>--<region>-<available-zone>--x-s3

  • S3 Express One Zone does not support the bucket name pattern of <bucket>@<region info>.

 

Prefix

Default Value: None
Examples

  • test

  • test/

  • abc/xyz/

String/Expression/Suggestion

N/A

Specify the prefix of S3 object key names.

  • When you specify the Bucket and Prefix field values and leave default values for the remaining fields, the Snap lists all S3 objects matching the prefix in the bucket.
    You can select an object key from the suggested list and use it for the prefix. The maximum length of the suggested list is 1,000.

  • S3 Express One Zone only supports prefixes that end in a delimiter.

Filter (Glob)

Default Value: **
Examples

  • *.csv Matches an object name that represents a file name ending in .csv

  • * .* Matches object names containing a dot

  • {.csv, .json} Matches object names ending with .csv or .json

  • foo.? Matches object names starting with foo. and a single character extension

  • home/*/*Matches home/gus/data

  • home/**. Matches home/gus and home/gus/data

String/Expression

N/A

Specify the filter the Snap should use internally to list all S3 objects.

The Snap matches the specified Bucket and Prefix and then applies the filter. A glob pattern of <Prefix> + <Filter> is applied to the entire string of each S3 object key.
The definition of the glob pattern is as follows:

  • The * character matches zero or more characters of an S3 object name without crossing '/' boundaries.

  • The ** characters match zero or more characters crossing '/' boundaries.

  • The ? character matches exactly one character of a name component.

  • The backslash character (\) is used to escape characters that would otherwise be interpreted as special characters. The expression \\ matches a single backslash and "\{" matches a left brace.

  • The [ ] characters are a bracket expression that matches a single character of a name component out of a set of characters. For example, [abc] matches "a", "b", or "c". You may use the hyphen (-) to specify a range, so [a-z] specifies a range that matches from "a" through "z" (inclusive). These forms can be mixed so [abce-g] matches "a", "b", "c", "e", "f" or "g". If the character after the [ is a ! then it is used for negation so [!a-c] matches any character except "a", "b", or "c".

  • In a bracket expression, the *, ? and \ characters match themselves. The (-) character matches itself if it is the first character in the brackets, or the first character after the ! if negating.

  • The { } characters are a group of subpatterns, where the group matches if any subpattern in the group matches. The "," character is used to separate the subpatterns. Groups cannot be nested.

  • Leading period and dot characters in names are treated as regular characters in match operations. For example, the "*" glob pattern matches file name ".login".

Show Advanced Properties

Default Value: Deselected

Checkbox

Displays Advanced Properties when you select this checkbox.

Select this checkbox to display the advanced properties.
Deselect this checkbox to hide the advanced properties.

Maximum Object Keys

Default Value: All
Example: 2500

String/Integer/Expression

Appears on selecting Show Advanced Properties checkbox.

Specify the maximum number of object keys at the output view. ‘All’ or an empty field produces all matching object key names.

If the Delimiter is blank, the Maximum Object Keys are the number of object keys in the first output view plus the number of common prefixes in the second output view regardless of the the second output view being open or closed.

Ignore Empty Result

Default Value: Selected

Checkbox

Appears on selecting Show Advanced Properties checkbox.

Select this checkbox if you want the Snap to produce no output when there is no matching S3 object key. Else, the Snap outputs a blank document when there are no matching S3 object keys.

Maximum Retries*

Default Value: 3
Example: 5

Integer/Expression

Appears on selecting Show Advanced Properties checkbox.

Specify the maximum number of retry attempts to perform in case of a temporary network loss.

Pass Through

Default Value: Deselected

Checkbox

Appears on selecting Show Advanced Properties checkbox.

Select this checkbox to pass the input document to the output view as a value under the 'original' key .

Delimiter


Default Value: None
Example: /

String/Expression

Appears on selecting Show Advanced Properties checkbox.

Specify an optional delimiter to produce object keys that contain the same string between the prefix and the first occurrence of the delimiter.

A delimiter '/' causes the Snap to produce a nonrecursive object-key listing.

When the Delimiter field is not empty and if there is a common prefix, it is displayed in the second output view. The common prefix is similar to a subfolder with one or more S3 objects in it.

Snap Execution

Default ValueValidate & Execute
Example: Execute only

Dropdown list

N/A

Select one of the three modes in which the Snap executes. Available options are:

  • Validate & Execute: Performs limited execution of the Snap, and generates a data preview during Pipeline validation. Subsequently, performs full execution of the Snap (unlimited records) during Pipeline runtime.

  • Execute only: Performs full execution of the Snap during Pipeline execution without generating preview data.

  • Disabled: Disables the Snap and all Snaps that are downstream from it.

Example

Basic Use Case - Managing Data in S3

...