Skip to content

aws.datasync.describe_task

Example SQL Queries

SELECT * FROM
aws.datasync.describe_task
WHERE
"task_arn" = 'VALUE';

Description

Provides information about a task, which defines where and how DataSync transfers your data.

Table Definition

Column NameColumn Data Type
task_arn Required Input Column

The ARN of your task.

VARCHAR
_aws_profile Input Column

The AWS profile defines the AWS identity used. It can be defined via credentials or by assuming a IAM role.

STRUCT(
"type" VARCHAR,
"name" VARCHAR,
"account_id" VARCHAR,
"via_profile_name" VARCHAR,
"assumed_role_arn" VARCHAR,
"organization" STRUCT(
"account_name" VARCHAR,
"id" VARCHAR,
"tags" STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[],
"master_account" STRUCT(
"id" VARCHAR,
"email" VARCHAR
),
"parents" STRUCT(
"type" VARCHAR,
"id" VARCHAR,
"name" VARCHAR,
"tags" STRUCT(
"key" VARCHAR,
"value" VARCHAR
)[]
)[]
)
)
Show child fields
_aws_profile.account_id

The AWS account id

_aws_profile.assumed_role_arn

The ARN of the assumed role

_aws_profile.name

The unique name of the profile.

_aws_profile.organization

Information about this profile's membership in the AWS organization.

Show child fields
_aws_profile.organization.account_name

The name of account speciifed by the organization

_aws_profile.organization.id

The organization id

_aws_profile.organization.master_account
Show child fields
_aws_profile.organization.master_account.email

The organization master account email address

_aws_profile.organization.master_account.id

The organization master account id

_aws_profile.organization.parents[]
Show child fields
_aws_profile.organization.parents[].id

The id of the parent

_aws_profile.organization.parents[].name

The name of the parent

_aws_profile.organization.parents[].tags[]
Show child fields
_aws_profile.organization.parents[].tags[].key
_aws_profile.organization.parents[].tags[].value
_aws_profile.organization.parents[].type

The type of parent can be an organization unit or a root

_aws_profile.organization.tags[]
Show child fields
_aws_profile.organization.tags[].key
_aws_profile.organization.tags[].value
_aws_profile.type

The type of profile, either 'credentials' or 'assumed_role'

_aws_profile.via_profile_name

This IAM role for this profile is assumed by first utilizing another profile with this name to obtain credentials.

_aws_region Input Column

The AWS region to use.

VARCHAR
cloud_watch_log_group_arn

The Amazon Resource Name (ARN) of an Amazon CloudWatch log group for monitoring your task.

For more information, see Monitoring DataSync with Amazon CloudWatch.

VARCHAR
creation_time

The time that the task was created.

TIMESTAMP_S
current_task_execution_arn

The ARN of the most recent task execution.

VARCHAR
destination_location_arn

The ARN of your transfer's destination location.

VARCHAR
destination_network_interface_arns

The ARNs of the network interfaces that DataSync created for your destination location.

VARCHAR[]
Show child fields
destination_network_interface_arns[]
error_code

If there's an issue with your task, you can use the error code to help you troubleshoot the problem. For more information, see Troubleshooting issues with DataSync transfers.

VARCHAR
error_detail

If there's an issue with your task, you can use the error details to help you troubleshoot the problem. For more information, see Troubleshooting issues with DataSync transfers.

VARCHAR
excludes

The exclude filters that define the files, objects, and folders in your source location that you don't want DataSync to transfer. For more information and examples, see Specifying what DataSync transfers by using filters.

STRUCT(
"filter_type" VARCHAR,
"value" VARCHAR
)[]
Show child fields
excludes[]
Show child fields
excludes[].filter_type

The type of filter rule to apply. DataSync only supports the SIMPLE_PATTERN rule type.

excludes[].value

A single filter string that consists of the patterns to include or exclude. The patterns are delimited by "|" (that is, a pipe), for example: /folder1|/folder2

includes

The include filters that define the files, objects, and folders in your source location that you want DataSync to transfer. For more information and examples, see Specifying what DataSync transfers by using filters.

