Skip to content

Commit 5a52d71

Browse files
added dashboard inside json
1 parent 33484b3 commit 5a52d71

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

webroot/js/component/participantSummary.js

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,14 +91,19 @@ function loadSiteCallback(result) {
9191
if (siteElement) siteElement.innerHTML = formatted;
9292
}
9393

94-
function loadAPIKeysCallback(result) {
94+
function loadAPIKeysCallback(result, uidType, currentEnv) {
9595
const textToHighlight = '"disabled": true';
9696
let resultJson = JSON.parse(result);
9797
resultJson = resultJson.map((item) => {
9898
const created = new Date((item.created)*1000).toLocaleString(); // Convert Unix timestamp in seconds to milliseconds for Date constructor
99-
return { ...item, created };
99+
const apiCallsUrl = `https://${uidType}.grafana.net/d/I-_c3zx7k/api-calls?orgId=1&from=now-6h&to=now&timezone=browser&var-Env=${currentEnv}&var-Path=\\$__all&var-Host=\\$__all&var-Cluster=\\$__all&var-Method=\\$__all&var-Application=\\$__all&var-Contact=${item.contact}`;
100+
const dashboardLink = `<a href="${apiCallsUrl}" target="_blank">API Calls by Key</a>`;
101+
return { ...item, created, "Dashboard": dashboardLink };
100102
});
101-
const formatted = prettifyJson(JSON.stringify(resultJson));
103+
const resultJsonMinusDashboard = resultJson.map(({ Dashboard, ...rest }) => rest);
104+
const formatted = resultJson.map((r, index) => {
105+
return `<pre>${prettifyJson(JSON.stringify(resultJsonMinusDashboard[index])).trim().slice(0, -2)},\n "Dashboard": ${r.Dashboard}\n}</pre>`;
106+
}).join("\n");
102107
const highlightedText = formatted.replaceAll(textToHighlight, '<span style="background-color: orange;">' + textToHighlight + '</span>');
103108
const element = document.getElementById('participantKeysStandardOutput');
104109
if (element) element.innerHTML = highlightedText;
@@ -259,7 +264,7 @@ document.addEventListener('DOMContentLoaded', () => {
259264
doApiCallWithCallback('GET', url, loadSiteCallback, (err) => { participantSummaryErrorHandler(err, '#siteErrorOutput') });
260265

261266
url = `/api/client/list/${site.id}`;
262-
doApiCallWithCallback('GET', url, loadAPIKeysCallback, (err) => { participantSummaryErrorHandler(err, '#participantKeysErrorOutput') });
267+
doApiCallWithCallback('GET', url, (r) => { loadAPIKeysCallback(r, uidType, currentEnv) }, (err) => { participantSummaryErrorHandler(err, '#participantKeysErrorOutput') });
263268

264269
url = `/api/client_side_keypairs/list`;
265270
doApiCallWithCallback('GET', url, (r) => { loadKeyPairsCallback(r, site.id) }, (err) => { participantSummaryErrorHandler(err, '#keyPairsErrorOutput') });

0 commit comments

Comments
 (0)