基本操作

本文提供了FISCO-BCOS的基本操作。包括证书操作,节点操作,链操作及信息查看。

证书操作

生成链证书 (CA)

脚本:generate_chain_cert.sh

说明:在指定位置生成链的根证书CA

参数

必要参数

flag参数说明
-o指定链证书生成的位置

可选参数

flag参数说明
-m证书生成时,手动输入参数,不采用默认参数
-g生成国密链证书,这里必须设置
-d指定国密证书生成脚本存放路径默认是FISCO-BCOS/tools/cert/GM,采用默认值,不需要输入参数内容
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts/
  2. bash generate_chain_cert.sh -h

生成证书

  1. bash generate_chain_cert.sh -o /mydata

在目录下生成

  1. #tree /mydata
  2. /mydata
  3. |-- ca.crt
  4. `-- ca.key

生成机构证书

脚本:generate_agency_cert.sh

说明:用链的根证书,在指定的位置生成机构的证书

参数

必要参数

flag参数说明
-c链证书(CA证书)所在目录脚本用CA证书生成机构证书
-o指定的机构证书文件夹生成位置
-n机构名机构证书文件夹用此名字命名

可选参数

flag参数说明
-m证书生成时,手动输入参数,不采用默认参数
-g生成国密机构证书,这里必须设置
-d指定国密证书生成脚本存放路径默认是FISCO-BCOS/tools/cert/GM,采用默认值,不需输入参数内容
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts/
  2. bash generate_agency_cert.sh -h

生成证书

  1. bash generate_agency_cert.sh -c /mydata -o /mydata -n test_agency

在目录下生成

  1. #tree test_agency
  2. test_agency/
  3. |-- agency.crt
  4. |-- agency.csr
  5. |-- agency.key
  6. |-- ca.crt
  7. `-- cert.cnf

生成节点证书

脚本:generate_node_cert.sh

说明:用机构证书,在节点的data目录下生成节点证书。在使用本脚本前,请先用generate_node_basic.sh生成节点目录。

参数

必要参数

flag参数
-a机构名
-d机构证书文件夹
-n节点名
-o指定的节点证书输出到的data文件夹

可选参数

flag参数说明
-r国密证书生成脚本存放路径默认是FISCO-BCOS/tools/cert/GM,采用默认值
-s国密sdk名称产生国密版节点证书时,必须产生sdk证书
-g生成国密节点证书,这里必须设置
-m证书生成时,手动输入参数,不采用默认参数
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts/
  2. bash generate_node_cert.sh -h

生成证书

  1. bash generate_node_cert.sh -a test_agency -d /mydata/test_agency -n node0 -o /mydata/node0/data

节点目录下生成证书,身份,功能等文件,用*标出

  1. node0/
  2. |-- config.json
  3. |-- data
  4. | |-- agency.crt *
  5. | |-- bootstrapnodes.json
  6. | |-- ca.crt *
  7. | |-- node.ca *
  8. | |-- node.crt *
  9. | |-- node.csr *
  10. | |-- node.json *
  11. | |-- node.key *
  12. | |-- node.nodeid *
  13. | |-- node.param *
  14. | |-- node.private *
  15. | |-- node.pubkey *
  16. | `-- node.serial *
  17. |-- keystore
  18. |-- log
  19. |-- log.conf
  20. |-- start.sh
  21. `-- stop.sh

生成SDK证书

脚本:generate_sdk_cert.sh

说明:在指定机构的证书目录下生成机构对应的SDK证书。此脚本相对独立,只有需要使用web3sdk,才需使用此脚本。

参数

必要参数

flag参数说明
-d机构证书文件夹用机构名生成机构的SDK证书

可选参数

flag参数说明
-m证书生成时,手动输入参数,不采用默认参数
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts/
  2. bash generate_sdk_cert.sh -h

生成证书

  1. bash generate_sdk_cert.sh -d /mydata/test_agency