STRUCT(
"filter_type" VARCHAR,
"value" VARCHAR
)[]
Show child fields
includes[]
Show child fields
includes[].filter_type

The type of filter rule to apply. DataSync only supports the SIMPLE_PATTERN rule type.

includes[].value

A single filter string that consists of the patterns to include or exclude. The patterns are delimited by "|" (that is, a pipe), for example: /folder1|/folder2

manifest_config

The configuration of the manifest that lists the files or objects that you want DataSync to transfer. For more information, see Specifying what DataSync transfers by using a manifest.

STRUCT(
"action" VARCHAR,
"format" VARCHAR,
"source" STRUCT(
"s3" STRUCT(
"manifest_object_path" VARCHAR,
"bucket_access_role_arn" VARCHAR,
"s3_bucket_arn" VARCHAR,
"manifest_object_version_id" VARCHAR
)
)
)
Show child fields
manifest_config.action

Specifies what DataSync uses the manifest for.

manifest_config.format

Specifies the file format of your manifest. For more information, see Creating a manifest.

manifest_config.source

Specifies the manifest that you want DataSync to use and where it's hosted.

You must specify this parameter if you're configuring a new manifest on or after February 7, 2024.

If you don't, you'll get a 400 status code and ValidationException error stating that you're missing the IAM role for DataSync to access the S3 bucket where you're hosting your manifest. For more information, see Providing DataSync access to your manifest.

Show child fields
manifest_config.source.s3

Specifies the S3 bucket where you're hosting your manifest.

Show child fields
manifest_config.source.s3.bucket_access_role_arn

Specifies the Identity and Access Management (IAM) role that allows DataSync to access your manifest. For more information, see Providing DataSync access to your manifest.

manifest_config.source.s3.manifest_object_path

Specifies the Amazon S3 object key of your manifest. This can include a prefix (for example, prefix/my-manifest.csv).

manifest_config.source.s3.manifest_object_version_id

Specifies the object version ID of the manifest that you want DataSync to use. If you don't set this, DataSync uses the latest version of the object.

manifest_config.source.s3.s3_bucket_arn

Specifies the Amazon Resource Name (ARN) of the S3 bucket where you're hosting your manifest.

name

The name of your task.

VARCHAR
options

The task's settings. For example, what file metadata gets preserved, how data integrity gets verified at the end of your transfer, bandwidth limits, among other options.

STRUCT(
"verify_mode" VARCHAR,
"overwrite_mode" VARCHAR,
"atime" VARCHAR,
"mtime" VARCHAR,
"uid" VARCHAR,
"gid" VARCHAR,
"preserve_deleted_files" VARCHAR,
"preserve_devices" VARCHAR,
"posix_permissions" VARCHAR,
"bytes_per_second" BIGINT,
"task_queueing" VARCHAR,
"log_level" VARCHAR,
"transfer_mode" VARCHAR,
"security_descriptor_copy_flags" VARCHAR,
"object_tags" VARCHAR
)
Show child fields
options.atime

Specifies whether to preserve metadata indicating the last time a file was read or written to.

The behavior of Atime isn't fully standard across platforms, so DataSync can only do this on a best-effort basis.

  • BEST_EFFORT (default) - DataSync attempts to preserve the original Atime attribute on all source files (that is, the version before the PREPARING phase of the task execution). This option is recommended.

  • NONE - Ignores Atime.

If Atime is set to BEST_EFFORT, Mtime must be set to PRESERVE.

If Atime is set to NONE, Mtime must also be NONE.

options.bytes_per_second

Limits the bandwidth used by a DataSync task. For example, if you want DataSync to use a maximum of 1 MB, set this value to 1048576 (=1024*1024).

options.gid

Specifies the POSIX group ID (GID) of the file's owners.

  • INT_VALUE (default) - Preserves the integer value of user ID (UID) and GID, which is recommended.

  • NONE - Ignores UID and GID.

For more information, see Metadata copied by DataSync.

options.log_level

