Skip to content

feat(metrics): report process, atom and port counts in runtime metrics - #1213

Open
solnic wants to merge 1 commit into
feat/runtime-metrics-run-queuefrom
feat/runtime-metrics-system-limits
Open

solnic wants to merge 1 commit into
feat/runtime-metrics-run-queuefrom
feat/runtime-metrics-system-limits

Conversation

@solnic

@solnic solnic commented Sep 16, 2026

Copy link
Copy Markdown
Collaborator

Adds the VM's resource counters and how close they are to their hard limits, as gauges:

  • elixir.runtime.process.count / .limit / .utilization
  • elixir.runtime.atom.count / .limit / .utilization
  • elixir.runtime.port.count / .limit / .utilization

utilization is the ratio between the count and the limit. These are the three limits that take a node down hard when they are reached - hitting process_limit or port_limit means no more work can start, and the atom table is never garbage collected, so atom.utilization creeping up is a leak you want an alert on well before it becomes an outage.

Everything comes out of the [:vm, :system_counts] measurement map that telemetry_poller already emits.

Older telemetry_poller versions

The *_limit keys were only added to that event in telemetry_poller 1.3.0, and the SDK allows ~> 1.0 so that apps pinned to an older one still resolve. When the limits are absent, the .count gauges are still reported and .limit / .utilization are quietly skipped.


image

@solnic
solnic added this pull request to stack #1214 September 16, 2026 13:34
@solnic
solnic marked this pull request as draft September 16, 2026 13:37
@solnic
solnic force-pushed the feat/runtime-metrics-system-limits branch 2 times, most recently from ef9846f to e6f463b Compare September 16, 2026 14:05
@solnic
solnic force-pushed the feat/runtime-metrics-system-limits branch from e6f463b to 6f43e76 Compare September 17, 2026 09:50
@solnic
solnic force-pushed the feat/runtime-metrics-system-limits branch from 6f43e76 to 3a69aec Compare September 17, 2026 10:00
@solnic
solnic force-pushed the feat/runtime-metrics-system-limits branch 2 times, most recently from 5ca9339 to 16bbdbd Compare September 17, 2026 11:27
@solnic
solnic force-pushed the feat/runtime-metrics-system-limits branch 2 times, most recently from 7456663 to 1f9f7d8 Compare September 17, 2026 13:14
@solnic
solnic marked this pull request as ready for review September 17, 2026 13:15
@solnic
solnic force-pushed the feat/runtime-metrics-system-limits branch from 1f9f7d8 to be77a8c Compare September 18, 2026 07:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant