Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Création d’une tâche d’opérations par lot avec des étiquettes de tâche utilisées pour l’étiquetage
Vous pouvez étiqueter et contrôler l'accès à vos tâches Amazon S3 Batch Operations en ajoutant des balises. Les étiquettes peuvent être utilisées pour identifier la personne qui est responsable d'une tâche d'opérations par lot. Vous pouvez créer des tâches avec des étiquettes qui leur sont attachées et ajouter des étiquettes aux tâches une fois qu'elles ont été créées. Pour de plus amples informations, veuillez consulter Contrôle de l'accès et étiquetage des tâches à l'aide d'étiquettes.
L' AWS CLI exemple suivant crée une S3PutObjectCopy
tâche S3 Batch Operations en utilisant des balises de tâche comme étiquettes pour la tâche.
-
Sélectionnez l'action ou
OPERATION
que la tâche d'opérations par lot doit exécuter et choisissez votre élémentTargetResource
.read -d '' OPERATION <<EOF { "S3PutObjectCopy": { "TargetResource": "arn:aws:s3:::
amzn-s3-demo-destination-bucket
" } } EOF -
Identifiez les
TAGS
de tâche que vous voulez pour la tâche. Dans ce cas, vous appliquez deux étiquettes,department
etFiscalYear
, avec les valeursMarketing
et2020
respectivement.read -d '' TAGS <<EOF [ { "Key": "
department
", "Value": "Marketing
" }, { "Key": "FiscalYear
", "Value": "2020
" } ] EOF -
Spécifiez l'élément
MANIFEST
pour la tâche d'opérations par lot.read -d '' MANIFEST <<EOF { "Spec": { "Format": "
EXAMPLE_S3BatchOperations_CSV_20180820
", "Fields": [ "Bucket", "Key" ] }, "Location": { "ObjectArn": "arn:aws:s3:::amzn-s3-demo-manifest-bucket/example_manifest.csv
", "ETag": "example-5dc7a8bfb90808fc5d546218
" } } EOF -
Configurez l'élément
REPORT
pour la tâche d'opérations par lot.read -d '' REPORT <<EOF { "Bucket": "arn:aws:s3:::
amzn-s3-demo-completion-report-bucket
", "Format": "Example_Report_CSV_20180820
", "Enabled": true, "Prefix": "reports/copy-with-replace-metadata
", "ReportScope": "AllTasks" } EOF Exécutez l'action
create-job
pour créer votre tâche d'opérations par lot avec les entrées définies dans les étapes précédentes.aws \ s3control create-job \ --account-id
123456789012
\ --manifest "${MANIFEST//$'\n'}" \ --operation "${OPERATION//$'\n'/}" \ --report "${REPORT//$'\n'}" \ --priority 10 \ --role-arn arn:aws:iam::123456789012
:role/batch-operations-role
\ --tags "${TAGS//$'\n'/}" \ --client-request-token "$(uuidgen)" \ --regionus-west-2
\ --description "Copy with Replace Metadata
";
L'exemple suivant crée une tâche d'opérations par lot S3 avec des étiquettes à l'aide du kit AWS SDK for Java.
public String createJob(final AWSS3ControlClient awss3ControlClient) { final String manifestObjectArn = "arn:aws:s3:::
amzn-s3-demo-manifest-bucket/manifests/10_manifest
.csv"; final String manifestObjectVersionId = "example-5dc7a8bfb90808fc5d546218
"; final JobManifestLocation manifestLocation = new JobManifestLocation() .withObjectArn(manifestObjectArn) .withETag(manifestObjectVersionId); final JobManifestSpec manifestSpec = new JobManifestSpec().withFormat(JobManifestFormat.S3InventoryReport_CSV_20161130); final JobManifest manifestToPublicApi = new JobManifest() .withLocation(manifestLocation) .withSpec(manifestSpec); final String jobReportBucketArn = "arn:aws:s3:::amzn-s3-demo-completion-report-bucket
"; final String jobReportPrefix = "example-job-reports
"; final JobReport jobReport = new JobReport() .withEnabled(true) .withReportScope(JobReportScope.AllTasks) .withBucket(jobReportBucketArn) .withPrefix(jobReportPrefix) .withFormat(JobReportFormat.Report_CSV_20180820); final String lambdaFunctionArn = "arn:aws:lambda:us-west-2
:123456789012
:function:example-function
"; final JobOperation jobOperation = new JobOperation() .withLambdaInvoke(new LambdaInvokeOperation().withFunctionArn(lambdaFunctionArn)); final S3Tag departmentTag = new S3Tag().withKey("department
").withValue("Marketing
"); final S3Tag fiscalYearTag = new S3Tag().withKey("FiscalYear
").withValue("2020
"); final String roleArn = "arn:aws:iam::123456789012
:role/example-batch-operations-role
"; final Boolean requiresConfirmation = true; final int priority = 10; final CreateJobRequest request = new CreateJobRequest() .withAccountId("123456789012
") .withDescription("Test lambda job
") .withManifest(manifestToPublicApi) .withOperation(jobOperation) .withPriority(priority) .withRoleArn(roleArn) .withReport(jobReport) .withTags(departmentTag, fiscalYearTag) .withConfirmationRequired(requiresConfirmation); final CreateJobResult result = awss3ControlClient.createJob(request); return result.getJobId(); }