Specifies the type of logs that DataSync publishes to a Amazon CloudWatch Logs log group. To specify the log group, see CloudWatchLogGroupArn.

  • BASIC - Publishes logs with only basic information (such as transfer errors).

  • TRANSFER - Publishes logs for all files or objects that your DataSync task transfers and performs data-integrity checks on.

  • OFF - No logs are published.

options.mtime

Specifies whether to preserve metadata indicating the last time that a file was written to before the PREPARING phase of your task execution. This option is required when you need to run the a task more than once.

  • PRESERVE (default) - Preserves original Mtime, which is recommended.

  • NONE - Ignores Mtime.

If Mtime is set to PRESERVE, Atime must be set to BEST_EFFORT.

If Mtime is set to NONE, Atime must also be set to NONE.

options.object_tags

Specifies whether you want DataSync to PRESERVE object tags (default behavior) when transferring between object storage systems. If you want your DataSync task to ignore object tags, specify the NONE value.

options.overwrite_mode

Specifies whether DataSync should modify or preserve data at the destination location.

  • ALWAYS (default) - DataSync modifies data in the destination location when source data (including metadata) has changed.

    If DataSync overwrites objects, you might incur additional charges for certain Amazon S3 storage classes (for example, for retrieval or early deletion). For more information, see Storage class considerations with Amazon S3 transfers.

  • NEVER - DataSync doesn't overwrite data in the destination location even if the source data has changed. You can use this option to protect against overwriting changes made to files or objects in the destination.

options.posix_permissions

Specifies which users or groups can access a file for a specific purpose such as reading, writing, or execution of the file.

For more information, see Metadata copied by DataSync.

  • PRESERVE (default) - Preserves POSIX-style permissions, which is recommended.

  • NONE - Ignores POSIX-style permissions.

DataSync can preserve extant permissions of a source location.

options.preserve_deleted_files

Specifies whether files in the destination location that don't exist in the source should be preserved. This option can affect your Amazon S3 storage cost. If your task deletes objects, you might incur minimum storage duration charges for certain storage classes. For detailed information, see Considerations when working with Amazon S3 storage classes in DataSync.

  • PRESERVE (default) - Ignores such destination files, which is recommended.

  • REMOVE - Deletes destination files that aren’t present in the source.

If you set this parameter to REMOVE, you can't set TransferMode to ALL. When you transfer all data, DataSync doesn't scan your destination location and doesn't know what to delete.

options.preserve_devices

Specifies whether DataSync should preserve the metadata of block and character devices in the source location and recreate the files with that device name and metadata on the destination. DataSync copies only the name and metadata of such devices.

DataSync can't copy the actual contents of these devices because they're nonterminal and don't return an end-of-file (EOF) marker.

  • NONE (default) - Ignores special devices (recommended).

  • PRESERVE - Preserves character and block device metadata. This option currently isn't supported for Amazon EFS.

options.security_descriptor_copy_flags

Specifies which components of the SMB security descriptor are copied from source to destination objects.

This value is only used for transfers between SMB and Amazon FSx for Windows File Server locations or between two FSx for Windows File Server locations. For more information, see how DataSync handles metadata.

  • OWNER_DACL (default) - For each copied object, DataSync copies the following metadata:

    • The object owner.

    • NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.

      DataSync won't copy NTFS system access control lists (SACLs) with this option.

  • OWNER_DACL_SACL - For each copied object, DataSync copies the following metadata:

    • The object owner.

    • NTFS discretionary access control lists (DACLs), which determine whether to grant access to an object.

    • SACLs, which are used by administrators to log attempts to access a secured object.

      Copying SACLs requires granting additional permissions to the Windows user that DataSync uses to access your SMB location. For information about choosing a user with the right permissions, see required permissions for SMB, FSx for Windows File Server, or FSx for ONTAP (depending on the type of location in your transfer).

  • NONE - None of the SMB security descriptor components are copied. Destination objects are owned by the user that was provided for accessing the destination location. DACLs and SACLs are set based on the destination server’s configuration.

options.task_queueing

Specifies whether your transfer tasks should be put into a queue during certain scenarios when running multiple tasks. This is ENABLED by default.

options.transfer_mode

