> ## Documentation Index
> Fetch the complete documentation index at: https://docs.alginte.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Monitor per node

> Live telemetry on the topology canvas: per-node throughput and state-store size, and the DEBUG metrics toggle that lights it up.

<Note>
  Requires Alginte 0.8.0 or newer.
</Note>

Because your streams run *inside* Alginte, the console can read their runtime
metrics directly — no agent, no scraping. The **Stream Flow** tab joins those
metrics back to the nodes you drew and renders them as live badges on the
canvas.

<Frame caption="Word count on the Stream Flow tab, DEBUG metrics on: throughput per node, store entries on the count, health as the frame color.">
  <img src="https://mintcdn.com/alginte/g-o_im4MIJi1zKwY/images/stream-node-metrics.png?fit=max&auto=format&n=g-o_im4MIJi1zKwY&q=85&s=6bca7f8b3c5ed210c53bec7697144ebf" alt="The Stream Flow tab with live telemetry badges on every node and the DEBUG metrics toggle enabled" width="569" height="841" data-path="images/stream-node-metrics.png" />
</Frame>

## What the badges show

Open a stream's detail page and switch to **Stream Flow**. Each node carries a
badge with the measurements Kafka actually records for it:

* **`N entries`** — the live size of a stateful node's store (aggregates,
  counts, reducers). Always on.
* **`N msg/s` / `N total`** — throughput. Exact on source nodes and on
  grouping nodes (records crossing the repartition boundary); values prefixed
  with `~` are attributed from the surrounding subtopology — exact for linear
  chains, an upper bound around branches.
* The canvas frame is colored by the stream's state — green running, red
  error — so a screenshot of the tab is a health check in itself.

Hover a badge to see the node's runtime name — the same name you'll find in
logs, JMX, and the internal topic names on your cluster.

## The DEBUG metrics toggle

Kafka Streams records throughput only at its `DEBUG` metrics level, which is
off by default because it has runtime cost. The **Live throughput (DEBUG
metrics)** switch above the canvas turns it on for *this stream only*:

1. Flip the switch — Alginte briefly recycles the stream's runtime client to
   apply the level. Offsets and state continue; processing resumes within
   seconds.
2. Throughput badges light up with real numbers as records flow.
3. Flip it back off when you're done watching — the store-size badges and
   state coloring keep working either way.

The toggle is an operational control, not part of the stream's definition: a
restart brings the stream back at its deployed metrics level.

## Where the numbers come from

Everything on the canvas is served by
`GET /api/kafka-streams/streams/{applicationId}/node-metrics` — the same
runtime metrics visible raw on the **Metrics** tab, grouped per canvas node.
Refresh follows the page's auto-refresh control, so the badges update on
whatever cadence you've set.
