Re: [discuss] Add metrics for Edgex to enhance the system monitor


Dell Customer Communication

Looping in Systems Mgmt group.


I’m going to initiate a discussion about a standardized structured logging format on the Core WG call on Thursday.




From: EdgeX-GoLang@... [mailto:EdgeX-GoLang@...] On Behalf Of vinoyang
Sent: Friday, June 8, 2018 9:07 PM
To: EdgeX-GoLang@...
Subject: [Edgex-golang] [discuss] Add metrics for Edgex to enhance the system monitor


Copy from Github issue #263 :

Metrics and Log are two basic parts of a stable system. For enhancing the EdgeX's stability we should consider to monitor it in the future. The monitor would need to be provided metrics. So we should introduce the metrics infrastructure for it.

There are a few scenario where we could add metrics:

  • device data import count / rate;
  • support notification count / schedule count (trigger count)
  • export data count / rate;
  • ....

Although, metrics and log sometimes can match the same goal(provide information to calculate/aggregate/analysis). But they are different, here is a good article described the difference between them.

I find a popular go metrics package : go-metrics, which can write metrics into InfluxDB. And using this (we can also implement a logger to write log into InfluxDB), we could integrate the metrics with InfluxDB's full technology stack (monitor, dashboard, storage, computing).


drasko's comment : 

@yanghua good point here.


In Mainfllux we use metrics (and logs of course) for every service, something like this:, and those are then exported to Prometheus. We are using go-kit metrics because we are using go-kit in Mainfux, but go-metricslooks like a nice package and a good candidate for EdgeX.

Hope for more comment!


Join to automatically receive all group messages.