{"adoption": {"forks": 341, "observed_at": "2026-08-28T04:05:38.319917+00:00", "stars": 1804}, "canonical_url": "https://ross.abutalabs.com/products/jvm-profiler", "card": {"archived": false, "artifact_type": "library", "description": "JVM Profiler Sending Metrics to Kafka, Console Output or Custom Reporter", "domain": ["performance", "developer-tools", "big-data"], "enriched": true, "function": ["monitoring", "tracing", "benchmarking"], "health_score": 70, "homepage": null, "language": "Java", "license": "NOASSERTION", "license_family": "other", "maturity": "maintenance", "member_repos": ["uber-common/jvm-profiler"], "name": "uber-common/jvm-profiler", "platform": ["jvm", "cross-platform"], "pushed_at": "2026-05-21T02:04:42+00:00", "repo": "uber-common/jvm-profiler", "stars": 1804, "tags": ["java-agent", "spark", "hadoop", "kafka-reporter", "jvm-metrics", "method-tracing"], "topics": ["java", "agent", "profiler", "performance"], "urls": [], "use_cases": ["profile CPU and memory metrics of Spark executors across a cluster", "trace HDFS name node call latency for Spark applications", "identify hot files read or written by Spark jobs", "attach a javaagent to any JVM process to collect metrics", "ship JVM metrics to Kafka for downstream analysis", "trace method durations and arguments without modifying user code"], "what_it_is": "A Java Agent library from Uber that collects CPU, memory, IO metrics and stacktraces from JVM processes in a distributed way, with reporters for Kafka, console, file, Redis, and InfluxDB. It also traces arbitrary Java methods and arguments without code changes, originally built for profiling Spark applications across many machines.", "when_to_avoid": ["you need a full interactive profiler UI with flame graphs", "you profile non-JVM languages or native code", "you need continuous sampling-style CPU profiling rather than interval metrics"], "when_to_choose": ["you need distributed metrics collection for dozens or hundreds of JVM processes in one application", "you want method-level tracing of JVM code with zero code changes", "you run Spark or Hadoop workloads and need to correlate metrics across executors"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/jvm-profiler", "repo": "uber-common/jvm-profiler", "role": "main", "score": 70}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:38.319917+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:21:50.542465+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "15404a3762da82ee8a3b0a4a78e23e17b3dd5af828f686eef682ea4dc81b99b7", "fetched_at": "2026-08-28T04:05:38.319917+00:00", "kind": "readme", "missing": false, "url": "https://github.com/uber-common/jvm-profiler"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 83, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3162, "days_push": 105, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 70, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}