An open-source, cross-platform .NET library for recording and reporting application metrics with support for multiple backends.
App Metrics is an open-source, cross-platform .NET library used to record and report metrics within applications. It abstracts away the underlying metric repositories, such as InfluxDB, Graphite, or Prometheus, by sampling and aggregating data in memory and flushing it at specified intervals. The library supports various metric types, including Gauges, Counters, Meters, Histograms, Timers, and Apdex scores, to measure application performance and behavior.
.NET developers and teams building applications that require robust performance monitoring and metric collection, especially those integrating with systems like Grafana for visualization.
Developers choose App Metrics for its flexibility in metric storage backends, cross-platform compatibility, and comprehensive metric type support, providing a unified solution for application observability without vendor lock-in.
App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Runs on both .NET Core and full .NET Framework, enabling deployment across Windows and non-Windows environments without code changes, as stated in the README.
Supports Gauges, Counters, Meters, Histograms, Timers, and Apdex scores, covering a wide range from system metrics to user experience, as highlighted in the features.
Abstracts storage to repositories like InfluxDB, Graphite, and Prometheus, allowing flexibility to switch backends without vendor lock-in, per the library's philosophy.
Includes Exponentially Forward Decaying, Sliding Window, and Algorithm R reservoirs for optimized memory usage and accurate aggregation, as detailed in the README.
Documentation is hosted in a separate GitHub repository (Docs.V2.Hugo), making it harder to find and maintain compared to integrated docs, which can slow onboarding.
Requires configuration for sampling intervals and backend integrations, involving additional steps versus simpler metric libraries or built-in cloud solutions.
Relies on external tools like Grafana for dashboards, necessitating extra setup and maintenance for teams wanting out-of-the-box insights.