输入一系列密码后,在机构证书目录下生成sdk文件夹

  1. #tree test_agency/
  2. test_agency/
  3. |-- agency.crt
  4. |-- agency.csr
  5. |-- agency.key
  6. |-- agency.srl
  7. |-- ca-agency.crt
  8. |-- ca.crt
  9. |-- cert.cnf
  10. `-- sdk
  11. |-- ca.crt
  12. |-- client.keystore
  13. |-- keystore.p12
  14. |-- sdk.crt
  15. |-- sdk.csr
  16. |-- sdk.key
  17. |-- sdk.param
  18. |-- sdk.private
  19. `-- sdk.pubkey

节点操作

生成创世节点

脚本:generate_genesis_node.sh

说明:生成创世节点,并自动内置系统合约。其中会调用generate_node_basic.sh,generate_node_cert.sh、generate_genesis.sh和deploy_system_contract.sh生成创世节点的目录、文件、证书和系统合约。生成的创世节点是关闭状态。创世节点生成后,需启动,并注册,将其加入联盟中参与共识。

参数

必要参数

flag参数说明
-o指定创世节点的文件夹生成位置
-n创世节点名
-l节点监听端口对应的IP
-r节点RPC端口号根据情况自定,端口不冲突即可
-p节点P2P端口号根据情况自定,端口不冲突即可
-c节点channel端口号根据情况自定,端口不冲突即可
-a节点所属机构名
-d节点所属机构证书文件夹

可选参数

flag参数说明
-sgod账号地址手动指定god账号地址
-g表明生成国密版FISCO-BCOS创世节点
-m证书生成,手动输入参数,不采用默认参数
-h查看帮助

操作:查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts/
  2. bash generate_genesis_node.sh -h

生成创世节点

  1. bash generate_genesis_node.sh -o /mydata -n node0 -l 127.0.0.1 -r 8545 -p 30303 -c 8891 -d /mydata/test_agency -a test_agency

生成创世节点所有的文件,并自动部署上了系统合约

  1. #tree node0/
  2. node0/
  3. |-- config.json
  4. |-- data
  5. | |-- 4bcbbeb4
  6. | | |-- 12041
  7. | | | |-- extras
  8. | | | | |-- 000003.log
  9. | | | | |-- CURRENT
  10. | | | | |-- LOCK
  11. | | | | |-- LOG
  12. | | | | `-- MANIFEST-000002
  13. | | | `-- state
  14. | | | |-- 000003.log
  15. | | | |-- CURRENT
  16. | | | |-- LOCK
  17. | | | |-- LOG
  18. | | | `-- MANIFEST-000002
  19. | | `-- blocks
  20. | | |-- 000003.log
  21. | | |-- CURRENT
  22. | | |-- LOCK
  23. | | |-- LOG
  24. | | `-- MANIFEST-000002
  25. | |-- abiname
  26. | | |-- 000003.log
  27. | | |-- CURRENT
  28. | | |-- LOCK
  29. | | |-- LOG
  30. | | `-- MANIFEST-000002
  31. | |-- agency.crt
  32. | |-- bootstrapnodes.json
  33. | |-- ca.crt
  34. | |-- event.log
  35. | |-- geth.ipc
  36. | |-- IPC_MappedFile
  37. | |-- keys.info
  38. | |-- keys.info.salt
  39. | |-- node.ca
  40. | |-- node.crt
  41. | |-- node.csr
  42. | |-- node.json
  43. | |-- node.key
  44. | |-- node.nodeid
  45. | |-- node.param
  46. | |-- node.private
  47. | |-- node.pubkey
  48. | |-- node.serial
  49. | |-- pbftMsgBackup
  50. | | |-- 000003.log
  51. | | |-- CURRENT
  52. | | |-- LOCK
  53. | | |-- LOG
  54. | | `-- MANIFEST-000002
  55. | |-- RPC_MappedFile
  56. | `-- UTXO
  57. | |-- db
  58. | | |-- 000003.log
  59. | | |-- CURRENT
  60. | | |-- LOCK
  61. | | |-- LOG
  62. | | `-- MANIFEST-000002
  63. | |-- extra
  64. | | |-- 000003.log
  65. | | |-- CURRENT
  66. | | |-- LOCK
  67. | | |-- LOG
  68. | | `-- MANIFEST-000002
  69. | `-- vault
  70. | |-- 000003.log
  71. | |-- CURRENT
  72. | |-- LOCK
  73. | |-- LOG
  74. | `-- MANIFEST-000002
  75. |-- fisco-bcos.log
  76. |-- genesis.json
  77. |-- keystore
  78. |-- log
  79. | |-- debug_log_2018081521.log
  80. | |-- error_log_2018081521.log
  81. | |-- fatal_log_2018081521.log
  82. | |-- info_log_2018081521.log
  83. | |-- log_2018081521.log
  84. | |-- stat_log_2018081521.log
  85. | |-- trace_log_2018081521.log
  86. | |-- verbose_log_2018081521.log
  87. | `-- warn_log_2018081521.log
  88. |-- log.conf
  89. |-- myeasylog.log
  90. |-- start.sh
  91. `-- stop.sh

