Tools, FAQ, Tutorials:
Inspect Transaction Blocks of Channel Blockchain
How to Inspect Transaction Blocks of Channel Blockchain?
✍: FYIcenter.com
You can follow this tutorial to Inspect Transaction Blocks of Channel Blockchain.
1. Connect to the CLI container of the Hyperledger Fabric network:
$ docker exec -it cli bash bash-4.4#
2. Download (fetch) the newest block from "mychannel" channel:
bash-4.4# peer channel fetch newest newest.block -c mychannel [channelCmd] InitCmdFactory -> INFO 001 Endorser and orderer connections initialized [cli.common] readBlock -> INFO 002 Received block: 5 bash-4.4# ls -l -rw-r--r-- 1 root root 4921 Apr 1 18:00 newest.block
3. Parse the transaction block into JSON format:
bash-4.4# configtxgen -inspectBlock newest.block > newest.json ... bash-4.4# ls -l -rw-r--r-- 1 root root 4921 Apr 13 18:00 newest.block -rw-r--r-- 1 root root 10335 Apr 13 18:12 newest.json
4. Copy the block file to the hosting system:
bash-4.4# exit $ docker cp cli:/root/newest.json ./ $ more newest.json { "header": { "data_hash": "CAQ4AibIu3ZjBx8reigN7LlLAh9f/qutxcmAyb/VH+w=", "number": "5", "previous_hash": "KDjkXFvRJAcYTp2ralLNhMAD3eZc0LxfQyHr9DZgl0M=" }, "metadata": { "metadata": [ "CgQKAggCEvgGCq0GCpAGCgpPcmRlcmVyTVNQEoEGLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0t...", "CgIIAg==", "AA==", "" ] }, "data": { "data": [ { "payload": { "data": { "actions": [ { "header": { "creator": { "id_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNLekNDQWRHZ...", "mspid": "Org1MSP" }, "nonce": "rFGfK1lB88EcQWB0hESLUSB7Zj6TWN46" }, "payload": { "action": { "endorsements": [ { "endorser": "CgdPcmcxTVNQEqoGLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0...", "signature": "MEUCIQCCIuRNJeN0K9EDbJDBUYvp7Np6563cF7xUJAEqT40k6g..." }, { "endorser": "CgdPcmcyTVNQEqoGLS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0...", "signature": "MEUCIQD43zSLDZKiTPDs62s5bJLJKn3UpTYX95EnW/0gkJg5Lg..." } ], "proposal_response_payload": { "extension": { "chaincode_id": { "name": "mycc", "path": "", "version": "2.0" }, "events": null, "response": { "message": "", "payload": null, "status": 200 }, "results": { "data_model": "KV", "ns_rwset": [ { "collection_hashed_rwset": [], "namespace": "_lifecycle", "rwset": { "metadata_writes": [], "range_queries_info": [], "reads": [ { "key": "namespaces/fields/mycc/Sequence", "version": null } ] } }, { "collection_hashed_rwset": [], "namespace": "lscc", "rwset": { "metadata_writes": [], "range_queries_info": [], "reads": [ { "key": "mycc", "version": { "block_num": "4", "tx_num": "0" } } ] } }, { "collection_hashed_rwset": [], "namespace": "mycc", "rwset": { "metadata_writes": [], "range_queries_info": [], "reads": [ { "key": "a", "version": { "block_num": "4", "tx_num": "0" } }, { "key": "b", "version": { "block_num": "4", "tx_num": "0" } } ], "writes": [ { "is_delete": false, "key": "a", "value": "OTA=" }, { "is_delete": false, "key": "b", "value": "MjEw" } ] } } ] } }, "proposal_hash": "BgCskXWBzaoywJXSkAMOLyO8jLNeTKepYNBz9Db+XN4=" } }, "chaincode_proposal_payload": { "input": { "chaincode_spec": { "chaincode_id": { "name": "mycc", "path": "", "version": "" }, "input": { "args": [ "aW52b2tl", "YQ==", "Yg==", "MTA=" ], "is_init": false }, "timeout": 0, "type": "GOLANG" } } } } } ] }, "header": { "channel_header": { "channel_id": "mychannel", "epoch": "0", "extension": "EgYSBG15Y2M=", "timestamp": "2019-04-01T14:44:32.649599656Z", "tls_cert_hash": null, "tx_id": "e6f391c8ec768f93746c5594981acffc9ce85d33d3c60856138527ccf91ce20a", "type": 3, "version": 0 }, "signature_header": { "creator": { "id_bytes": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNLekNDQWRHZ0F...", "mspid": "Org1MSP" }, "nonce": "rFGfK1lB88EcQWB0hESLUSB7Zj6TWN46" } } }, "signature": "MEQCIBzWy9jPYAaDv0cgIOSEWwH1EGwFJOjMOBJUb+W/kjmjAiAsOIn+Uw..." } ] } }
Â
⇒ Hyperledger Fabric Docker Containers
⇠View Channel Blockchain and Download Blocks
⇑ BYFN (Build Your First Network)
⇑⇑ Hyperledger Tutorials
2020-08-13, 774👍, 0💬
Popular Posts:
How to attach console to a Running Container using the "docker container exec" command? I want to ge...
How to add a new operation to an API on the Publisher Dashboard of an Azure API Management Service? ...
What properties and functions are supported on http.client.HTTPResponse objects? If you get an http....
How to use "link" command tool to link objet files? If you have object files previously compiled by ...
How to run PowerShell Commands in Dockerfile to change Windows Docker images? When building a new Wi...