Determines whether DataSync transfers only the data and metadata that differ between the source and the destination location or transfers all the content from the source (without comparing what's in the destination).

  • CHANGED (default) - DataSync copies only data or metadata that is new or different content from the source location to the destination location.

  • ALL - DataSync copies everything in the source to the destination without comparing differences between the locations.

options.uid

Specifies the POSIX user ID (UID) of the file's owner.

  • INT_VALUE (default) - Preserves the integer value of UID and group ID (GID), which is recommended.

  • NONE - Ignores UID and GID.

For more information, see Metadata copied by DataSync.

options.verify_mode

Specifies how and when DataSync checks the integrity of your data during a transfer.

  • ONLY_FILES_TRANSFERRED (recommended) - DataSync calculates the checksum of transferred files and metadata at the source location. At the end of the transfer, DataSync then compares this checksum to the checksum calculated on those files at the destination.

    We recommend this option when transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes. For more information, see Storage class considerations with Amazon S3 locations.

  • POINT_IN_TIME_CONSISTENT (default) - At the end of the transfer, DataSync scans the entire source and destination to verify that both locations are fully synchronized.

    If you use a manifest, DataSync only scans and verifies what's listed in the manifest.

    You can't use this option when transferring to S3 Glacier Flexible Retrieval or S3 Glacier Deep Archive storage classes. For more information, see Storage class considerations with Amazon S3 locations.

  • NONE - DataSync doesn't run additional verification at the end of the transfer. All data transmissions are still integrity-checked with checksum verification during the transfer.

schedule

The schedule for when you want your task to run. For more information, see Scheduling your task.

STRUCT(
"schedule_expression" VARCHAR,
"status" VARCHAR
)
Show child fields
schedule.schedule_expression

Specifies your task schedule by using a cron expression in UTC time. For information about cron expression syntax, see the Amazon EventBridge User Guide .

schedule.status

Specifies whether to enable or disable your task schedule. Your schedule is enabled by default, but there can be situations where you need to disable it. For example, you might need to pause a recurring transfer to fix an issue with your task or perform maintenance on your storage system.

DataSync might disable your schedule automatically if your task fails repeatedly with the same error. For more information, see TaskScheduleDetails.

schedule_details

The details about your task schedule.

STRUCT(
"status_update_time" TIMESTAMP_S,
"disabled_reason" VARCHAR,
"disabled_by" VARCHAR
)
Show child fields
schedule_details.disabled_by

Indicates how your task schedule was disabled.

  • USER - Your schedule was manually disabled by using the UpdateTask operation or DataSync console.

  • SERVICE - Your schedule was automatically disabled by DataSync because the task failed repeatedly with the same error.

schedule_details.disabled_reason

Provides a reason if the task schedule is disabled.

If your schedule is disabled by USER, you see a Manually disabled by user. message.

If your schedule is disabled by SERVICE, you see an error message to help you understand why the task keeps failing. For information on resolving DataSync errors, see Troubleshooting issues with DataSync transfers.

schedule_details.status_update_time

Indicates the last time the status of your task schedule changed. For example, if DataSync automatically disables your schedule because of a repeated error, you can see when the schedule was disabled.

source_location_arn

The ARN of your transfer's source location.

VARCHAR
source_network_interface_arns

The ARNs of the network interfaces that DataSync created for your source location.

VARCHAR[]
Show child fields
source_network_interface_arns[]
status

The status of your task. For information about what each status means, see Task statuses.

VARCHAR
task_report_config

The configuration of your task report, which provides detailed information about your DataSync transfer. For more information, see Monitoring your DataSync transfers with task reports.

STRUCT(
"destination" STRUCT(
"s3" STRUCT(
"subdirectory" VARCHAR,
"s3_bucket_arn" VARCHAR,
"bucket_access_role_arn" VARCHAR
)
),
"output_type" VARCHAR,
"report_level" VARCHAR,
"object_version_ids" VARCHAR,
"overrides" STRUCT(
"transferred" STRUCT(
"report_level" VARCHAR
),
"verified" STRUCT(
"report_level" VARCHAR
),
"deleted" STRUCT(
"report_level" VARCHAR
),
"skipped" STRUCT(
"report_level" VARCHAR
)
)
)
Show child fields
task_report_config.destination

Specifies the Amazon S3 bucket where DataSync uploads your task report. For more information, see Task reports.

Show child fields
task_report_config.destination.s3

Specifies the Amazon S3 bucket where DataSync uploads your task report.

Show child fields
task_report_config.destination.s3.bucket_access_role_arn

Specifies the Amazon Resource Name (ARN) of the IAM policy that allows DataSync to upload a task report to your S3 bucket. For more information, see Allowing DataSync to upload a task report to an Amazon S3 bucket.

task_report_config.destination.s3.s3_bucket_arn

Specifies the ARN of the S3 bucket where DataSync uploads your report.

task_report_config.destination.s3.subdirectory

Specifies a bucket prefix for your report.

task_report_config.object_version_ids

Specifies whether your task report includes the new version of each object transferred into an S3 bucket. This only applies if you enable versioning on your bucket. Keep in mind that setting this to INCLUDE can increase the duration of your task execution.

task_report_config.output_type

Specifies the type of task report that you want:

  • SUMMARY_ONLY: Provides necessary details about your task, including the number of files, objects, and directories transferred and transfer duration.

  • STANDARD: Provides complete details about your task, including a full list of files, objects, and directories that were transferred, skipped, verified, and more.

task_report_config.overrides

Customizes the reporting level for aspects of your task report. For example, your report might generally only include errors, but you could specify that you want a list of successes and errors just for the files that DataSync attempted to delete in your destination location.

Show child fields
task_report_config.overrides.deleted

Specifies the level of reporting for the files, objects, and directories that DataSync attempted to delete in your destination location. This only applies if you configure your task to delete data in the destination that isn't in the source.

Show child fields
task_report_config.overrides.deleted.report_level

Specifies whether your task report includes errors only or successes and errors.

For example, your report might mostly include only what didn't go well in your transfer (ERRORS_ONLY). At the same time, you want to verify that your task filter is working correctly. In this situation, you can get a list of what files DataSync successfully skipped and if something transferred that you didn't to transfer (SUCCESSES_AND_ERRORS).

task_report_config.overrides.skipped

Specifies the level of reporting for the files, objects, and directories that DataSync attempted to skip during your transfer.

Show child fields
task_report_config.overrides.skipped.report_level

Specifies whether your task report includes errors only or successes and errors.

For example, your report might mostly include only what didn't go well in your transfer (ERRORS_ONLY). At the same time, you want to verify that your task filter is working correctly. In this situation, you can get a list of what files DataSync successfully skipped and if something transferred that you didn't to transfer (SUCCESSES_AND_ERRORS).

task_report_config.overrides.transferred

Specifies the level of reporting for the files, objects, and directories that DataSync attempted to transfer.

Show child fields
task_report_config.overrides.transferred.report_level

Specifies whether your task report includes errors only or successes and errors.

For example, your report might mostly include only what didn't go well in your transfer (ERRORS_ONLY). At the same time, you want to verify that your task filter is working correctly. In this situation, you can get a list of what files DataSync successfully skipped and if something transferred that you didn't to transfer (SUCCESSES_AND_ERRORS).

task_report_config.overrides.verified

Specifies the level of reporting for the files, objects, and directories that DataSync attempted to verify at the end of your transfer.

Show child fields
task_report_config.overrides.verified.report_level

Specifies whether your task report includes errors only or successes and errors.

For example, your report might mostly include only what didn't go well in your transfer (ERRORS_ONLY). At the same time, you want to verify that your task filter is working correctly. In this situation, you can get a list of what files DataSync successfully skipped and if something transferred that you didn't to transfer (SUCCESSES_AND_ERRORS).

task_report_config.report_level

Specifies whether you want your task report to include only what went wrong with your transfer or a list of what succeeded and didn't.

  • ERRORS_ONLY: A report shows what DataSync was unable to transfer, skip, verify, and delete.

  • SUCCESSES_AND_ERRORS: A report shows what DataSync was able and unable to transfer, skip, verify, and delete.