Metrics.NET Update

Since March, i've been working on this Metrics.NET library.

I'm using it in a few production projects and i've become addicted to having everything measured and having the metrics information available when making decisions. Especialy when writing systems that are asyncronous where it's difficult to rely only on logging for understanding what is going one.

What it is

Metrics.NET library is a .NET Port, with lots of additional functionality, of the awesome Java metrics library by Coda Hale.

To paraphrase the Java library description - Metrics is a library which gives you unparalleled insight into what your code does in production. Metrics provides a powerful toolkit of ways to measure the behavior of critical components in your production environment.

The full description and documentation is available on the GitHub Wiki.

Plans for the future

For the near future, my focus will be on a solution for remote, persistent metrics. This includes the integration with Graphite/Ganglia/InfluxDb and maybe others. But for some odd reason none of this existing solutions runs on windows. Which is strange since they are all written in cross platform languages. We now run C# on unix, but we can't run go or python on windows.

And since I have to deal mostly with production running on windows I'm also considering storing metrics in the EventStore or even maybe in something like LMDB or Ayende's Voron. Or even postgres if it comes to that.

Any feedback, especialy on the public API of the library would be appreciated.

Comments