Add metrics server for wakunode
This commit is contained in:
parent
0f121927b5
commit
b761d1b7e4
|
@ -62,6 +62,16 @@ type
|
|||
defaultValue: false
|
||||
name: "whisper-bridge" }: bool
|
||||
|
||||
wakuMode* {.
|
||||
desc: "Select the Waku mode.",
|
||||
defaultValue: WakuSan
|
||||
name: "waku-mode" }: WakuMode
|
||||
|
||||
wakuPow* {.
|
||||
desc: "PoW requirement of Waku node.",
|
||||
defaultValue: 0.002
|
||||
name: "waku-pow" }: float64
|
||||
|
||||
nodekey* {.
|
||||
desc: "P2P node private key as hex.",
|
||||
defaultValue: newKeyPair()
|
||||
|
@ -88,19 +98,23 @@ type
|
|||
defaultValue: 8545
|
||||
name: "rpc-port" }: uint16
|
||||
|
||||
wakuMode* {.
|
||||
desc: "Select the Waku mode.",
|
||||
defaultValue: WakuSan
|
||||
name: "waku-mode" }: WakuMode
|
||||
metricsServer* {.
|
||||
desc: "Enable the metrics server."
|
||||
defaultValue: false
|
||||
name: "metrics-server" }: bool
|
||||
|
||||
wakuPow* {.
|
||||
desc: "PoW requirement of Waku node.",
|
||||
defaultValue: 0.002
|
||||
name: "waku-pow" }: float64
|
||||
metricsServerAddress* {.
|
||||
desc: "Listening address of the metrics server."
|
||||
defaultValue: parseIpAddress("127.0.0.1")
|
||||
name: "metrics-server-address" }: IpAddress
|
||||
|
||||
metricsServerPort* {.
|
||||
desc: "Listening HTTP port of the metrics server."
|
||||
defaultValue: 8008
|
||||
name: "metrics-server-port" }: uint16
|
||||
|
||||
# TODO:
|
||||
# - nat
|
||||
# - metrics
|
||||
# - discv5 + topic register
|
||||
# - mailserver functionality
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
import
|
||||
confutils, config, chronos, json_rpc/rpcserver,
|
||||
confutils, config, chronos, json_rpc/rpcserver, metrics,
|
||||
chronicles/topics_registry, # TODO: What? Need this for setLoglevel, weird.
|
||||
eth/[keys, p2p, async_utils],
|
||||
eth/p2p/[discovery, enode, peer_pool, bootnodes, whispernodes],
|
||||
|
@ -73,6 +73,14 @@ proc run(config: WakuNodeConf) =
|
|||
setupWakuRPC(node, keys, rpcServer)
|
||||
rpcServer.start()
|
||||
|
||||
when defined(insecure):
|
||||
if config.metricsServer:
|
||||
let
|
||||
address = config.metricsServerAddress
|
||||
port = config.metricsServerPort + config.portsShift
|
||||
info "Starting metrics HTTP server", address, port
|
||||
metrics.startHttpServer($address, Port(port))
|
||||
|
||||
runForever()
|
||||
|
||||
when isMainModule:
|
||||
|
|
Loading…
Reference in New Issue