生成普通节点

脚本:generate_node.sh

说明:用创世节点的nodeid、系统代理合约地址、创世节点的p2p地址,生成普通节点。其中会调用generate_node_basic.sh、generate_node_cert.sh和generate_genesis.sh,生成节点的目录、文件和证书。生成的节点是关闭状态。节点启动后,会自动连接创世节点,同步系统合约。

参数

必要参数

flag参数说明
-o指定节点的文件夹生成位置
-n节点名
-l节点监听端口对应的IP
-r节点RPC端口号根据情况自定,端口不冲突即可
-p节点P2P端口号根据情况自定,端口不冲突
-c节点channel端口号根据情况自定,端口不冲突即
-e链上节点P2P接口URL的列表
节点启动时,主动连接链上节点的P2P接口同步数据。
此列表用”,”分割,如:127.0.0.1:30303,127.0.0.1:30304
-d节点所属机构证书文件夹
-a节点所属机构名

可选参数

flag参数说明
-i创世节点nodeid用于生成与创世节点相同的创世块文件。创世节点的nodeid可用node_info.sh去查
-sgod账号地址用于生成与创世节点相同的创世块文件。创世节点god账号地址可用node_info.sh去查
-x系统代理合约地址用于配置与链相同的系统代理合约地址。可用node_info.sh去查任意的节点获取。
-f创世节点信息文件从创世节点的信息文件(用node_info.sh脚本生成)读取创世节点nodeid,god账号地址,系统代理合约地址。替代-i -s -x命令
-g表明生成国密版FISCO-BCOS普通节点
-m证书生成时,手动输入参数,不采用默认参数
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts/
  2. bash generate_node.sh -h

生成节点

  1. bash generate_node.sh -o /mydata -n node1 -l 127.0.0.1 -r 8546 -p 30304 -c 8892 -e 127.0.0.1:30303,127.0.0.1:30304 -d /mydata/test_agency -a test_agency -x 0x919868496524eedc26dbb81915fa1547a20f8998 -s 0xb862b65912e0857a49458346fcf578d199dba024 -i xxxxxx

  1. bash generate_node.sh -o /mydata -n node1 -l 127.0.0.1 -r 8546 -p 30304 -c 8892 -e 127.0.0.1:30303,127.0.0.1:30304 -d /mydata/test_agency -a test_agency -f node0.info

