合约开发中的小问题
【问题分类】
- bug
- P2P网络相关(包含libp2p,liquid)
- 链账户身份与权限相关(证书问题、public、多签投票问题)
- 核心交易引擎相关(交易池、DAG)
- 共识相关
- 智能合约相关
- 存储相关
- SDK相关
- 长安链CMC工具
- 长安链管理台
- 长安链浏览器
- 长安链合约IDE
- 长安链web签名插件
- 跨链相关
- 轻节点相关
- 隐私计算相关
- 密码学相关
- 环境依赖
- 其他补充:
【问题描述】(请对问题进行描述,方便定位问题)
请问智能合约中能输出INFO级别的日志吗? 我尝试改了stub.go中的Log函数,将Debugf(message)改成了Infof(message),发现没法输出到docker-go.log中 后面自己尝试查看了下原因,初步怀疑可能是在chainmaker.org/chainmaker/chainmaker-contract-sdk-docker-go/logger/logger.go(docker-go合约模版)中,配置zap日志系统的时候有这么一条语句: syncer := zapcore.AddSync(os.Stdout) 将输出导出到了标准输出,随后我成功在容器中的/proc/{pid}/fd/1中获取到了输出
现在想请教的问题是:
- 为什么在DEBUG模式下,能成功在docke-go.log中获取到了日志输出,而INFO模式下不行(修改stub.go中Log()的逻辑后),讲道理之前addsync的时候都是定向到标准输出,为啥DEBUG模式下可以输出到日志
- 能否在少量修改的情况下将合约中的INFO级别信息输出到日志文件
谢谢
【相关日志文件】(如果有报错日志请贴图,或者上传附件)
chainmaker-go 的 log/system.log & bin/panic.log file *
SDK 的 sdk.log file
【系统信息】(请填写系统信息,方便定位问题)
- chainmaker-go version * : [v2.2.1]
- **OS & version * :centos7.9
- docker镜像 version:
-
管理台 version:
- 如果是管理台的相关问题,请附带管理台版本,如果不是可忽略。
-
区块浏览器 version:
- 如果是浏览器的相关问题,请附带浏览器版本,如果不是可忽略。
-
合约IDE version:
- 如果是合约IDE的相关问题,请附带合约IDE版本,如果不是可忽略。
-
web签名插件 version:
- 如果是web签名插件的相关问题,请附带web签名插件版本,如果不是可忽略。
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information