getInfo(); $offline = isset($info['_offline']); $lines = []; $lines[] = '# HELP lthn_chain_height Current blockchain height'; $lines[] = '# TYPE lthn_chain_height gauge'; $lines[] = 'lthn_chain_height ' . ($info['height'] ?? 0); $lines[] = '# HELP lthn_alias_count Total registered aliases'; $lines[] = '# TYPE lthn_alias_count gauge'; $lines[] = 'lthn_alias_count ' . ($info['alias_count'] ?? 0); $lines[] = '# HELP lthn_tx_pool_size Pending transactions'; $lines[] = '# TYPE lthn_tx_pool_size gauge'; $lines[] = 'lthn_tx_pool_size ' . ($info['tx_pool_size'] ?? 0); $lines[] = '# HELP lthn_daemon_online Daemon reachability'; $lines[] = '# TYPE lthn_daemon_online gauge'; $lines[] = 'lthn_daemon_online ' . ($offline ? 0 : 1); $lines[] = '# HELP lthn_claims_pending Pending name claims'; $lines[] = '# TYPE lthn_claims_pending gauge'; $lines[] = 'lthn_claims_pending ' . NameClaim::pending()->count(); $lines[] = '# HELP lthn_claims_total Total name claims'; $lines[] = '# TYPE lthn_claims_total counter'; $lines[] = 'lthn_claims_total ' . NameClaim::count(); $lines[] = '# HELP lthn_dns_tickets_pending Pending DNS tickets'; $lines[] = '# TYPE lthn_dns_tickets_pending gauge'; $lines[] = 'lthn_dns_tickets_pending ' . DnsTicket::pending()->count(); $lines[] = '# HELP lthn_gateways_live Live paired gateways'; $lines[] = '# TYPE lthn_gateways_live gauge'; $lines[] = 'lthn_gateways_live ' . count($registry->liveGateways()); return response(implode("\n", $lines) . "\n", 200) ->header('Content-Type', 'text/plain; charset=utf-8'); } }