Merge pull request #57 from wagesj45/codex/add-live-updating-queue-stat
Add queue count stat to options page
This commit is contained in:
commit
0110f25152
3 changed files with 17 additions and 0 deletions
|
@ -388,6 +388,8 @@ async function clearCacheForMessages(idsInput) {
|
||||||
logger.aiLog("failed to clear cache for message", { level: 'error' }, e);
|
logger.aiLog("failed to clear cache for message", { level: 'error' }, e);
|
||||||
return { ok: false };
|
return { ok: false };
|
||||||
}
|
}
|
||||||
|
} else if (msg?.type === "sortana:getQueueCount") {
|
||||||
|
return { count: queuedCount + (processing ? 1 : 0) };
|
||||||
} else {
|
} else {
|
||||||
logger.aiLog("Unknown message type, ignoring", {level: 'warn'}, msg?.type);
|
logger.aiLog("Unknown message type, ignoring", {level: 'warn'}, msg?.type);
|
||||||
}
|
}
|
||||||
|
|
|
@ -179,6 +179,7 @@
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr><th>Rule count</th><td id="rule-count"></td></tr>
|
<tr><th>Rule count</th><td id="rule-count"></td></tr>
|
||||||
<tr><th>Cache entries</th><td id="cache-count"></td></tr>
|
<tr><th>Cache entries</th><td id="cache-count"></td></tr>
|
||||||
|
<tr><th>Queue items</th><td id="queue-count"></td></tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</table>
|
</table>
|
||||||
<button class="button is-danger" id="clear-cache" type="button">Clear Cache</button>
|
<button class="button is-danger" id="clear-cache" type="button">Clear Cache</button>
|
||||||
|
|
|
@ -304,8 +304,22 @@ document.addEventListener('DOMContentLoaded', async () => {
|
||||||
|
|
||||||
const ruleCountEl = document.getElementById('rule-count');
|
const ruleCountEl = document.getElementById('rule-count');
|
||||||
const cacheCountEl = document.getElementById('cache-count');
|
const cacheCountEl = document.getElementById('cache-count');
|
||||||
|
const queueCountEl = document.getElementById('queue-count');
|
||||||
ruleCountEl.textContent = (defaults.aiRules || []).length;
|
ruleCountEl.textContent = (defaults.aiRules || []).length;
|
||||||
cacheCountEl.textContent = defaults.aiCache ? Object.keys(defaults.aiCache).length : 0;
|
cacheCountEl.textContent = defaults.aiCache ? Object.keys(defaults.aiCache).length : 0;
|
||||||
|
|
||||||
|
async function refreshQueueCount() {
|
||||||
|
try {
|
||||||
|
const { count } = await browser.runtime.sendMessage({ type: 'sortana:getQueueCount' });
|
||||||
|
queueCountEl.textContent = count;
|
||||||
|
} catch (e) {
|
||||||
|
queueCountEl.textContent = '?';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
refreshQueueCount();
|
||||||
|
setInterval(refreshQueueCount, 2000);
|
||||||
|
|
||||||
document.getElementById('clear-cache').addEventListener('click', async () => {
|
document.getElementById('clear-cache').addEventListener('click', async () => {
|
||||||
await AiClassifier.clearCache();
|
await AiClassifier.clearCache();
|
||||||
cacheCountEl.textContent = '0';
|
cacheCountEl.textContent = '0';
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue