如何在Hyperledger Fabric chaincode中查看java日志



我正在尝试使用java shim的Fabric,我仍在搜索如何在对等输出上显示日志?

我试过了:

peer node start --logging-level DEBUG

也在搜索使用父类的日志记录器:

private static Log logger = LogFactory.getLog(ChaincodeBase.class);

没有成功。无法看到对等端

的输出

谁有什么主意?

我自己找到了解决办法。它意味着访问对等体内部的Docker映像并调用:

docker logs mycontainersidwhatever

但我认为这可能仍然是错误的,因为我在调试模式,我现在看到只有警告级别的链码

当你实例化一个新的链码时,对等端将创建一个新的docker容器dev-(peer name)-(contract name)-(contract version)。您可以直接在此容器中查看日志。

然而,fabric java chaincode使用自己的日志配置,它使用一个名为CORE_CHAINCODE_LOGGING_LEVEL的环境变量来定义chaincode将使用的日志级别。通常,这个环境变量被设置为"info"级别。你可以在运行合约的docker容器中手动更新这个变量的值,或者你可以在peer中定义这个变量,这样每个合约都会将定义的值赋给它。

In 'fabric-samplesfirst-networkbasepeer-base。在启动HLF网络之前,请确保您拥有以下内容,然后启动网络。

FABRIC_LOGGING_SPEC=DEBUG

这将在DEBUG模式下生成日志。现在,为了查看docker容器中生成的日志,我们必须向docker请求日志,这可以在终端窗口中使用。

docker logs -f <<container-name>>

使用

docker logs container_name

或在docker_compose中。设置日志环境

FABRIC_LOGGING_SPEC =调试

或者

尝试在cli中设置一次,使用

出口

最新更新