生成节点的全部文件

  1. tree node1
  2. node1
  3. |-- config.json
  4. |-- data
  5. | |-- agency.crt
  6. | |-- bootstrapnodes.json
  7. | |-- ca.crt
  8. | |-- node.ca
  9. | |-- node.crt
  10. | |-- node.csr
  11. | |-- node.json
  12. | |-- node.key
  13. | |-- node.nodeid
  14. | |-- node.param
  15. | |-- node.private
  16. | |-- node.pubkey
  17. | `-- node.serial
  18. |-- genesis.json
  19. |-- keystore
  20. |-- log
  21. |-- log.conf
  22. |-- start.sh
  23. `-- stop.sh

生成节点基本文件

脚本:generate_node_basic.sh

说明:在指定目录下,生成节点目录,并在目录下生成节点的配置文件和操作脚本。此时,节点还缺少证书文件,功能文件和信息文件,需要继续使用generate_node_cert.sh来生成。或直接用generate_node.sh直接生成节点的所有文件。

参数

必要参数

flag参数说明
-o指定节点的文件夹生成位置
-n节点名
-l节点监听端口对应的IP
-r节点RPC端口号根据情况自定,端口不冲突即可
-p节点P2P端口号根据情况自定,端口不冲突即可
-c节点channel端口号根据情况自定,端口不冲突
-e链上节点P2P接口URL的列表
节点启动时,主动连接链上节点的P2P接口
同步数据。此列表用”,”分割,如:127.0.0.1:30303,127.0.0.1:30304

可选参数

flag参数说明
-x系统代理合约地址用于配置与链相同的系统代理合约地址。可用node_info.sh去查任意的节点获取。
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts/
  2. bash generate_node_basic.sh -h

生成节点基本文件

  1. bash generate_node_basic.sh -o /mydata -n node0 -l 127.0.0.1 -r 8545 -p 30303 -c 8891 -e 127.0.0.1:30303,127.0.0.1:30304

在目录下生成

  1. #tree node0/
  2. node0/
  3. |-- config.json
  4. |-- data
  5. | `-- bootstrapnodes.json
  6. |-- keystore
  7. |-- log
  8. |-- log.conf
  9. |-- start.sh
  10. `-- stop.sh

链操作

生成god账号

说明:在生产条件下,需要手动生成god账号,提供给相关脚本生成节点文件。

操作

到指定目录下生成god账号

  1. cd /mydata/FISCO-BCOS/tools/contract
  2. node accountManager.js > godInfo.txt
  3. cat godInfo.txt

得到生成的god账号信息,此信息请妥善保存,在对链操作的某些场景

  1. privKey : 0xc8a92524ac634721a9eac94c9d8c09ea719f3a01e0ed1f576f673af6eb90aeea
  2. pubKey : 0xb2795b4000981fb56f386a00e5064bd66b7754db6532bb17f9df1975ca884fc7b3b3291f9f3b20ee0278e610b8814ff62fa7dfbbcda959766c0555eb5f48147d
  3. address : 0xb862b65912e0857a49458346fcf578d199dba024

其中god账号地址是需要作为参数提供给其它脚本的

  1. address : 0xb862b65912e0857a49458346fcf578d199dba024

生成创世块文件

脚本:generate_genesis.sh

说明:用god账号地址,创世节点的nodeid,生成创世块文件,若不指定god账号地址,用默认的god账号地址。

参数

必要参数

flag参数说明
-o指定创世块文件生成位置创世块文件genesis.json
-i 或 -d创世节点的nodeid 或文件夹二选一

可选参数

flag参数说明
-i创世节点nodeid
-d创世节点文件夹
-sgod账号地址手动指定god账号地址
-g表明生成国密god账号
-h查看帮助

操作:查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts/
  2. bash generate_genesis.sh -h

生成创世块文件

  1. bash generate_genesis.sh -i 4af70363e2266e62aaca5870d660cc4ced35deae83b67f3dffebd0dcfa3b16d96d8fe726f9fea0def06a3bbde47261b9722ddbb9461af131c9645eb660644842 -o /mydata/node1 -r 0xb862b65912e0857a49458346fcf578d199dba024

