Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membuat tugas Operasi Batch dengan tanda tugas yang digunakan untuk pelabelan
Anda dapat memberi label dan mengontrol akses ke pekerjaan Operasi Batch Amazon S3 Anda dengan menambahkan tag. Tanda dapat digunakan untuk mengidentifikasi siapa yang bertanggung jawab atas tugas Operasi Batch. Anda dapat membuat tugas dengan tanda yang telah dilampirkan, atau menambahkan tanda ke tugas setelah tugas dibuat. Untuk informasi selengkapnya, lihat Mengendalikan pekerjaan akses dan pelabelan menggunakan tag.
AWS CLI Contoh berikut membuat S3PutObjectCopy
pekerjaan Operasi Batch S3 menggunakan tag pekerjaan sebagai label untuk pekerjaan tersebut.
-
Pilih tindakan atau
OPERATION
yang akan dilaksanakan oleh Operasi Batch, lalu pilihTargetResource
.read -d '' OPERATION <<EOF { "S3PutObjectCopy": { "TargetResource": "arn:aws:s3:::
amzn-s3-demo-destination-bucket
" } } EOF -
Identifikasi tugas
TAGS
yang Anda inginkan untuk tugas tersebut. Dalam hal ini, Anda akan menerapkan dua tanda,department
danFiscalYear
, masing-masing dengan nilaiMarketing
dan2020
.read -d '' TAGS <<EOF [ { "Key": "
department
", "Value": "Marketing
" }, { "Key": "FiscalYear
", "Value": "2020
" } ] EOF -
Tentukan
MANIFEST
untuk tugas Operasi Batch.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 -
Konfigurasikan
REPORT
untuk tugas Operasi Batch.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 Jalankan tindakan
create-job
untuk membuat tugas Operasi Batch dengan input yang telah ditetapkan pada langkah sebelumnya.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
";
Contoh berikut membuat tugas Operasi Batch S3 dengan tanda menggunakan 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(); }