Skip to main content
You monitor Token App. It is the process you run. Cantor8 monitors the Registry. You see Token App’s calls to it fail or slow down. Logs are JSON lines on stdout. Health, status, and metrics are HTTP on port 8002. Set monitoring.serviceMonitor.enabled to have the chart create a Prometheus Operator ServiceMonitor for /metrics. The scrape interval in the chart default is 15 seconds. The monitor reads holdings on a poll, default 300 seconds (monitoring.tokenMetricsPollIntervalSeconds). /status and the supply gauges update when a cycle succeeds. A stale success timestamp means those numbers have stopped moving, and so has every background job the monitor drives.

Resources

Keep the Token App memory request when the process must catch up on ledger history. Activity markers and the holdings scan are what consume it. Run one replica.
The pod listens on 8002. Startup allows a long first boot (the chart waits up to about five minutes) because the process migrates its database and opens the ledger stream before it is ready.

Token App signals

Alert on these. Names are the Prometheus metric names. Supply and flow, for dashboards rather than pages: /status reports the same supply figures plus top_holder_share, supply_concentration_hhi, and operational.monitor (last_success_at, age_seconds, last_scan_duration_seconds, poll_interval_seconds, cycles_total, cycle_errors_total). Prefer the timestamp metric for the page. Use /status when a person wants the snapshot.

Activity-marker signals

Enable these alerts when fa_markers is on. Generation and distribution are in Rewards. GET /data/fa_markers/v2/status is the same queues for a person: pending, resolved, batching, and the last batch. Use it to confirm an alert. Use the metrics to fire the alert.
A marker delay of one batch interval (default 10 minutes) is the design. An alert on lag or on failed batches is the fault. An alert on “no batch in the last interval” fires during quiet periods when there was no qualifying activity, so key that page off failures and lag, and use batch counters as a dashboard.

The Registry, from Token App

Your view of the Registry is token_app_token_factory_request_total and the latency histogram token_app_token_factory_request_latency_seconds. A rise in failures there, with your participant healthy, is a Registry or credential problem. A rise in token_app_ledger_request_total failures, with the Registry healthy, is your participant.

A healthy launch check

After Launch step 4:
  • /healthz is ok and the pod has been ready longer than one monitor interval
  • token_app_monitor_last_success_timestamp_seconds is within one interval of now
  • the treasury mint increased token_flow_supply_total and token_app_token_circulating_supply for that instrument
  • token_op_errors_total is flat
  • if markers are on, the cursor is advancing and token_app_fa_markers_batches_total shows no failed outcome from the test activity