如何解释 Fiware CYGNUS 统计服务输出?

How to interpret Fiware CYGNUS stats service output?

从我自己安装的以下 Fiware 组件开始:Orion Context Broker、CYGNUS NGSI、Fiware STH 和 MongoDB,一段时间后,我使用我在内部找到的统计服务得到以下结果 CYGNUS management API.

服务:GET http://<cygnus_host>:<management_port>/v1/stats

结果:

{
  "success":"true",
  "stats":{
     "sources":[
        {
           "name":"http-source",
           "status":"START",
           "setup_time":"2018-05-10T13:35:06.194Z",
           "num_received_events":78,
           "num_processed_events":78
        }
     ],
     "channels":[
        {
           "name":"sth-channel",
           "status":"START",
           "setup_time":"2018-05-10T13:35:06.662Z",
           "num_events":1,
           "num_puts_ok":78,
           "num_puts_failed":0,
           "num_takes_ok":77,
           "num_takes_failed":112
        },
        {
           "name":"mongo-channel",
           "status":"START",
           "setup_time":"2018-05-10T13:35:06.662Z",
           "num_events":0,
           "num_puts_ok":78,
           "num_puts_failed":0,
           "num_takes_ok":78,
           "num_takes_failed":139
        },
        {
           "name":"hdfs-channel",
           "status":"START",
           "setup_time":"2018-05-10T13:35:06.662Z",
           "num_events":1,
           "num_puts_ok":78,
           "num_puts_failed":0,
           "num_takes_ok":77,
           "num_takes_failed":35
        }
     ],
     "sinks":[
        {
           "name":"hdfs-sink",
           "status":"START",
           "setup_time":"2018-05-10T13:35:06.341Z",
           "num_processed_events":77,
           "num_persisted_events":0
        },
        {
           "name":"mongo-sink",
           "status":"START",
           "setup_time":"2018-05-10T13:35:06.374Z",
           "num_processed_events":78,
           "num_persisted_events":78
        },
        {
           "name":"sth-sink",
           "status":"START",
           "setup_time":"2018-05-10T13:35:06.380Z",
           "num_processed_events":78,
           "num_persisted_events":77
        }
     ]
  } 
}

引起我注意的是每个频道上 num_takes_failed 的数量,这是我的第一个问题:

这个变量到底是什么意思?

调查 CYGNUS documentation 我想 "take" 类似于 Flume Mongo 频道中某个动作的重试,但那是哪个动作?

我查看了 MongoDB 日志文件,没有发现任何与连接饱和或类似问题相关的内容,这让我想到了第二个问题。

我应该担心这个统计数据吗?如果是,我该如何解决这个问题?

非常感谢您的帮助。

如果您看到 processed_events 的数量与 persisted_events。 numb_takes_filed 是 flume 方法 EventTakeAttemptCountEventTakeSuccessCount 方法的值相减的结果,其中 EventTakeAttemptCount 是接收器尝试从通道读取事件的总次数。这并不意味着每次都返回事件,因为接收器可能轮询并且通道可能没有任何数据,另一方面,EventTakesuccessCount 是成功的事件总数被水槽带走。

此外,如果您想了解更多有关通道和接收器如何处理事件的信息,您可以 运行 调试模式下的 Cygnus 并查看日志输出以确保每个事件都得到处理和持久化正确的方式