DescribeTaskExecution - AWS DataSync (original) (raw)
Provides information about an execution of your AWS DataSync task. You can use this operation to help monitor the progress of an ongoing data transfer or check the results of the transfer.
Request Syntax
{
"TaskExecutionArn": "string"
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
Specifies the Amazon Resource Name (ARN) of the task execution that you want information about.
Type: String
Length Constraints: Maximum length of 128.
Pattern: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]*:[0-9]{12}:task/task-[0-9a-f]{17}/execution/exec-[0-9a-f]{17}$
Required: Yes
Response Syntax
{
"BytesCompressed": number,
"BytesTransferred": number,
"BytesWritten": number,
"EstimatedBytesToTransfer": number,
"EstimatedFilesToDelete": number,
"EstimatedFilesToTransfer": number,
"Excludes": [
{
"FilterType": "string",
"Value": "string"
}
],
"FilesDeleted": number,
"FilesFailed": {
"Delete": number,
"Prepare": number,
"Transfer": number,
"Verify": number
},
"FilesListed": {
"AtDestinationForDelete": number,
"AtSource": number
},
"FilesPrepared": number,
"FilesSkipped": number,
"FilesTransferred": number,
"FilesVerified": number,
"Includes": [
{
"FilterType": "string",
"Value": "string"
}
],
"ManifestConfig": {
"Action": "string",
"Format": "string",
"Source": {
"S3": {
"BucketAccessRoleArn": "string",
"ManifestObjectPath": "string",
"ManifestObjectVersionId": "string",
"S3BucketArn": "string"
}
}
},
"Options": {
"Atime": "string",
"BytesPerSecond": number,
"Gid": "string",
"LogLevel": "string",
"Mtime": "string",
"ObjectTags": "string",
"OverwriteMode": "string",
"PosixPermissions": "string",
"PreserveDeletedFiles": "string",
"PreserveDevices": "string",
"SecurityDescriptorCopyFlags": "string",
"TaskQueueing": "string",
"TransferMode": "string",
"Uid": "string",
"VerifyMode": "string"
},
"ReportResult": {
"ErrorCode": "string",
"ErrorDetail": "string",
"Status": "string"
},
"Result": {
"ErrorCode": "string",
"ErrorDetail": "string",
"PrepareDuration": number,
"PrepareStatus": "string",
"TotalDuration": number,
"TransferDuration": number,
"TransferStatus": "string",
"VerifyDuration": number,
"VerifyStatus": "string"
},
"StartTime": number,
"Status": "string",
"TaskExecutionArn": "string",
"TaskMode": "string",
"TaskReportConfig": {
"Destination": {
"S3": {
"BucketAccessRoleArn": "string",
"S3BucketArn": "string",
"Subdirectory": "string"
}
},
"ObjectVersionIds": "string",
"OutputType": "string",
"Overrides": {
"Deleted": {
"ReportLevel": "string"
},
"Skipped": {
"ReportLevel": "string"
},
"Transferred": {
"ReportLevel": "string"
},
"Verified": {
"ReportLevel": "string"
}
},
"ReportLevel": "string"
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
The number of physical bytes that DataSync transfers over the network after compression (if compression is possible). This number is typically less than BytesTransferred unless the data isn't compressible.
Type: Long
The number of bytes that DataSync sends to the network before compression (if compression is possible). For the number of bytes transferred over the network, see BytesCompressed.
Type: Long
The number of logical bytes that DataSync actually writes to the destination location.
Type: Long
The number of logical bytes that DataSync expects to write to the destination location.
Type: Long
The number of files, objects, and directories that DataSync expects to delete in your destination location. If you don't configure your task to delete data in the destination that isn't in the source, the value is always 0
.
Type: Long
The number of files, objects, and directories that DataSync expects to transfer over the network. This value is calculated while DataSyncprepares the transfer.
How this gets calculated depends primarily on your task’s transfer mode configuration:
- If
TranserMode
is set toCHANGED
- The calculation is based on comparing the content of the source and destination locations and determining the difference that needs to be transferred. The difference can include:- Anything that's added or modified at the source location.
- Anything that's in both locations and modified at the destination after an initial transfer (unless OverwriteMode is set to
NEVER
). - (Basic task mode only) The number of items that DataSync expects to delete (if PreserveDeletedFiles is set to
REMOVE
).
- If
TranserMode
is set toALL
- The calculation is based only on the items that DataSync finds at the source location.
Type: Long
A list of filter rules that exclude specific data during your transfer. For more information and examples, see Filtering data transferred by DataSync.
Type: Array of FilterRule objects
Array Members: Minimum number of 0 items. Maximum number of 1 item.
The number of files, objects, and directories that DataSync actually deletes in your destination location. If you don't configure your task to delete data in the destination that isn't in the source, the value is always 0
.
Type: Long
The number of objects that DataSync fails to prepare, transfer, verify, and delete during your task execution.
Note
Type: TaskExecutionFilesFailedDetail object
The number of objects that DataSync finds at your locations.
Note
Type: TaskExecutionFilesListedDetail object
The number of objects that DataSync will attempt to transfer after comparing your source and destination locations.
Note
This counter isn't applicable if you configure your task to transfer all data. In that scenario, DataSync copies everything from the source to the destination without comparing differences between the locations.
Type: Long
The number of files, objects, and directories that DataSync skips during your transfer.
Type: Long
The number of files, objects, and directories that DataSync actually transfers over the network. This value is updated periodically during your task execution when something is read from the source and sent over the network.
If DataSync fails to transfer something, this value can be less thanEstimatedFilesToTransfer
. In some cases, this value can also be greater thanEstimatedFilesToTransfer
. This element is implementation-specific for some location types, so don't use it as an exact indication of what's transferring or to monitor your task execution.
Type: Long
The number of files, objects, and directories that DataSync verifies during your transfer.
Type: Long
A list of filter rules that include specific data during your transfer. For more information and examples, see Filtering data transferred by DataSync.
Type: Array of FilterRule objects
Array Members: Minimum number of 0 items. Maximum number of 1 item.
The configuration of the manifest that lists the files or objects to transfer. For more information, see Specifying what DataSync transfers by using a manifest.
Type: ManifestConfig object
Indicates how your transfer task is configured. These options include how DataSync handles files, objects, and their associated metadata during your transfer. You also can specify how to verify data integrity, set bandwidth limits for your task, among other options.
Each option has a default value. Unless you need to, you don't have to configure any option before calling StartTaskExecution.
You also can override your task options for each task execution. For example, you might want to adjust the LogLevel
for an individual execution.
Type: Options object
Indicates whether DataSync generated a complete task report for your transfer.
Type: ReportResult object
The result of the task execution.
Type: TaskExecutionResultDetail object
The time when the task execution started.
Type: Timestamp
The status of the task execution.
For detailed information about task execution statuses, see Task execution statuses.
Type: String
Valid Values: QUEUED | CANCELLING | LAUNCHING | PREPARING | TRANSFERRING | VERIFYING | SUCCESS | ERROR
The ARN of the task execution that you wanted information about.TaskExecutionArn
is hierarchical and includes TaskArn
for the task that was executed.
For example, a TaskExecution
value with the ARNarn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2/execution/exec-08ef1e88ec491019b
executed the task with the ARNarn:aws:datasync:us-east-1:111222333444:task/task-0208075f79cedf4a2
.
Type: String
Length Constraints: Maximum length of 128.
Pattern: ^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):datasync:[a-z\-0-9]*:[0-9]{12}:task/task-[0-9a-f]{17}/execution/exec-[0-9a-f]{17}$
The task mode that you're using. For more information, see Choosing a task mode for your data transfer.
Type: String
Valid Values: BASIC | ENHANCED
The configuration of your task report, which provides detailed information about for your DataSync transfer. For more information, see Creating a task report.
Type: TaskReportConfig object
Errors
For information about the errors that are common to all actions, see Common Errors.
InternalException
This exception is thrown when an error occurs in the AWS DataSync service.
HTTP Status Code: 500
InvalidRequestException
This exception is thrown when the client submits a malformed request.
HTTP Status Code: 400
Examples
Sample Request
This example illustrates a DescribeTaskExecution
request.
{
"TaskExecutionArn": "arn:aws:datasync:us-east-1:111222333444:task/task-aaaabbbbccccddddf/execution/exec-1234abcd1234abcd1"
}
Sample Response 1 for an Enhanced mode task execution
The following example describes a DataSync task execution that uses Enhanced mode. The execution is also transferring specific data by using exclude and include filters.
{
"TaskExecutionArn": "arn:aws:datasync:us-east-1:111222333444:task/task-aaaabbbbccccddddf/execution/exec-1234abcd1234abcd1",
"Status": "SUCCESS",
"Options": {
"VerifyMode": "ONLY_FILES_TRANSFERRED",
"OverwriteMode": "ALWAYS",
"Atime": "BEST_EFFORT",
"Mtime": "PRESERVE",
"Uid": "NONE",
"Gid": "NONE",
"PreserveDeletedFiles": "PRESERVE",
"PreserveDevices": "NONE",
"PosixPermissions": "NONE",
"BytesPerSecond": -1,
"TaskQueueing": "ENABLED",
"LogLevel": "BASIC",
"TransferMode": "CHANGED",
"SecurityDescriptorCopyFlags": "NONE",
"ObjectTags": "PRESERVE"
},
"Excludes": [{
"FilterType": "SIMPLE_PATTERN",
"Value": "/archive-files"
}],
"Includes": [{
"FilterType": "SIMPLE_PATTERN",
"Value": "/files"
}],
"StartTime": "2024-10-16T11:19:56.844000-04:00",
"EstimatedFilesToTransfer": 7,
"EstimatedBytesToTransfer": 30,
"FilesTransferred": 7,
"BytesWritten": 30,
"BytesTransferred": 30,
"BytesCompressed": 30,
"Result": {
"PrepareDuration": 0,
"PrepareStatus": "SUCCESS",
"TotalDuration": 3310,
"TransferDuration": 0,
"TransferStatus": "SUCCESS",
"VerifyDuration": 0,
"VerifyStatus": "SUCCESS"
},
"FilesDeleted": 0,
"FilesSkipped": 0,
"FilesVerified": 7,
"EstimatedFilesToDelete": 0,
"TaskMode": "ENHANCED",
"FilesPrepared": 7,
"FilesListed": {
"AtSource": 7,
"AtDestinationForDelete": 0
},
"FilesFailed": {
"Prepare": 0,
"Transfer": 0,
"Verify": 0,
"Delete": 0
}
}
Sample Response 2 for an Enhanced mode task execution
The following example describes another DataSync task execution that uses Enhanced mode. In this situation, the execution is transferring specific data by using a manifest instead of filters.
{
"TaskExecutionArn": "arn:aws:datasync:us-east-1:111222333444:task/task-aaaabbbbccccddddf/execution/exec-1234abcd1234abcd1",
"Status": "SUCCESS",
"Options": {
"VerifyMode": "ONLY_FILES_TRANSFERRED",
"OverwriteMode": "ALWAYS",
"Atime": "BEST_EFFORT",
"Mtime": "PRESERVE",
"Uid": "NONE",
"Gid": "NONE",
"PreserveDeletedFiles": "PRESERVE",
"PreserveDevices": "NONE",
"PosixPermissions": "NONE",
"BytesPerSecond": -1,
"TaskQueueing": "ENABLED",
"LogLevel": "TRANSFER",
"TransferMode": "CHANGED",
"SecurityDescriptorCopyFlags": "NONE",
"ObjectTags": "PRESERVE"
},
"Excludes": [],
"Includes": [],
"ManifestConfig": {
"Action": "TRANSFER",
"Format": "CSV",
"S3AccessRoleArn": "arn:aws:iam::111222333444:role/service-role/DataSyncS3ManifestAccess",
"S3Bucket": "arn:aws:s3:::manifests-datasync",
"VersionId": "Ixs7NQzEOj8BkL9r4ywX2FtDh_cPf3mG",
"Source": {
"S3": {
"ManifestObjectPath": "manifest-folder/manifest-versioned-files",
"BucketAccessRoleArn": "arn:aws:iam::111222333444:role/my-manifest-role/DataSyncS3ManifestAccess",
"S3BucketArn": "arn:aws:s3:::manifests-datasync",
"ManifestObjectVersionId": "Ixs7NQzEOj8BkL9r4ywX2FtDh_cPf3mG"
}
}
},
"StartTime": "2024-10-16T09:29:56.757000-04:00",
"EstimatedFilesToTransfer": 1,
"EstimatedBytesToTransfer": 6,
"FilesTransferred": 1,
"BytesWritten": 6,
"BytesTransferred": 6,
"BytesCompressed": 6,
"Result": {
"PrepareDuration": 0,
"PrepareStatus": "SUCCESS",
"TotalDuration": 3089,
"TransferDuration": 0,
"TransferStatus": "SUCCESS",
"VerifyDuration": 0,
"VerifyStatus": "SUCCESS"
},
"TaskReportConfig": {
"Destination": {
"S3": {
"Subdirectory": "reports/",
"S3BucketArn": "arn:aws:s3:::my-task-report",
"BucketAccessRoleArn": "arn:aws:iam::111222333444:role/my-task-report-role/DataSyncTaskReportS3BucketAccess"
}
},
"OutputType": "STANDARD",
"ReportLevel": "SUCCESSES_AND_ERRORS",
"ObjectVersionIds": "INCLUDE"
},
"FilesDeleted": 0,
"FilesSkipped": 0,
"FilesVerified": 1,
"ReportResult": {
"Status": "SUCCESS"
},
"EstimatedFilesToDelete": 0,
"TaskMode": "ENHANCED",
"FilesPrepared": 1,
"FilesListed": {
"AtSource": 1,
"AtDestinationForDelete": 0
},
"FilesFailed": {
"Prepare": 0,
"Transfer": 0,
"Verify": 0,
"Delete": 0
}
}
Sample Response for a Basic mode task execution
The following example describes a DataSync task execution that uses Basic mode.
{
"TaskExecutionArn": "arn:aws:datasync:us-east-1:111222333444:task/task-aaaabbbbccccddddf/execution/exec-1234abcd1234abcd1",
"BytesCompressed": 3500,
"BytesTransferred": 5000,
"BytesWritten": 5000,
"EstimatedBytesToTransfer": 5000,
"EstimatedFilesToDelete": 10,
"EstimatedFilesToTransfer": 100,
"FilesDeleted": 10,
"FilesSkipped": 0,
"FilesTransferred": 100,
"FilesVerified": 100,
"Result": {
"PrepareDuration": 100,
"PrepareStatus": "SUCCESS",
"TransferDuration": 60,
"TransferStatus": "SUCCESS",
"VerifyDuration": 30,
"VerifyStatus": "SUCCESS"
},
"StartTime": "2024-10-16T11:19:56.844000-04:00",
"Status": "SUCCESS",
"OverrideOptions": {
"Atime": "BEST_EFFORT",
"BytesPerSecond": "1000",
"Gid": "NONE",
"Mtime": "PRESERVE",
"PosixPermissions": "PRESERVE",
"PreserveDeletedFiles": "PRESERVE",
"Uid": "NONE",
"VerifyMode": "POINT_IN_TIME_CONSISTENT"
},
"TaskReportConfig": {
"Destination": {
"S3": {
"BucketAccessRoleArn": "arn:aws:iam::111222333444:role/my-datasync-role",
"S3BucketArn": "arn:aws:s3:::my-task-reports-bucket/*",
"Subdirectory": "reports"
}
},
"ObjectVersionIds": "INCLUDE",
"OutputType": "STANDARD",
"Overrides": {
"Deleted": {
"ReportLevel": "ERRORS_ONLY"
},
"Skipped": {
"ReportLevel": "SUCCESSES_AND_ERRORS"
},
"Transferred": {
"ReportLevel": "ERRORS_ONLY"
},
"Verified": {
"ReportLevel": "ERRORS_ONLY"
}
},
"ReportLevel": "ERRORS_ONLY"
}
}
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: