2024. 10. 9. 22:02ㆍProject
*가상환경에 Hyperledger가 구축되어있지 않다면 이전 게시물을 참고*
트랜잭션 결과를 DB에서 확인
자산을 확인하는 방법으로는 특정 함수를 조회하거나 DB에서 자산을 확인하는 방법으로 총 두 가지가 있다.
본 프로젝트를 진행 중 "/fabric-samples/asset-transfer-ledger-queries/chaincode-go" 경로에 있는 " asset_transfer_ledger_chaincode.go" 파일을 트랜잭션 했을 때 DB가 설정되지 않았던 문제로 자산을 조회하지 못했다.
*경로 이동 명령어
cd /fabric-samples/asset-transfer-ledger-queries/chaincode-go
이를 보완하여 다른 파일을 선정하여, 하이퍼레저 패브릭 파일 중 "fabric-samples/asset-transfer-basic/chaincode-go" 경로에 있는 "assetTransfer.go" 파일을 트랜잭션하여 특정 자산 조회와 데이터베이스에서 자산을 확인하였다.
*네트워크 생성 명령어
./network.sh up createChannel -c mychannel –s couchdb
기존 네트워크 생성 명령어 뒤에 “–s couchdb” 옵션을 추가하여 배포할 피어 상태의 데이터베이스를 지정하였다.
컨테이너를 보면 "couchdb0" 컨테이너가 생성된 것을 확인 후 체인코드를 배포하였다.
* 체인코드 배포 명령어
./network.sh deployCC -ccn basic -ccp ../asset-transfer-basic/chaincode-go -ccl go –ccep "OR('Org1MSP.peer','Org2MSP.peer')
“chaincode invoke successful. result: status:200“ 문구가 뜨면 트랜잭션 성공이다.
* 저장된 자산을 쿼리하는 명령어
peer chaincode query -C mychannel -n basic –c '{"Args":["GetAllAssets"]}
위 명령어를 입력하면 모든 지갑 불러오면 저장된 자산이 출련된다. 특정 자산만 조회하기 위해 query를 사용해 ”asset6” 자산을 조회
* 특정 자산 조회
peer chaincode query -C mychannel -n basic –c '{"Args":["ReadAsset","asset6"]}
다음과 같은 결과를 확인 ”{"AppraisedValue":800,"Color":"white","ID":"asset6","Owner":"Christopher","Size":15}“.
웹에서 아래 주소로 접속하여 ID, PASSWORD를 입력하여 로그인 한다.
http://localhost:5984/_utils/
ID : admin, PASSWORD : mysecretpassword를 입력한다. ID, PASSWORD 정보는 ”couchdb0” 컨테이너에 /opt/couchdb/etc/local.ini 파일에서 확인. 들어가면 네트워크를 생성할 때 사용한 네트워크명으로 데이터베이스 이름이 생성되었고 터미널에 출력됐던 자산을 확인. 또한 ”config” 파일을 열고 ”core.yaml” 파일에 내용 중 ”database” 부분 ”couchdb” 로 수정.
로그인하면 아래 그림과 같은 화면이 보인다.
couchdb에서 JSON 탭에 들어가면 자산을 JSON 형식으로 확인할 수 있다.
본 프로젝트는 Hyperledger Fabric과 CouchDB 설정을 하여 자산을 시각적으로 확인하는 프로젝트를 진행했습니다.
추가적인 질문이 있으시면 언제든지 문의해 주세요! 🤗
**로그인 오류시 참고**
CouchDB 로그인 오류시 아래 링크를 확인해주세요!
https://peer-laboratory.tistory.com/9
'Project' 카테고리의 다른 글
[Hyperledger fabric] 2.1 Couchdb (로그인 오류 해결) (2) | 2024.10.18 |
---|---|
VMware Workstation Pro 무료 다운로드 및 설치 (8) | 2024.10.15 |
[Hyperledger fabric] 3. Explorer 구축 (0) | 2024.10.09 |
[Hyperledger fabric] 1. 구축 (2) | 2024.10.09 |
MongoDB에 한국거래소 API를 연결하여 데이터 시각화 (2) | 2024.10.09 |