JMX 指标和新遗迹
JMX Metrics and New Relic
我们为我们的配置提供了新的遗留物代理,以了解并了解 JMX 指标的配置和捕获。我们的 CorDapp 新出现在我们新的 relic 帐户下。但是,唯一捕获和显示的指标是通用的并且与 JVM 相关。
包含@MXBean 注释的唯一源文件是 HibernateStatistics。
我在 master 下看到有更多关于指标和监控的细节。
我假设直到 V3.1 之后才发生额外的指标捕获。
我只是想确认我们没有忽略某些东西,指标实际上应该用于流量和交易。
在 Corda 3.1 中,唯一公开的特定于 Corda 的指标是:
- 附件数量(
net.corda:name=Attachments
)
- 流量检查点率(
net.corda:type=Flows,name=Checkpointing Rate
)
- 启动流的数量(
net.corda:type=Flows,name=Started
)
- 飞行中流量数(
net.corda:type=Flows,name=InFlight
)
- 完成的流数(
net.corda:type=Flows,name=Finished
)
Apache Artemis 指标也公开了。可在此处找到公开指标列表:https://docs.corda.net/node-administration.html#monitoring-your-node。正如您所注意到的,Corda 的未来版本将扩展此指标列表。
在StateMachineManagerImpl.kt
实例化节点的StateMachineManager
时注册流量指标,如下:
// Monitoring support.
private val metrics = serviceHub.monitoringService.metrics
init {
metrics.register("Flows.InFlight", Gauge<Int> { mutex.content.stateMachines.size })
}
private val checkpointingMeter = metrics.meter("Flows.Checkpointing Rate")
private val totalStartedFlows = metrics.counter("Flows.Started")
private val totalFinishedFlows = metrics.counter("Flows.Finished")
我们为我们的配置提供了新的遗留物代理,以了解并了解 JMX 指标的配置和捕获。我们的 CorDapp 新出现在我们新的 relic 帐户下。但是,唯一捕获和显示的指标是通用的并且与 JVM 相关。
包含@MXBean 注释的唯一源文件是 HibernateStatistics。
我在 master 下看到有更多关于指标和监控的细节。
我假设直到 V3.1 之后才发生额外的指标捕获。
我只是想确认我们没有忽略某些东西,指标实际上应该用于流量和交易。
在 Corda 3.1 中,唯一公开的特定于 Corda 的指标是:
- 附件数量(
net.corda:name=Attachments
) - 流量检查点率(
net.corda:type=Flows,name=Checkpointing Rate
) - 启动流的数量(
net.corda:type=Flows,name=Started
) - 飞行中流量数(
net.corda:type=Flows,name=InFlight
) - 完成的流数(
net.corda:type=Flows,name=Finished
)
Apache Artemis 指标也公开了。可在此处找到公开指标列表:https://docs.corda.net/node-administration.html#monitoring-your-node。正如您所注意到的,Corda 的未来版本将扩展此指标列表。
在StateMachineManagerImpl.kt
实例化节点的StateMachineManager
时注册流量指标,如下:
// Monitoring support.
private val metrics = serviceHub.monitoringService.metrics
init {
metrics.register("Flows.InFlight", Gauge<Int> { mutex.content.stateMachines.size })
}
private val checkpointingMeter = metrics.meter("Flows.Checkpointing Rate")
private val totalStartedFlows = metrics.counter("Flows.Started")
private val totalFinishedFlows = metrics.counter("Flows.Finished")