Duriin-API/public/admin/assets/js/stats.js

19 lines
1,017 B
JavaScript

// stats page — pipeline throughput + per-source/per-status breakdowns
// depends on: app.js
async function loadStatsPage() {
const data = await api("/admin/api/stats");
document.getElementById("sourceTable").innerHTML = data.bySource
.map(r => `<tr><td>${escapeHtml(r.source)}</td><td style="text-align:right; padding-left:24px">${r.n.toLocaleString()}</td></tr>`).join("");
document.getElementById("statusTable").innerHTML = data.byStatus
.map(r => `<tr><td>${badgeHtml(r.status === "null" ? null : r.status)}</td><td style="text-align:right; padding-left:24px">${r.n.toLocaleString()}</td></tr>`).join("");
document.getElementById("rate-ingested").textContent = (data.ingestedPerHour || 0).toLocaleString();
document.getElementById("rate-content").textContent = (data.contentPerHour || 0).toLocaleString();
document.getElementById("rate-embeddings").textContent = (data.embeddingsPerHour || 0).toLocaleString();
}
document.addEventListener("DOMContentLoaded", loadStatsPage);