Introduce gauges to track values over time, like open connections, in-flight requests, etc.
We currently expose point-in-time information of the state of the driver, via Session.GetState(), like open connections and in-flight requests and the user has to manually export it to a reporter or sink, if needed. Maybe we could expose them as gauges, even though there is no built-in support for that (similar to ETW for Windows or LTTNG for Linux).
There are several metrics libraries that provide the notion Gauge but none of them are very popular. Also, without an equivalent of JMX, a library can help with reporting but it must be defined in the application explicitly.
In any case, AppMetrics looks promising for Gauges but its too recent (user base seems small). It's based on Metrics.NET, which is a port of Java Dropwizard Metrics library. AppMetrics supports .NET 4.5.2+ and .NET Standard 1.6+ (it doesn't support .NET Standard 1.5 which we support).
Edit: Attached a list of metrics available in java driver 4.x
Introduce gauges to track values over time, like open connections, in-flight requests, etc.
We currently expose point-in-time information of the state of the driver, via
Session.GetState()
, like open connections and in-flight requests and the user has to manually export it to a reporter or sink, if needed. Maybe we could expose them as gauges, even though there is no built-in support for that (similar to ETW for Windows or LTTNG for Linux).There are several metrics libraries that provide the notion Gauge but none of them are very popular. Also, without an equivalent of JMX, a library can help with reporting but it must be defined in the application explicitly.
In any case, AppMetrics looks promising for Gauges but its too recent (user base seems small). It's based on Metrics.NET, which is a port of Java Dropwizard Metrics library. AppMetrics supports .NET 4.5.2+ and .NET Standard 1.6+ (it doesn't support .NET Standard 1.5 which we support).
Edit: Attached a list of metrics available in java driver 4.x