# AppMetrics/AppMetrics

App Metrics is an open-source and cross-platform .NET library used to record and report metrics within an application.

Repository: https://github.com/AppMetrics/AppMetrics
Canonical: https://ross.abutalabs.com/products/appmetrics
Homepage: https://app-metrics.io
Language: C#
License: Apache-2.0
License Family: permissive
Topics: metrics, dotnetcore, health-check, monitoring, performance, dotnet, instrumentation, application-insights, dotnet-core, dotnet-standard, dotnet-framework, grafana, grafana-dashboard, influxdb, graphite, prometheus
Last push: 2025-07-23T12:16:32+00:00

## Health v2 (maintenance only)
Score: 38/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 33, release rhythm 8, longevity 100
- inputs: {"age_days": 3573, "days_push": 406, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 2249, forks 291 (observed 2026-08-28T04:06:30.845938+00:00)

## What it is
App Metrics is an open-source, cross-platform .NET library for recording and reporting application metrics such as gauges, counters, meters, histograms, timers, and Apdex scores. It aggregates metrics in memory and flushes them to backends like InfluxDB, Graphite, or Prometheus, with Grafana dashboards for visualization.

## Use cases
- record request rates and response times in a .NET web app
- measure how long database queries take
- track counts of user logins over time
- export .NET application metrics to Prometheus or InfluxDB
- monitor free memory and other gauges in a service
- calculate Apdex scores for API performance
- build Grafana dashboards for .NET application health

## When to choose
- you have a .NET or .NET Core application needing in-process metrics instrumentation
- you want a single library abstracting multiple metrics backends like Prometheus, InfluxDB, and Graphite
- you need rich metric types including Apdex and reservoir sampling

## When to avoid
- your stack is not .NET-based
- you need distributed tracing or log aggregation rather than metrics
- you prefer a vendor-managed APM solution with zero instrumentation code

## Facets
- artifact type: library
- maturity: active
- function: monitoring, logging, middleware
- domain: monitoring, developer-tools, backend, apis
- platform: dotnet, cross-platform, cloud
- tags: metrics, apdex, grafana, prometheus, influxdb, graphite, health-checks, instrumentation, application-insights, docker

## Member repositories
- AppMetrics/AppMetrics (main) score 38

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:06:30.845938+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T02:43:53.437348+00:00, confidence not recorded.
  - readme: https://github.com/AppMetrics/AppMetrics (fetched 2026-08-28T04:06:30.845938+00:00, sha a40fadc89261)
- Data as of 2026-08-30T08:39:29.467469+00:00.