生成的创世块文件genesis.json

  1. {
  2. "nonce": "0x0",
  3. "difficulty": "0x0",
  4. "mixhash": "0x0",
  5. "coinbase": "0x0",
  6. "timestamp": "0x0",
  7. "parentHash": "0x0",
  8. "extraData": "0x0",
  9. "gasLimit": "0x13880000000000",
  10. "god":"0xb862b65912e0857a49458346fcf578d199dba024",
  11. "alloc": {},
  12. "initMinerNodes":["4af70363e2266e62aaca5870d660cc4ced35deae83b67f3dffebd0dcfa3b16d96d8fe726f9fea0def06a3bbde47261b9722ddbb9461af131c9645eb660644842"]
  13. }

配置待操作链的端口

脚本:config_rpc_address.sh

说明:对正在运行中的链进行操作(如:注册节点,部署合约,调用合约)时,需先将全局proxy变量指向待操作的链。具体的,是将全局proxy变量设置为链上某个节点的RPC端口,即设置/mydata/FISCO-BCOS/tools/web3sdk/config.js的proxy为相应的节点RPC的URL。设置一次即可永久生效,无需重复设置。

参数

必要参数

flag参数说明
-o某节点RPC的URL全局proxy变量指向待操作的链RPC的URL

可选参数

flag参数说明
-wweb3lib文件夹地址手动指定web3lib地址,默认在../web3lib
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts
  2. bash set_proxy_address.sh -h

设置RPC的URL(节点的RPC的URL用node_info.sh获取)

  1. bash set_proxy_address.sh -o 127.0.0.1:8545

yes回车确认后,写入全局的proxy变量中

  1. proxy="http://127.0.0.1:8545"

部署系统合约

脚本:deploy_system_contract.sh

说明:用在生成创世节点时(generate_generate_node.sh),已经自动调用此脚本部署了系统合约。若需要重新手动部署系统合约,则调用此脚本。并同时将链上其它节点的config.json修改为与创世节点相同的systemproxyaddress,并重启节点使其生效。一般来说,不推荐重新部署系统合约。重新部署系统合约意味着对链管理的重置,需要链上所有机构都同意,且需要重启链上所有的节点。在使用此脚本前,需调set_proxy_address.sh设置全局proxy地址(若设置则无需重复设置)。

参数

必要参数

flag参数
-d创世节点文件夹

可选参数

flag参数说明
-wweb3lib文件夹地址手动指定web3lib地址,默认在../web3lib
-ssystemcontract文件夹地址手动指定systemcontract地址,默认在../systemcontract
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts
  2. bash set_proxy_address.sh -h

部署系统合约

  1. bash deploy_systemcontract.sh -d /mydata/node0

得到系统代理合约地址

  1. SystemProxy address: 0xbac830dee59a0f2a33beddcf53b329a4e1787ce2

将链上其它节点的systemproxyaddress也修改为相同的地址

  1. sed -i '/systemproxyaddress/c \\t\"systemproxyaddress\":\"0xbac830dee59a0f2a33beddcf53b329a4e1787ce2\",' /mydata/node1/config.json
  2. sed -i '/systemproxyaddress/c \\t\"systemproxyaddress\":\"0xbac830dee59a0f2a33beddcf53b329a4e1787ce2\",' /mydata/node2/config.json

注册节点

脚本:register_node.sh

说明:此脚本将某个指定的节点注册入网,让此节点参与到区块链的共识中。在链初始化初期,链上无任何一个节点被注册,此时由创世节点进行共识,其它节点都是观察者节点。当有一个节点被注册后,由注册的节点进行共识。此时,创世节点退化成一个普通的节点,也需被注册后才能参与共识。在使用此脚本前,需调set_proxy_address.sh设置全局proxy地址(若设置则无需重复设置)。

参数

必要参数

flag参数
-d需要注册节点的文件夹

可选参数

