区块链网络运行期间的日志是通过其中的 peer、orderer、CA、Kafka、ZooKeeper 等类型节点的容器日志方式输出的。容器服务区块链解决方案支持以多种方式查看这些日志信息,包括容器服务控制台、Kubernetes命令、阿里云日志服务等。本文档将对这几种方式的使用方法进行介绍。
使用容器服务控制台
容器服务控制台提供了便捷的图形化界面的日志查看方式。在部署了区块链网络之后,可以通过以下操作步骤查看对应节点的容器日志。
- 登录容器服务管理控制台。
- 在 Kubernetes 菜单下,单击左侧导航栏的,进入集群列表页面。
- 单击目标集群的控制台。
- 在左侧导航栏中单击容器组, 再单击日志图标。
- 查看日志详细信息。
使用 Kubernetes 命令
用户也可以通过标准的 kubectl logs 命令查看区块链网络的容器服务日志。
- 在容器服务控制台的 Kubernetes 集群列表,选择区块链部署所在的集群,单击 管理,获得 Master 节点 SSH 连接地址。
- 通过 SSH 方式登录 Kubernetes 集群的 master 节点,输入用户名 root 和创建集群时设置的密码。
- 运行 kubectl get pod 获得 pod 列表,并选择需要查看日志的 pod 名称。
- 运行 kubectl logs pod名称 命令来查看日志信息。
- 如一个 pod 内包含多个容器,可运行 kubectl logs pod名称 容器名称 命令来查看某个容器的日志信息。
使用阿里云日志服务
使用容器服务控制台的日志功能或者 Kubernetes 命令两种方式基本可以满足常见的日志查看的需求。但对于企业级需求来说,如果需要日志存储、实时索引查询和分析、报警、可视化报表等高级功能的话,可结合
阿里云日志服务 进行扩展。
容器服务区块链解决方案支持与阿里云日志服务进行整合。下面对基本的操作步骤进行介绍,如需了解更详细的关于在容器服务 Kubernetes 集群集成阿里云日志服务的信息,可参考概述。
使用阿里云日志服务可能会产生一定费用,详情请参考日志服务 计费说明。
- 登录 日志服务控制台,并按照提示开通日志服务。
- 单击左侧导航栏中的 Project管理,单击右上角的创建Project。
- 输入 Project 名称,选择区块链网络所在的地域,然后单击确认。
- 弹出对话框,询问您是否创建 Logstore ,单击创建。
- 在创建 Logstore 窗口中,输入 Logstore 名称,其他设置可根据实际需要进行调整,完成后单击确认。
- 新建 Logstore 后,会弹出提示对话框,单击数据接入向导。
- 选择 Docker 标准输出,然后单击下一步。
- 在插件配置框内,填入以下示例配置。配置详情可参考说明文档。完成后单击下一步。
{
"inputs": [
{
"type": "service_docker_stdout",
"detail": {
"Stdout": true,
"Stderr": true,
"IncludeLabel": {
},
"ExcludeLabel": {
}
}
}
]
}

- 单击创建机器组。
在创建机器组窗口,填入自定义的机器组名称,在机器组标识下拉框中选择
用户自定义标识,在用户自定义标识编辑框填入和机器组名称一致的内容,最后单击
确认。示例如下:

- 勾选刚创建的机器组,单击应用到机器组,再单击下一步。
- 可根据需要,添加键名称用于建立索引,例如 pod_name_,完成配置后,单击下一步。
- 单击确认,根据页面引导,完成剩余步骤。至此我们完成了阿里云日志服务的创建和初始化配置。
- 接下来,利用区块链解决方案部署一套新的区块链网络,与日志服务集成的相关参数在方案主页的参数页面进行设置。
您需要将 enabled 参数设为 true,表示启用 logservice 服务,此外,需要将 machineGroup 参数设置为机器组中配置的自定义用户标识,本例中即是 blockchain-network01。
Region 的设置参见 Linux 安装 logtail,查找相关安装命令,从而查找 region ID。例如 cn_hangzhou,表示从杭州地域的阿里云内网写入日志服务,不消耗公网带宽。
UserID 的设置参考下面截图:

- 要开始利用阿里云日志服务,在日志服务控制台的 Logstore 列表中,单击目标 Logstore 右侧的查询。
- 进一步的,日志服务支持进行复杂的查询,更多查询语法和其他日志服务的高级功能,请参见 查询语法。