Esempi: report di completamento delle operazioni in batch S3 - Amazon Simple Storage Service

Esempi: report di completamento delle operazioni in batch S3

Quando crei un processo di operazioni in batch S3, è possibile richiedere un report di completamento per tutte le attività o solo per le attività non andate a buon fine. Se almeno un'attività è stata invocata correttamente, le operazioni in batch S3 generano un report per i processi che sono stati completati, che non sono andati a buon fine o che sono stati annullati.

Il rapporto di completamento contiene informazioni aggiuntive per ogni attività, inclusi il nome della chiave e la versione dell'oggetto, lo stato, i codici di errore e le descrizioni degli errori. La descrizione degli errori per ogni attività non andata a buon fine può essere utilizzata per diagnosticare problemi durante la creazione del lavoro, come le autorizzazioni. Per i processi Calcola il checksum, il report di completamento contiene i valori di checksum per ogni oggetto.

Nota

I report di completamento sono sempre crittografati con chiavi gestite da Amazon S3 (SSE-S3).

Esempio - File di risultato del manifesto di primo livello

Il file manifest.json di primo livello contiene le posizioni di tutti i rapporti andati a buon fine e (se il processo conteneva errori) la posizione dei rapporti non andati a buon fine, come mostrato nel seguente esempio.

{ "Format": "Report_CSV_20180820", "ReportCreationDate": "2019-04-05T17:48:39.725Z", "Results": [ { "TaskExecutionStatus": "succeeded", "Bucket": "my-job-reports", "MD5Checksum": "83b1c4cbe93fc893f54053697e10fd6e", "Key": "job-f8fb9d89-a3aa-461d-bddc-ea6a1b131955/results/6217b0fab0de85c408b4be96aeaca9b195a7daa5.csv" }, { "TaskExecutionStatus": "failed", "Bucket": "my-job-reports", "MD5Checksum": "22ee037f3515975f7719699e5c416eaa", "Key": "job-f8fb9d89-a3aa-461d-bddc-ea6a1b131955/results/b2ddad417e94331e9f37b44f1faf8c7ed5873f2e.csv" } ], "ReportSchema": "Bucket, Key, VersionId, TaskStatus, ErrorCode, HTTPStatusCode, ResultMessage" }

Report sulle attività andate a buon fine

I report sulle attività andate a buon fine contengono i seguenti dati relativi alle attività completate correttamente:

  • Bucket

  • Key

  • VersionId

  • TaskStatus

  • ErrorCode

  • HTTPStatusCode

  • ResultMessage

Report sulle attività non andate a buon fine

I report sulle attività non andate a buon fine contengono le seguenti informazioni per tutte le attività non completate:

  • Bucket

  • Key

  • VersionId

  • TaskStatus

  • ErrorCode

  • HTTPStatusCode

  • ResultMessage

Esempio - Report sulle attività della funzione Lambda

Nel seguente esempio, la funzione Lambda ha copiato correttamente l'oggetto Amazon S3 in un altro bucket. La risposta di Amazon S3 restituita viene passata alle operazioni in batch S3 e quindi viene scritta nel report di completamento finale.

amzn-s3-demo-bucket1,image_17775,,succeeded,200,,"{u'CopySourceVersionId': 'xVR78haVKlRnurYofbTfYr3ufYbktF8h', u'CopyObjectResult': {u'LastModified': datetime.datetime(2019, 4, 5, 17, 35, 39, tzinfo=tzlocal()), u'ETag': '""fe66f4390c50f29798f040d7aae72784""'}, 'ResponseMetadata': {'HTTPStatusCode': 200, 'RetryAttempts': 0, 'HostId': 'nXNaClIMxEJzWNmeMNQV2KpjbaCJLn0OGoXWZpuVOFS/iQYWxb3QtTvzX9SVfx2lA3oTKLwImKw=', 'RequestId': '3ED5852152014362', 'HTTPHeaders': {'content-length': '234', 'x-amz-id-2': 'nXNaClIMxEJzWNmeMNQV2KpjbaCJLn0OGoXWZpuVOFS/iQYWxb3QtTvzX9SVfx2lA3oTKLwImKw=', 'x-amz-copy-source-version-id': 'xVR78haVKlRnurYofbTfYr3ufYbktF8h', 'server': 'AmazonS3', 'x-amz-request-id': '3ED5852152014362', 'date': 'Fri, 05 Apr 2019 17:35:39 GMT', 'content-type': 'application/xml'}}}" amzn-s3-demo-bucket1,image_17763,,succeeded,200,,"{u'CopySourceVersionId': '6HjOUSim4Wj6BTcbxToXW44pSZ.40pwq', u'CopyObjectResult': {u'LastModified': datetime.datetime(2019, 4, 5, 17, 35, 39, tzinfo=tzlocal()), u'ETag': '""fe66f4390c50f29798f040d7aae72784""'}, 'ResponseMetadata': {'HTTPStatusCode': 200, 'RetryAttempts': 0, 'HostId': 'GiCZNYr8LHd/Thyk6beTRP96IGZk2sYxujLe13TuuLpq6U2RD3we0YoluuIdm1PRvkMwnEW1aFc=', 'RequestId': '1BC9F5B1B95D7000', 'HTTPHeaders': {'content-length': '234', 'x-amz-id-2': 'GiCZNYr8LHd/Thyk6beTRP96IGZk2sYxujLe13TuuLpq6U2RD3we0YoluuIdm1PRvkMwnEW1aFc=', 'x-amz-copy-source-version-id': '6HjOUSim4Wj6BTcbxToXW44pSZ.40pwq', 'server': 'AmazonS3', 'x-amz-request-id': '1BC9F5B1B95D7000', 'date': 'Fri, 05 Apr 2019 17:35:39 GMT', 'content-type': 'application/xml'}}}" amzn-s3-demo-bucket1,image_17860,,succeeded,200,,"{u'CopySourceVersionId': 'm.MDD0g_QsUnYZ8TBzVFrp.TmjN8PJyX', u'CopyObjectResult': {u'LastModified': datetime.datetime(2019, 4, 5, 17, 35, 40, tzinfo=tzlocal()), u'ETag': '""fe66f4390c50f29798f040d7aae72784""'}, 'ResponseMetadata': {'HTTPStatusCode': 200, 'RetryAttempts': 0, 'HostId': 'F9ooZOgpE5g9sNgBZxjdiPHqB4+0DNWgj3qbsir+sKai4fv7rQEcF2fBN1VeeFc2WH45a9ygb2g=', 'RequestId': '8D9CA56A56813DF3', 'HTTPHeaders': {'content-length': '234', 'x-amz-id-2': 'F9ooZOgpE5g9sNgBZxjdiPHqB4+0DNWgj3qbsir+sKai4fv7rQEcF2fBN1VeeFc2WH45a9ygb2g=', 'x-amz-copy-source-version-id': 'm.MDD0g_QsUnYZ8TBzVFrp.TmjN8PJyX', 'server': 'AmazonS3', 'x-amz-request-id': '8D9CA56A56813DF3', 'date': 'Fri, 05 Apr 2019 17:35:40 GMT', 'content-type': 'application/xml'}}}"

