本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
QLDB使用範例 AWS CLI
下列程式碼範例說明如何使用 AWS Command Line Interface 與來執行動作及實作常見案例QLDB。
Actions 是大型程式的程式碼摘錄,必須在內容中執行。雖然動作會顯示如何呼叫個別服務函數,但您可以在其相關案例中查看內容中的動作。
每個範例都包含完整原始程式碼的連結,您可以在其中找到如何在內容中設定和執行程式碼的指示。
主題
動作
下列程式碼範例會示範如何使用cancel-journal-kinesis-stream
。
- AWS CLI
-
若要取消日誌串流
下列
cancel-journal-kinesis-stream
範例會從分類帳取消指定的分錄資料流。aws qldb cancel-journal-kinesis-stream \ --ledger-name
myExampleLedger
\ --stream-id7ISCkqwe4y25YyHLzYUFAf
輸出:
{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的從 Amazon 串流日誌資料。
-
如需詳API細資訊,請參閱AWS CLI 指令參考CancelJournalKinesisStream
中的。
-
下列程式碼範例會示範如何使用create-ledger
。
- AWS CLI
-
範例 1:使用預設屬性建立分類帳
下列
create-ledger
範例會建立名稱myExampleLedger
與權限模式的分類帳STANDARD
。未指定刪除保護和 AWS KMS密鑰的可選參數,因此它們分別預設為true
和 AWS 擁有的KMS密鑰。aws qldb create-ledger \ --name
myExampleLedger
\ --permissions-modeSTANDARD
輸出:
{ "State": "CREATING", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": true, "CreationDateTime": 1568839243.951, "Name": "myExampleLedger", "PermissionsMode": "STANDARD" }
範例 2:若要建立已停用刪除保護、客戶管理KMS金鑰及指定標記的分類帳
下列
create-ledger
範例會建立名稱myExampleLedger2
與權限模式的分類帳STANDARD
。刪除保護功能已停用、指定的客戶管理KMS金鑰用於靜態加密,而指定的標籤會附加至資源。aws qldb create-ledger \ --name
myExampleLedger2
\ --permissions-modeSTANDARD
\ --no-deletion-protection \ --kms-keyarn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
\ --tagsIsTest=true,Domain=Test
輸出:
{ "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger2", "DeletionProtection": false, "CreationDateTime": 1568839543.557, "State": "CREATING", "Name": "myExampleLedger2", "PermissionsMode": "STANDARD", "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111" }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的 Amazon QLDB 分類帳的基本操作。
-
如需詳API細資訊,請參閱AWS CLI 指令參考CreateLedger
中的。
-
下列程式碼範例會示範如何使用delete-ledger
。
- AWS CLI
-
若要刪除分類帳
下列
delete-ledger
範例會刪除指定的分類帳。aws qldb delete-ledger \ --name
myExampleLedger
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的 Amazon QLDB 分類帳的基本操作。
-
如需詳API細資訊,請參閱AWS CLI 指令參考DeleteLedger
中的。
-
下列程式碼範例會示範如何使用describe-journal-kinesis-stream
。
- AWS CLI
-
若要描述期刊串流
下列
describe-journal-kinesis-stream
範例顯示來自分類帳之指定分錄資料流的詳細資訊。aws qldb describe-journal-kinesis-stream \ --ledger-name
myExampleLedger
\ --stream-id7ISCkqwe4y25YyHLzYUFAf
輸出:
{ "Stream": { "LedgerName": "myExampleLedger", "CreationTime": 1591221984.677, "InclusiveStartTime": 1590710400.0, "ExclusiveEndTime": 1590796799.0, "RoleArn": "arn:aws:iam::123456789012:role/my-kinesis-stream-role", "StreamId": "7ISCkqwe4y25YyHLzYUFAf", "Arn": "arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/7ISCkqwe4y25YyHLzYUFAf", "Status": "ACTIVE", "KinesisConfiguration": { "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }, "StreamName": "myExampleLedger-stream" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的從 Amazon 串流日誌資料。
-
如需詳API細資訊,請參閱AWS CLI 指令參考DescribeJournalKinesisStream
中的。
-
下列程式碼範例會示範如何使用describe-journal-s3-export
。
- AWS CLI
-
描述分錄匯出工作
下列
describe-journal-s3-export
範例顯示分類帳中指定匯出工作的明細。aws qldb describe-journal-s3-export \ --name
myExampleLedger
\ --export-idADR2ONPKN5LINYGb4dp7yZ
輸出:
{ "ExportDescription": { "S3ExportConfiguration": { "Bucket": "awsExampleBucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "Status": "COMPLETED", "ExportCreationTime": 1568847801.418, "InclusiveStartTime": 1568764800.0, "ExclusiveEndTime": 1568847599.0, "LedgerName": "myExampleLedger", "ExportId": "ADR2ONPKN5LINYGb4dp7yZ" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的在 Amazon 匯出日誌。
-
如需詳API細資訊,請參閱《AWS CLI 指令參考》中的 DescribeJournalS3Export
。
-
下列程式碼範例會示範如何使用describe-ledger
。
- AWS CLI
-
若要描述分類帳
下列
describe-ledger
範例顯示指定分類帳的明細。aws qldb describe-ledger \ --name
myExampleLedger
輸出:
{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "State": "ACTIVE", "Name": "myExampleLedger", "DeletionProtection": true, "PermissionsMode": "STANDARD", "EncryptionDescription": { "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "EncryptionStatus": "ENABLED" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的 Amazon QLDB 分類帳的基本操作。
-
如需詳API細資訊,請參閱AWS CLI 指令參考DescribeLedger
中的。
-
下列程式碼範例會示範如何使用export-journal-to-s3
。
- AWS CLI
-
若要將分錄區塊匯出到 S3
下列範
export-journal-to-s3
例會從名稱為分類帳的指定日期與時間範圍內,建立分錄區塊的匯出工作myExampleLedger
。匯出任務會將區塊寫入指定的 Amazon S3 儲存貯體。aws qldb export-journal-to-s3 \ --name
myExampleLedger
\ --inclusive-start-time2019-09-18T00:00:00Z
\ --exclusive-end-time2019-09-18T22:59:59Z
\ --role-arnarn:aws:iam::123456789012:role/my-s3-export-role
\ --s3-export-configurationfile://my-s3-export-config.json
my-s3-export-config.json
的內容:{ "Bucket": "awsExampleBucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }
輸出:
{ "ExportId": "ADR2ONPKN5LINYGb4dp7yZ" }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的在 Amazon 匯出日誌。
-
如需詳API細資訊,請參閱AWS CLI 命令參考中的 ExportJournalToS3
。
-
下列程式碼範例會示範如何使用get-block
。
- AWS CLI
-
範例 1:使用輸入檔案取得日誌區塊和校樣以進行驗證
下列
get-block
範例會向指定分類帳請求區塊資料物件和證明。該請求是針對指定的摘要提示地址和塊地址。aws qldb get-block \ --name
vehicle-registration
\ --block-addressfile://myblockaddress.json
\ --digest-tip-addressfile://mydigesttipaddress.json
myblockaddress.json
的內容:{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}" }
mydigesttipaddress.json
的內容:{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" }
輸出:
{ "Block": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},transactionId:\"FnQeJBAicTX0Ah32ZnVtSX\",blockTimestamp:2019-09-16T19:37:05.360Z,blockHash:{{NoChM92yKRuJAb/jeLd1VnYn4DHiWIf071ACfic9uHc=}},entriesHash:{{l05LOsiKV14SDbuaYnH7uwXzUvqzIwUiRLXGbTyj/nY=}},previousBlockHash:{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},entriesHashList:[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},{{y5cCBr7pOAIUfsVQ1j0TqtE97b4b4oo1R0vnYyE5wWM=}},{{TvTXygML1bMe6NvEZtGkX+KR+W/EJl4qD1mmV77KZQg=}}],transactionInfo:{statements:[{statement:\"FROM VehicleRegistration AS r \\nWHERE r.VIN = '1N4AL11D75C109151'\\nINSERT INTO r.Owners.SecondaryOwners\\n VALUE { 'PersonId' : 'CMVdR77XP8zAglmmFDGTvt' }\",startTime:2019-09-16T19:37:05.302Z,statementDigest:{{jcgPX2vsOJ0waum4qmDYtn1pCAT9xKNIzA+2k4R+mxA=}}}],documents:{JUJgkIcNbhS2goq8RqLuZ4:{tableName:\"VehicleRegistration\",tableId:\"BFJKdXgzt9oF4wjMbuxy4G\",statements:[0]}}},revisions:[{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}]}" }, "Proof": { "IonText": "[{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的 Amazon 中的資料驗證。
範例 2:使用速記語法取得日誌區塊和驗證以進行驗證
下列
get-block
範例會使用速記語法從指定分類帳要求區塊資料物件和證明。該請求是針對指定的摘要提示地址和塊地址。aws qldb get-block \ --name
vehicle-registration
\ --block-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}"
' \ --digest-tip-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}"
'輸出:
{ "Block": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},transactionId:\"FnQeJBAicTX0Ah32ZnVtSX\",blockTimestamp:2019-09-16T19:37:05.360Z,blockHash:{{NoChM92yKRuJAb/jeLd1VnYn4DHiWIf071ACfic9uHc=}},entriesHash:{{l05LOsiKV14SDbuaYnH7uwXzUvqzIwUiRLXGbTyj/nY=}},previousBlockHash:{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},entriesHashList:[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},{{y5cCBr7pOAIUfsVQ1j0TqtE97b4b4oo1R0vnYyE5wWM=}},{{TvTXygML1bMe6NvEZtGkX+KR+W/EJl4qD1mmV77KZQg=}}],transactionInfo:{statements:[{statement:\"FROM VehicleRegistration AS r \\nWHERE r.VIN = '1N4AL11D75C109151'\\nINSERT INTO r.Owners.SecondaryOwners\\n VALUE { 'PersonId' : 'CMVdR77XP8zAglmmFDGTvt' }\",startTime:2019-09-16T19:37:05.302Z,statementDigest:{{jcgPX2vsOJ0waum4qmDYtn1pCAT9xKNIzA+2k4R+mxA=}}}],documents:{JUJgkIcNbhS2goq8RqLuZ4:{tableName:\"VehicleRegistration\",tableId:\"BFJKdXgzt9oF4wjMbuxy4G\",statements:[0]}}},revisions:[{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}]}" }, "Proof": { "IonText": "[{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的 Amazon 中的資料驗證。
-
如需詳API細資訊,請參閱AWS CLI 指令參考GetBlock
中的。
-
下列程式碼範例會示範如何使用get-digest
。
- AWS CLI
-
若要取得分類帳的摘要
下列
get-digest
範例會從分錄中最新確認區塊的指定分類帳請求摘要。aws qldb get-digest \ --name
vehicle-registration
輸出:
{ "Digest": "6m6BMXobbJKpMhahwVthAEsN6awgnHK62Qq5McGP1Gk=", "DigestTipAddress": { "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的 Amazon 中的資料驗證。
-
如需詳API細資訊,請參閱AWS CLI 指令參考GetDigest
中的。
-
下列程式碼範例會示範如何使用get-revision
。
- AWS CLI
-
範例 1:使用輸入檔案取得文件修訂版和校樣以進行驗證
下列
get-revision
範例會向指定分類帳請求修訂資料物件和證明。該請求是針對指定的摘要提示地址,文檔 ID 和修訂的塊地址。aws qldb get-revision \ --name
vehicle-registration
\ --block-addressfile://myblockaddress.json
\ --document-idJUJgkIcNbhS2goq8RqLuZ4
\ --digest-tip-addressfile://mydigesttipaddress.json
myblockaddress.json
的內容:{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}" }
mydigesttipaddress.json
的內容:{ "IonText": "{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}" }
輸出:
{ "Revision": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}" }, "Proof": { "IonText": "[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{VV1rdaNuf+yJZVGlmsM6gr2T52QvBO8Lg+KgpjcnWAU=}},{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的 Amazon 中的資料驗證。
示例 2:使用速記語法獲取文檔修訂和驗證以進行驗證
下列
get-revision
範例會使用速記語法從指定分類帳要求修訂資料物件和證明。該請求是針對指定的摘要提示地址,文檔 ID 和修訂的塊地址。aws qldb get-revision \ --name
vehicle-registration
\ --block-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100}"
' \ --document-idJUJgkIcNbhS2goq8RqLuZ4
\ --digest-tip-address 'IonText="{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:123}"
'輸出:
{ "Revision": { "IonText": "{blockAddress:{strandId:\"KmA3ZZca7vAIiJAK9S5Iwl\",sequenceNo:100},hash:{{mHVex/yjHAWjFPpwhBuH2GKXmKJjK2FBa9faqoUVNtg=}},data:{VIN:\"1N4AL11D75C109151\",LicensePlateNumber:\"LEWISR261LL\",State:\"WA\",PendingPenaltyTicketAmount:90.25,ValidFromDate:2017-08-21,ValidToDate:2020-05-11,Owners:{PrimaryOwner:{PersonId:\"BFJKdXhnLRT27sXBnojNGW\"},SecondaryOwners:[{PersonId:\"CMVdR77XP8zAglmmFDGTvt\"}]},City:\"Everett\"},metadata:{id:\"JUJgkIcNbhS2goq8RqLuZ4\",version:3,txTime:2019-09-16T19:37:05.344Z,txId:\"FnQeJBAicTX0Ah32ZnVtSX\"}}" }, "Proof": { "IonText": "[{{eRSwnmAM7WWANWDd5iGOyK+T4tDXyzUq6HZ/0fgLHos=}},{{VV1rdaNuf+yJZVGlmsM6gr2T52QvBO8Lg+KgpjcnWAU=}},{{7kewBXhpdbClcZKxhVmpoMHpUGOJtWQD0iY2LPfZkYA=}},{{l3+EXs69K1+rehlqyWLkt+oHDlw4Zi9pCLW/t/mgTPM=}},{{48CXG3ehPqsxCYd34EEa8Fso0ORpWWAO8010RJKf3Do=}},{{9UnwnKSQT0i3ge1JMVa+tMIqCEDaOPTkWxmyHSn8UPQ=}},{{3nW6Vryghk+7pd6wFCtLufgPM6qXHyTNeCb1sCwcDaI=}},{{Irb5fNhBrNEQ1VPhzlnGT/ZQPadSmgfdtMYcwkNOxoI=}},{{+3CWpYG/ytf/vq9GidpzSx6JJiLXt1hMQWNnqOy3jfY=}},{{NPx6cRhwsiy5m9UEWS5JTJrZoUdO2jBOAAOmyZAT+qE=}}]" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的 Amazon 中的資料驗證。
-
如需詳API細資訊,請參閱AWS CLI 指令參考GetRevision
中的。
-
下列程式碼範例會示範如何使用list-journal-kinesis-streams-for-ledger
。
- AWS CLI
-
若要列出分類帳的分錄串流
下列
list-journal-kinesis-streams-for-ledger
範例會列出指定分類帳的分錄流。aws qldb list-journal-kinesis-streams-for-ledger \ --ledger-name
myExampleLedger
輸出:
{ "Streams": [ { "LedgerName": "myExampleLedger", "CreationTime": 1591221984.677, "InclusiveStartTime": 1590710400.0, "ExclusiveEndTime": 1590796799.0, "RoleArn": "arn:aws:iam::123456789012:role/my-kinesis-stream-role", "StreamId": "7ISCkqwe4y25YyHLzYUFAf", "Arn": "arn:aws:qldb:us-east-1:123456789012:stream/myExampleLedger/7ISCkqwe4y25YyHLzYUFAf", "Status": "ACTIVE", "KinesisConfiguration": { "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }, "StreamName": "myExampleLedger-stream" } ] }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的從 Amazon 串流日誌資料。
-
如需詳API細資訊,請參閱AWS CLI 指令參考ListJournalKinesisStreamsForLedger
中的。
-
下列程式碼範例會示範如何使用list-journal-s3-exports-for-ledger
。
- AWS CLI
-
列出分類帳的分錄匯出工作
下列
list-journal-s3-exports-for-ledger
範例會列出指定分類帳的分錄匯出工作。aws qldb list-journal-s3-exports-for-ledger \ --name
myExampleLedger
輸出:
{ "JournalS3Exports": [ { "LedgerName": "myExampleLedger", "ExclusiveEndTime": 1568847599.0, "ExportCreationTime": 1568847801.418, "S3ExportConfiguration": { "Bucket": "awsExampleBucket", "Prefix": "ledgerexport1/", "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" } }, "ExportId": "ADR2ONPKN5LINYGb4dp7yZ", "RoleArn": "arn:aws:iam::123456789012:role/qldb-s3-export", "InclusiveStartTime": 1568764800.0, "Status": "IN_PROGRESS" } ] }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的在 Amazon 匯出日誌。
-
如需詳API細資訊,請參閱AWS CLI 命令參考ExportsForLedger中的 ListJournalS3
。
-
下列程式碼範例會示範如何使用list-journal-s3-exports
。
- AWS CLI
-
若要列出分錄匯出工作
下列
list-journal-s3-exports
範例會列出與目前科目與區域相關聯之所有分類 AWS 帳的分錄匯出工單。aws qldb list-journal-s3-exports
輸出:
{ "JournalS3Exports": [ { "Status": "IN_PROGRESS", "LedgerName": "myExampleLedger", "S3ExportConfiguration": { "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" }, "Bucket": "awsExampleBucket", "Prefix": "ledgerexport1/" }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "ExportCreationTime": 1568847801.418, "ExportId": "ADR2ONPKN5LINYGb4dp7yZ", "InclusiveStartTime": 1568764800.0, "ExclusiveEndTime": 1568847599.0 }, { "Status": "COMPLETED", "LedgerName": "myExampleLedger2", "S3ExportConfiguration": { "EncryptionConfiguration": { "ObjectEncryptionType": "SSE_S3" }, "Bucket": "awsExampleBucket", "Prefix": "ledgerexport1/" }, "RoleArn": "arn:aws:iam::123456789012:role/my-s3-export-role", "ExportCreationTime": 1568846847.638, "ExportId": "2pdvW8UQrjBAiYTMehEJDI", "InclusiveStartTime": 1568592000.0, "ExclusiveEndTime": 1568764800.0 } ] }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的在 Amazon 匯出日誌。
-
如需詳API細資訊,請參閱《AWS CLI 指令參考中的 ListJournalS3 匯出
》。
-
下列程式碼範例會示範如何使用list-ledgers
。
- AWS CLI
-
若要列出可用的分類帳
下列
list-ledgers
範例會列出與目前科目與區域相關聯的所有分類 AWS 帳。aws qldb list-ledgers
輸出:
{ "Ledgers": [ { "State": "ACTIVE", "CreationDateTime": 1568839243.951, "Name": "myExampleLedger" }, { "State": "ACTIVE", "CreationDateTime": 1568839543.557, "Name": "myExampleLedger2" } ] }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的 Amazon QLDB 分類帳的基本操作。
-
如需詳API細資訊,請參閱AWS CLI 指令參考ListLedgers
中的。
-
下列程式碼範例會示範如何使用list-tags-for-resource
。
- AWS CLI
-
列出附加到分類帳的標籤
下列
list-tags-for-resource
範例會列出附加至指定分類帳的所有盤點單。aws qldb list-tags-for-resource \ --resource-arn
arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger
輸出:
{ "Tags": { "IsTest": "true", "Domain": "Test" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的標記 Amazon QLDB 資源。
-
如需詳API細資訊,請參閱AWS CLI 指令參考ListTagsForResource
中的。
-
下列程式碼範例會示範如何使用stream-journal-to-kinesis
。
- AWS CLI
-
範例 1:使用輸入檔案將日誌資料串流至 Kinesis 資料串流
下列範
stream-journal-to-kinesis
例會從名稱為分類帳的指定日期和時間範圍內建立日誌資料流myExampleLedger
。串流會將資料傳送到指定的 Amazon Kinesis 資料串流。aws qldb stream-journal-to-kinesis \ --ledger-name
myExampleLedger
\ --inclusive-start-time2020-05-29T00:00:00Z
\ --exclusive-end-time2020-05-29T23:59:59Z
\ --role-arnarn:aws:iam::123456789012:role/my-kinesis-stream-role
\ --kinesis-configurationfile://my-kinesis-config.json
\ --stream-namemyExampleLedger-stream
my-kinesis-config.json
的內容:{ "StreamArn": "arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb", "AggregationEnabled": true }
輸出:
{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的從 Amazon 串流日誌資料。
範例 2:使用速記語法將日誌資料串流至 Kinesis 資料串流
下列範
stream-journal-to-kinesis
例會從名稱為分類帳的指定日期和時間範圍內建立日誌資料流myExampleLedger
。串流會將資料傳送到指定的 Amazon Kinesis 資料串流。aws qldb stream-journal-to-kinesis \ --ledger-name
myExampleLedger
\ --inclusive-start-time2020-05-29T00:00:00Z
\ --exclusive-end-time2020-05-29T23:59:59Z
\ --role-arnarn:aws:iam::123456789012:role/my-kinesis-stream-role
\ --stream-namemyExampleLedger-stream
\ --kinesis-configurationStreamArn=arn:aws:kinesis:us-east-1:123456789012:stream/stream-for-qldb,AggregationEnabled=true
輸出:
{ "StreamId": "7ISCkqwe4y25YyHLzYUFAf" }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南QLDB中的從 Amazon 串流日誌資料。
-
如需詳API細資訊,請參閱AWS CLI 指令參考StreamJournalToKinesis
中的。
-
下列程式碼範例會示範如何使用tag-resource
。
- AWS CLI
-
若要標記分類帳
下列
tag-resource
範例會將一組標籤新增至指定的分類帳。aws qldb tag-resource \ --resource-arn
arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger
\ --tagsIsTest=true,Domain=Test
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的標記 Amazon QLDB 資源。
-
如需詳API細資訊,請參閱AWS CLI 指令參考TagResource
中的。
-
下列程式碼範例會示範如何使用untag-resource
。
- AWS CLI
-
若要從資源中移除標籤
下列
untag-resource
範例會從指定分類帳移除具有指定標籤索引鍵的標籤。aws qldb untag-resource \ --resource-arn
arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger
\ --tag-keysIsTest
Domain
此命令不會產生輸出。
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的標記 Amazon QLDB 資源。
-
如需詳API細資訊,請參閱AWS CLI 指令參考UntagResource
中的。
-
下列程式碼範例會示範如何使用update-ledger-permissions-mode
。
- AWS CLI
-
範例 1:若要將分類帳的權限模式更新為 STANDARD
下列
update-ledger-permissions-mode
範例會將STANDARD
權限模式指定給指定的分類帳。aws qldb update-ledger-permissions-mode \ --name
myExampleLedger
\ --permissions-modeSTANDARD
輸出:
{ "Name": "myExampleLedger", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "PermissionsMode": "STANDARD" }
範例 2:將分類帳的權限模式更新為 ALLOW _ ALL
下列
update-ledger-permissions-mode
範例會將ALLOW_ALL
權限模式指定給指定的分類帳。aws qldb update-ledger-permissions-mode \ --name
myExampleLedger
\ --permissions-modeALLOW_ALL
輸出:
{ "Name": "myExampleLedger", "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "PermissionsMode": "ALLOW_ALL" }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的 Amazon QLDB 分類帳的基本操作。
-
如需詳API細資訊,請參閱AWS CLI 指令參考UpdateLedgerPermissionsMode
中的。
-
下列程式碼範例會示範如何使用update-ledger
。
- AWS CLI
-
範例 1:更新分類帳的刪除保護屬性
下列
update-ledger
範例會更新指定的分類帳,以停用刪除保護功能。aws qldb update-ledger \ --name
myExampleLedger
\ --no-deletion-protection輸出:
{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE" }
範例 2:將分類帳的 AWS KMS索引更新為客戶管理的金鑰
下列
update-ledger
範例會更新指定的分類帳,以使用客戶管理的KMS金鑰進行靜態加密。aws qldb update-ledger \ --name
myExampleLedger
\ --kms-keyarn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
輸出:
{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE", "EncryptionDescription": { "KmsKeyArn": "arn:aws:kms:us-west-2:123456789012:key/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "EncryptionStatus": "UPDATING" } }
範例 3:將分類帳的 AWS KMS索引更新為 AWS 擁有的金鑰
下列
update-ledger
範例會更新指定的分類帳,以使用 AWS 擁有的KMS金鑰進行靜態加密。aws qldb update-ledger \ --name
myExampleLedger
\ --kms-keyAWS_OWNED_KMS_KEY
輸出:
{ "CreationDateTime": 1568839243.951, "Arn": "arn:aws:qldb:us-west-2:123456789012:ledger/myExampleLedger", "DeletionProtection": false, "Name": "myExampleLedger", "State": "ACTIVE", "EncryptionDescription": { "KmsKeyArn": "AWS_OWNED_KMS_KEY", "EncryptionStatus": "UPDATING" } }
如需詳細資訊,請參閱 Amazon QLDB開發人員指南中的 Amazon QLDB 分類帳的基本操作。
-
如需詳API細資訊,請參閱AWS CLI 指令參考UpdateLedger
中的。
-