flag参数说明
-wweb3lib文件夹地址手动指定web3lib地址,默认在../web3lib
-ssystemcontract文件夹地址手动指定systemcontract地址,默认在../systemcontract
-g表明注册国密版FISCO-BCOS节点到系统合约
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts
  2. bash register_node.sh -h

将指定节点目录,将节点注册入网

  1. bash register_node.sh -d /mydata/node0

用node_all.sh脚本可看到节点入网情况

  1. ----------node 0---------
  2. id=4af70363e2266e62aaca5870d660cc4ced35deae83b67f3dffebd0dcfa3b16d96d8fe726f9fea0def06a3bbde47261b9722ddbb9461af131c9645eb660644842
  3. name=node0
  4. agency=test_agency
  5. caHash=BE4790D7B2BA3D1A
  6. Idx=0
  7. blocknumber=59

节点退网

脚本:remove_node.sh

说明:此脚本将某个指定的节点从共识节点列表中删除,此时该节点退化成观察者节点,使用此脚本前,需调set_proxy_address.sh设置全局proxy地址(若设置则无需重复设置)。

参数

必要参数

flag参数
-d需要注册节点的文件夹

可选参数

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts
  2. bash remove_node.sh -h

将指定节点目录,将节点退网:

  1. bash remove_node.sh -d /mydata/node0

状态查询

查看节点存活

说明:直接查看节点进程

操作

  1. ps -ef |grep fisco-bcos

可看到相应的节点进程,用启动目录区分不同的节点

  1. app 57342 1 23 15:24 ? 00:00:02 fisco-bcos --genesis /mydata/node0/genesis.json --config /mydata/node0/config.json
  2. app 57385 1 37 15:24 ? 00:00:01 fisco-bcos --genesis /mydata/node1/genesis.json --config /mydata/node1/config.json

查看节点基本信息

脚本:node_info.sh

说明:指定节点目录,输出节点的基本信息。

参数

必要参数

flag参数
-d需要查看信息的节点文件夹

可选参数

flag参数说明
-o节点信息文件名指定生成的节点信息文件
-g输出国密版的节点信息
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts
  2. bash node_info.sh -h

指定节点目录,查看节点信息

  1. bash node_info.sh -d /mydata/node1/ -o node1.info

得到节点关键信息

  1. -----------------------------------------------------------------
  2. Name: node1
  3. Node dir: /mydata/node1/
  4. Agency: test_agency
  5. CA hash: BE4790D7B2BA3D1B
  6. Node ID: f56014d3ef617a8d461c6531a68b183594203b269e82ead83cc37f47cd67c3f45798b8a1c20edc5a0d93d68fcd253dd80378e96ca26bdaf0453d6661112f8f66
  7. RPC address: 127.0.0.1:8546
  8. P2P address: 127.0.0.1:30304
  9. Channel address: 127.0.0.1:8892
  10. SystemProxy address: 0xbac830dee59a0f2a33beddcf53b329a4e1787ce2
  11. God address: 0xb862b65912e0857a49458346fcf578d199dba024
  12. State: Running (pid: 69599)
  13. -----------------------------------------------------------------

同时生成了节点信息文件node1.info

  1. {
  2. "listenip" : "127.0.0.1",
  3. "rpcport" : 8546,
  4. "p2pport" : 30304,
  5. "channelPort" : 8892,
  6. "systemproxyaddress" : "0xbac830dee59a0f2a33beddcf53b329a4e1787ce2",
  7. "god" : "0xb862b65912e0857a49458346fcf578d199dba024",
  8. "id" : "f56014d3ef617a8d461c6531a68b183594203b269e82ead83cc37f47cd67c3f45798b8a1c20edc5a0d93d68fcd253dd80378e96ca26bdaf0453d6661112f8f66",
  9. "name" : "/mydata/node1/config.json",
  10. "agency" : "test_agency",
  11. "caHash" : "BE4790D7B2BA3D1B"
  12. }

查看链上被注册的节点

