Hyperledger Fabric Node.js开发中如何使用日志?本教程就来演示下如何使用hyperledgefabric node.js客户端日志记录功能。...概述 hyperledger fabric node.js客户端日志记录使用node.js winston 开发包。当node.js应用程序首次加载hyperledger结构包时,日志记录被初始化。...const Client = require('fabric-client'); // the logging is now set 有四个级别的日志记录: info,信息。 warn,警告。...版本1.2后: const logger = Client.getLogger('APPLICATION'); 1.2之前: const sdkUtils = require('fabric-client...这里是Hyperledger Fabric Node.js开发中如何使用日志
Hyperledger 概述 要学习Hyperledger Fabric,先来看看它的母项目Hyperledger是什么。...是一个可视化区块链的操作工具,可以用于创建对用户友好的 Web 应用程序;是首个Hyperledger的区块链浏览器,用户可以查看/调用/部署/查询交易、网络、智能合约、存储等信息。...链码主要分成系统链码和用户链码两种,系统链码嵌入在系统内,提供对系统进行配置、管理的支持;而用户链码则是运行在单独的 Docker 容器中,提供对上层应用的支持,用户通过链码相关的 API 编写用户链码...分布式账本主要记录世界状态(最新的分布式账本状态,一般使用CouchDB以方便查询)和事务日志(世界状态的更新历史,记录区块链结构,使用LevelDB),对账本的每个操作都会记录在日志中,不可篡改。...Fabric 支持多种背书策略,Client 在提交至排序节点前会验证是否满足背书要求,值得注意的是如果只做了查询账本操作,Client 不会提交至 OSN。
Hyperledger孵化并支持一系列区块链业务技术,框架,库和应用程序。Hyperledger项目托管了多个区块链框架,包括Hyperledger Fabric。...blockchain是记录所有交易的交易日志历史记录。 Smart contract。Hyperledger Fabric智能合约称为chaincode。...MSP管理用户ID并验证网络上的所有参与者,从而使Hyperledger Fabric成为一个私有的和准入的网络。 Ordering service。...Ordering service目前只支持Solo和Kafka。 下图是Hyperledger Fabric的组件和构成: ? image Hyperledger架构是怎么工作的?...SDK提供了一种执行用户链码,在网络中执行事务,监视事件等的方法。 要编写区块链应用程序,您需要: 用受支持的编程语言(例如Go)编写chaincode。
配备的 Hyperledger Fabric 区块链网络包含两个组织、每个组织两个对等节点,以及一个 Solo 订购服务。...该网络支持自动配备对等节点和订购者组织的加密材料,自动配备渠道工件,以及邀请组织对等节点加入渠道。 在区块链术语方面需要帮助?...在 区块链基础:术语表和用例 中适当了解,然后在 Hyperledger Fabric 术语表 中更深入钻研。...在本教程中,我们将展示如何将第三个组织添加到一个应用程序渠道,将它自己的对等节点添加到一个已在运行的 Hyperledger Fabric 区块链网络,然后将它加入该渠道。...用于检查和验证的容器日志文件 ?
Hyperledger Fabric推荐Kafa用于生产环境。Kafa是一个分布式、具有水平伸缩能力、崩溃容错能力 的日志系统。...在Hyperledger Fabric区块链中可以有多个Kafka节点,使用zookeeper进行同步管理。...中的Kafka 要理解在超级账本Hyperledger Fabric中的Kafka是如何工作的,首先需要理解几个重要的术语: Chain - 指的是一组客户端(通道/channel)可以访问的日志 Channel...虽然Kafka支持崩溃容错,它并不能提供对网络中恶意攻击的保护。需要一种拜占庭容错方案(BFT)才可以对抗恶意的攻击,但是目前Hyperledger Farbic框架中还有待实现这一机制。...总而言之,在Hyperledger Farbic中,Kafka共识模块是可以用于生产环境的,它可以支持崩溃容错, 但无法对抗恶意攻击。
src/github.com/hyperledger/fabric-samples/first-network ....-n evmcc -C mychannel -c '{"Args":["7ec1f20fced5ed8d47f94cdab140644a28a85441","6d4ce63c"]}' --hex 获取用户帐户地址...通过ARK.io桌面钱包触发智能合约 确保安装了ark-hyperledger-plugin并且relay正在运行。启动后,你应该在中继日志中看到最后一个条目: ?...确保fab代理正在Hyperledger实例上运行,它正在侦听端口5000: ? 通过桌面钱包提交Ark交易: ? 观察Ark replay日志中的输出以及新应用的交易的详细信息: ?...打开节点控制台并检查Smart Contract是否选择了新值: ?
当用户进行交易时,他们希望在交易完成后确信交易不能随意更改或撤消。...HyperLedger Fabric还提供了几个可插拔的组件。账本数据可以以多种格式存储,一致的机制可以被转换和输出,并且支持不同的MSPs。...共享帐本 HyperLedger Fabric底下有分出两大子系统,包括:世界状态(world state)和事务日志(transaction log)。...HyperLedger Fabric支持需要将隐私(使用信道)作为关键操作需求的网络,同时也是相对开放的网络。 共识 事务必须按照它们发生的顺序写在帐本上,即使它们可能是网络中不同的参与者生成的。...总而言之,注重隐私则可通过设定参与者(节点)的权限是否须经认证:许可制(Permissioned)以及非许可制、开放式(Permissionless),区块链的透明程度、以及加入是否向公众开放:以公、私有链去区分
它旨在支持不同组件的可插拔实现,并适应整个经济生态系统中存在的复杂性。 Hyperledger Fabric 提供了一种独特的弹性和可扩展的体系结构,使其不同于其他区块链解决方案。...Hyperledger Fabric 的分层架构设计 Hyperledger Fabric 可以分为7层,分别是存储层、数据层、通道层、网络层、共识层、合约层、应用层。...每个通道都是一个独立的区块链,因此多个用户可以共用同一个区块链系统,而不用担心信息泄漏问题。 网络层用于给区块链网络中各个通信节点提供 P2P 网络支持,是保障区块链账本一致性的基础服务之一。...Hyperledger Fabric 利用 Kafka 对交易信息进行排序处理,提供高吞吐、低延时的处理能力,并且在集群内部支持节点故障容错。...应用层是 Hyperledger Fabric 的各个应用程序。
准备工作(Prerequisites) 在开始之前,检查一下你的准备开发或者测试Fabric的平台是否有安装如下软件。...wff/go 构建你的第一个网络(Building Your First Network) 构建你的第一个网络(byfn)方案提供了一个Hyperledger Fabric示例网络,该网络由两个组织组成...$ cd ~ $ mkdir hyperledger-fabric $ cd hyperledger-fabric $ curl -sSL https://raw.githubusercontent.com...$ cd ~/hyperledger-fabric/fabric-samples/first-network/ $ ....所以,接下来,我会深入写一篇关于手动构建fabric网络,包括自己生成组织,证书,启动排序、对等节点,以及手撸链码的日志。等有空再说吧,现在正在给fabric加密类型增加国密算法,可能懒得写了就。
1.生成公私钥和证书 Fabric中有两种类型的公私钥和证书,一种是给节点之前通讯安全而准备的TLS证书,另一种是用户登录和权限控制的用户证书。...环境的docker-compose文件 前面对节点和用户的公私钥以及证书,还有创世区块都生成完毕,接下来我们就可以配置docker-compose的yaml文件,启动Fabric的Docker环境了。..."100","b","200"]}' -P "OR ('Org1MSP.member','Org2MSP.member')" 如果我们新开一个Ubuntu终端,去查看peer0.org1上的日志...,那么就可以知道整个实例化的过程到底干了什么: docker logs -f peer0.org1.example.com 主要几行重要的日志: 2017-08-29 21:14:12.290 UTC...-c '{"Args":["invoke","a","b","10"]}' 5.4在另一个节点上查询交易 前面的操作都是在org1下面做的,那么处于同一个区块链(同一个Channel下)的org2,是否会看
Docker的组中 sudo usermod -aG docker studyzy 重新登录当前用户,接下来修改 Docker 服务配置(/etc/default/docker 文件)。...docker pull hyperledger/fabric-peer docker pull hyperledger/fabric-membersrvc 但是baseimage是没有latest版本,...docker pull hyperledger/fabric-baseimage:x86_64-0.3.0 docker tag hyperledger/fabric-baseimage:x86_64-...,或者我们再打开一个窗口,运行命令: docker logs -f pbft_vp0_1 查看peer日志,找到原因。...#rest-api 3.3测试Java版Chain Code Fabric除了支持本身的Go语言的ChainCode,也可以支持其他语言,比如最常用的Java语言。
最近在学习Hyperledger Fabric,它是由 Linux 基金会发起创建的开源区块链分布式账本。 ?...共识达成算法插件化,支持用 Go 和 JavaScript 开发智能合约,尤以企业级的安全机制和 membership 机制为特色。...2.1 下载fabric源码 进入GO的目录创建hyperledger文件夹: mkdir -p $GOPATH/src/github.com/hyperledger cd $GOPATH/src/...2.3 网络测试 上面的工作完成后,当前目录多了一个fabric-samples文件夹,我们进去该目录下的test-network目录测试下搭建的环境是否成功: cd fabric-samples/...注册用户: sudo node registerUser.js ? 我们接下来,执行一笔交易 sudo node invoke.js ?
Hyperledger Explorer是一个简单,功能强大,易于使用,高度可维护的开源区块链浏览器,用于查看底层区块链网络上的活动。 网络上很多教程按着操作是不行得,今天抽空记录一下详细教程。...markximo/article/details/80449626 4、gcc-c++安装 yum install -y gcc-c++ 5、下载源码 git clone https://github.com/hyperledger...创建数据库命名同上面配置,此处为fabricexplorer 创建表,需要切换到刚才创建的用户下操作,脚本在blockchain-explorer/app/persistence/fabric/postgreSQL...,替换文中所有的fabric-path为fabric-samples所在的路径即可,其他的均可不做修改 ?.../start.sh 启动后看下日志是否正常,日志位于blockchain-explorer/logs/console/目录下,出现以下类似日志说明已经成功部署。 ? ! 12、打开浏览器预览 ? ?
特征 在Java Chaincode中,我们将实现: 1.用户钱包创建。 2.用户钱包查询。 3.钱包代币转账(即从一个钱包发送钱或代币到另一个钱包)。...[可选]在我的负载测试和一些关于Hyperledger Fabric性能的论文中,LevelDB的性能优于CouchDB。...此外,在我们的例子中,我们在整个交易系统中只支持一种代币类型(即只有一种代币)。...第4步——Chaincode类 package org.hyperledger.fabric.chaincode; import java.util.List; import org.hyperledger.fabric.chaincode.Models.Wallet...; import org.hyperledger.fabric.shim.ChaincodeBase; import org.hyperledger.fabric.shim.ChaincodeStub;
"github.com/hyperledger/fabric-contract-api-go/contractapi": 这是一个Hyperledger Fabric提供的用于编写智能合约的Go API...= nil { ... }: 这是一个错误处理的条件语句,用于检查链码实例的创建过程中是否发生了错误。如果发生错误,将会输出错误日志并终止程序运行。...= nil { ... }: 这是另一个错误处理的条件语句,用于检查链码实例的启动过程中是否发生了错误。如果发生错误,将会输出错误日志并终止程序运行。...在总体上,这段代码的功能是创建一个基于Hyperledger Fabric的区块链应用程序,并启动该应用程序的链码实例。...它使用了Hyperledger Fabric提供的链码API和自定义的智能合约实现。如果创建或启动过程中出现错误,程序将输出相应的错误日志并终止运行。
责任性:用来定义确定所有各方是否都认为该协议得以遵守的条件。...尽管 Bluemix 支持运行完整的 IBM 区块链网络,但它目前还不支持使用 Java 语言开发链代码。预计此情况很快就会发生变化,所以请时刻关注。...可以在 Gradle 主页 上进一步了解 Gradle(和它的一些知名度高的用户)。...请参阅 Hyperledger 设置文档中的 “日志控制” 了解日志级别的更多信息。 可以在 Docker 网站 上找到有关 Docker Compose YML 文件定义的更多信息。...这意味着 fabric 不需要您发送任何类型的最终用户凭证。安全性不属于本教程的讨论范围,但是如果您有兴趣了解更多信息,可以根据您的链代码请求来查阅这篇安全功能说明。
github.com/hyperledger/fabric-contract-api-go/contractapi": 这是一个Hyperledger Fabric提供的用于编写智能合约的Go API的包...github.com/hyperledger/fabric-samples/asset-transfer-basic/chaincode-go/chaincode": 这是一个与Hyperledger...= nil { ... }: 这是一个错误处理的条件语句,用于检查链码实例的创建过程中是否发生了错误。如果发生错误,将会输出错误日志并终止程序运行。...= nil { ... }: 这是另一个错误处理的条件语句,用于检查链码实例的启动过程中是否发生了错误。如果发生错误,将会输出错误日志并终止程序运行。...它使用了Hyperledger Fabric提供的链码API和自定义的智能合约实现。如果创建或启动过程中出现错误,程序将输出相应的错误日志并终止运行。
入门 在我们开始之前,如果你还没有这样做,你可能希望检查是否已经在开发区块链应用程序和/或运行Hyperledger Fabric的平台上安装了所有前提条件。...前提条件 在我们开始之前,如果你还没有这样做,你可能希望检查您是否已经在开发区块链应用程序和/或运行Hyperledger Fabric的平台上安装了以下所有前提条件。...暂时不支持Node.js 9.x。...Node.js将会安装NPM,但是,建议你确认安装了NPM的版本,你可以使用以下命令升级npm工具: npm install npm@5.6.0 -g Python 以下仅适用于ubuntu 16.04用户...Hyperledger Fabric SDKs Hyperledger Fabric提供了许多SDK来支持各种编程语言,官方发布了两款针对Node.js和Java的SDK: Hyperledger Fabric
一、Hyperledger Fabric是什么 Hyperledger Fabric是面向企业应用场景的开源分布式账本平台。...二、Hyperledger Fabric的相关组件 Hyperledger Fabric主要由以下几个组件构成,fabric-ca, fabric-peer, fabric-orderer, fabric-kafaka...Fabric-ca的主要作用是为组织内的成员颁发证书。每个组织都有自己的根证书,用于识别用户身份。 Fabric-peer是运行在用户组织内的节点上。...Fabric-orderer, fabric-kafaka, fabric-zookeeper主要是提供orderer服务,用户将请求提交给orderer, orderer对用户的请求进行排序,通过排序从而保证分布式业务的顺序...e) 对于区块存储文件,单个文件大小是否有限制。 目前在fabric里,区块是存在一个个文件里的,单个文件的大小是64M。
参考 https://hyperledger-fabric.readthedocs.io/en/release-1.2/ledger/ledger.html Ledger记账本是Hyperdger Fabric...同理Hyperledger Fabric结构也是类似的,需要记录Asset资产的当前状态和交易的历史。 区块链的账本 区块链的账本包含两部分,world state(世界的状态?整体的状态?)...(2) 区块数据段 B2开始保存的都是有序的交易日志。 (3) 区块的元数据 包含区块写入的时间戳,证书,公钥,写入者的签名,是否合法的标记位等。 交易 参考下图交易数据的具体结构 ?...World State数据库的选择 Hyperledger Fabric当前支持Level DB和CouchDB. Level DB适合于简单的key-value键值对,嵌入网络的peer节点进程。...基础完结, 后面我们会通过Hyperledger Fabric的入门例子, 实际操作和配置, 使用Go和Nodejs编写联链码。
领取专属 10元无门槛券
手把手带您无忧上云