Il seguente esempio mostra un caso in cui la funzione AWS Lambda è andata in timeout, provocando il superamento della soglia di errore. Viene quindi contrassegnata come PermanentFailure.

amzn-s3-demo-bucket1,image_14975,,failed,200,PermanentFailure,"Lambda returned function error: {""errorMessage"":""2019-04-05T17:35:21.155Z 2845ca0d-38d9-4c4b-abcf-379dc749c452 Task timed out after 3.00 seconds""}" amzn-s3-demo-bucket1,image_15897,,failed,200,PermanentFailure,"Lambda returned function error: {""errorMessage"":""2019-04-05T17:35:29.610Z 2d0a330b-de9b-425f-b511-29232fde5fe4 Task timed out after 3.00 seconds""}" amzn-s3-demo-bucket1,image_14819,,failed,200,PermanentFailure,"Lambda returned function error: {""errorMessage"":""2019-04-05T17:35:22.362Z fcf5efde-74d4-4e6d-b37a-c7f18827f551 Task timed out after 3.00 seconds""}" amzn-s3-demo-bucket1,image_15930,,failed,200,PermanentFailure,"Lambda returned function error: {""errorMessage"":""2019-04-05T17:35:29.809Z 3dd5b57c-4a4a-48aa-8a35-cbf027b7957e Task timed out after 3.00 seconds""}" amzn-s3-demo-bucket1,image_17644,,failed,200,PermanentFailure,"Lambda returned function error: {""errorMessage"":""2019-04-05T17:35:46.025Z 10a764e4-2b26-4d8c-9056-1e1072b4723f Task timed out after 3.00 seconds""}" amzn-s3-demo-bucket1,image_17398,,failed,200,PermanentFailure,"Lambda returned function error: {""errorMessage"":""2019-04-05T17:35:44.661Z 1e306352-4c54-4eba-aee8-4d02f8c0235c Task timed out after 3.00 seconds""}"
Esempio - Report sulle attività Calcola il checksum

Nell’esempio seguente, l’operazione Calcola il checksum ha calcolato correttamente il checksum per l’oggetto caricato mentre era a riposo. La risposta restituita da Amazon S3 viene passata nuovamente a Operazioni in batch S3 e quindi viene scritta nel report di completamento finale:

amzn-s3-demo-bucket1,s3-standard-1mb-test-object,,succeeded,200,,"{""checksum_base64"":""bS9TOQ\u003d\u003d"",""etag"":""3c3c1813042989094598e4b57ecbdc82"",""checksumAlgorithm"":""CRC32"",""checksumType"":""FULL_OBJECT"",""checksum_hex"":""6D2F5339""}"

Il seguente report di esempio mostra cosa succede quando un’operazione Calcola il checksum non riesce, con conseguente report sull’attività non andata a buon fine:

amzn-s3-demo-bucket1,image_14975,,failed,200,PermanentFailure,"error details: {""failureMessage"":"Task 2845ca0d-38d9-4c4b-abcf-379dc749c452 SSE-C encryption type is not supported for this operation", ""errorCode"": "400"}" amzn-s3-demo-bucket1,image_14975,,failed,200,PermanentFailure,"error details: {""failureMessage"":"Task 2845ca0d-38d9-4c4b-abcf-379dc749c452 Key not found", ""errorCode"": "404"}" amzn-s3-demo-bucket1,image_14975,,failed,200,PermanentFailure,"error details: {""failureMessage"":"Task 2845ca0d-38d9-4c4b-abcf-379dc749c452 Internal server error, please retry", ""errorCode"": "500"}"