脚本:node_all.sh

说明:输出链上所有被注册的节点,即链上参与共识的节点。在使用此脚本前,需调set_proxy_address.sh设置全局proxy地址(若设置则无需重复设置)。

参数

可选参数

flag参数说明
-wweb3lib文件夹地址手动指定web3lib地址,默认在../web3lib
-ssystemcontract文件夹地址手动指定systemcontract地址,默认在../systemcontract
-h查看帮助

操作

查看用法

  1. cd /mydata/FISCO-BCOS/tools/scripts
  2. bash node_all.sh -h

直接调用脚本查看

  1. bash node_all.sh

得到被注册的节点

  1. NodeIdsLength= 2
  2. ----------node 0---------
  3. id=4af70363e2266e62aaca5870d660cc4ced35deae83b67f3dffebd0dcfa3b16d96d8fe726f9fea0def06a3bbde47261b9722ddbb9461af131c9645eb660644842
  4. name=node0
  5. agency=test_agency
  6. caHash=BE4790D7B2BA3D1A
  7. Idx=0
  8. blocknumber=59
  9. ----------node 1---------
  10. id=f56014d3ef617a8d461c6531a68b183594203b269e82ead83cc37f47cd67c3f45798b8a1c20edc5a0d93d68fcd253dd80378e96ca26bdaf0453d6661112f8f66
  11. name=node1
  12. agency=test_agency
  13. caHash=BE4790D7B2BA3D1B
  14. Idx=1
  15. blocknumber=60

查看节点连接状态

说明:通过查看日志,过滤某个关键字,查看指定节点的链接情况

操作

  1. cat /mydata/node1/log/* | grep "topics Send to"

看到发送topic的日志,表示节点已经连接了相应的另一个节点

  1. DEBUG|2018-08-10 15:42:05:621|topics Send to:1 nodes
  2. DEBUG|2018-08-10 15:42:06:621|topics Send tod23058c33577f850832e47994df495c674ba66273df2fcb1e6ee7d7e1dbd7be78be2f7b302c9d15842110b3db6239da2aa98ddf68e512b452df748d3d3e4c1cd@127.0.0.1:30303

查看节点共识状态

说明:通过查看日志,过滤某个关键字,查看指定节点的共识状态

操作

  1. tail -f /mydata/node1/log/* |grep +++

可看到周期性的出现如下日志,表示节点间在周期性的进行共识,节点运行正确

  1. INFO|2018-08-10 15:48:52:108|+++++++++++++++++++++++++++ Generating seal on57b9e818999467bff75f58b08b3ca79e7475ebfefbb4caea6d628de9f4456a1d#32tx:0,maxtx:1000,tq.num=0time:1533887332108
  2. INFO|2018-08-10 15:48:54:119|+++++++++++++++++++++++++++ Generating seal on273870caa50741a4841c3b54b7130ab66f08227601b01272f62d31e48d38e956#32tx:0,maxtx:1000,tq.num=0time:1533887334119

查看节点启动日志

说明:节点启动日志在节点每次启动时刷新,若节点无法启动,可查看此日志。

操作

  1. cat /mydata/node0/fisco-bcos.log

查看节点运行日志

说明:节点在运行时,在所在目录下的log文件夹里实时的打印一系列的日志。根据日志等级的划分,可查看相应的日志输出。

操作

查看目录下的日志

  1. log
  2. |-- debug_log_2018081521.log
  3. |-- error_log_2018081521.log
  4. |-- fatal_log_2018081521.log
  5. |-- info_log_2018081521.log
  6. |-- log_2018081521.log #全局日志
  7. |-- stat_log_2018081521.log
  8. |-- trace_log_2018081521.log
  9. |-- verbose_log_2018081521.log
  10. `-- warn_log_2018081521.log

按日期和时刻查看日志

  1. cat log_2018081521.log

查看实时刷出的日志

  1. tail -f log_2018081521.log