bunqueue-dashboard 1.0.5 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +8 -1
- package/agent/queue/validation.ts +6 -3
- package/dist/.vite/manifest.json +177 -82
- package/dist/assets/AddJob-jmrtBSrz.js +3 -0
- package/dist/assets/{Alerts-WcpDWdDf.js → Alerts-DrwYvhbk.js} +1 -1
- package/dist/assets/{Benchmark-i6UOuIR-.js → Benchmark-7ULYlqmK.js} +1 -1
- package/dist/assets/{BulkAddJobs-56_SkYFd.js → BulkAddJobs-C2sxF-St.js} +3 -3
- package/dist/assets/{Cron-BnqxADsg.js → Cron-BY9EGj2n.js} +1 -1
- package/dist/assets/{CronManager-4pAw6m87.js → CronManager-CZvC_uox.js} +1 -1
- package/dist/assets/Database-B1Dx5OV2.js +3 -0
- package/dist/assets/{Diagnostics-DJNus54z.js → Diagnostics-D1LEl6O4.js} +1 -1
- package/dist/assets/{Dlq-BaHXmn0r.js → Dlq-CPxeigKg.js} +1 -1
- package/dist/assets/{DlqControl-Bc48Yxxi.js → DlqControl-Dhcz7LY7.js} +1 -1
- package/dist/assets/DlqPro-CW80tQdN.js +1 -0
- package/dist/assets/FailureDiagnostics-DkLd6szC.js +1 -0
- package/dist/assets/{Fleet-NYO3foQN.js → Fleet-CsscadVQ.js} +1 -1
- package/dist/assets/Flows-Bzq3onQ3.js +2 -0
- package/dist/assets/GlobalSearch-CeCvA6Tm.js +1 -0
- package/dist/assets/{JobInspector-DEboXZKA.js → JobInspector-nTUU1VOU.js} +2 -2
- package/dist/assets/{Jobs-DRJLVzTB.js → Jobs-OwKndzhg.js} +1 -1
- package/dist/assets/{JobsPro-BtoJgs_P.js → JobsPro-CSHP2AYC.js} +1 -1
- package/dist/assets/{Logs-wZd30gMQ.js → Logs-CiYuY8ix.js} +1 -1
- package/dist/assets/{LogsPro-Bed1atn5.js → LogsPro-BA-wZ8Dr.js} +1 -1
- package/dist/assets/{McpServer-CGe9T6dL.js → McpServer-BvOGxNnE.js} +1 -1
- package/dist/assets/MetricHistory-Dmu-XqaO.js +1 -0
- package/dist/assets/{Metrics-vii1CWGY.js → Metrics-BF38GgYm.js} +1 -1
- package/dist/assets/{MetricsPro-Cbx-5-HO.js → MetricsPro-DHPmT4Md.js} +1 -1
- package/dist/assets/MonitoringSetup-60_ib3rf.js +3 -0
- package/dist/assets/{Overview-2qju4F93.js → Overview-DBLxV_vL.js} +1 -1
- package/dist/assets/{Pagination-ByDp7kNr.js → Pagination-CmVnmrFt.js} +1 -1
- package/dist/assets/{QueueActions-BhjKtapT.js → QueueActions-uNol2MD7.js} +1 -1
- package/dist/assets/QueueControl-DbQwvvtX.js +1 -0
- package/dist/assets/{QueueDetail-B-mcgloD.js → QueueDetail-CA33Kebs.js} +1 -1
- package/dist/assets/{QueueDetailPro-BKFwiQUg.js → QueueDetailPro-AUf6FktH.js} +1 -1
- package/dist/assets/{Queues-DCCwG__I.js → Queues-C_KeSyQs.js} +1 -1
- package/dist/assets/{QueuesOverview-BMIfVWtk.js → QueuesOverview-DQ6ta4wA.js} +1 -1
- package/dist/assets/{S3Backup-DpLn5T8m.js → S3Backup-BgPBXJVZ.js} +1 -1
- package/dist/assets/{S3BackupPro-BUHJBozP.js → S3BackupPro-BUzcmhnj.js} +3 -3
- package/dist/assets/{ServerControl-F5hvQwk3.js → ServerControl-WUZjdjPX.js} +1 -1
- package/dist/assets/{Settings-UBD8Zrj0.js → Settings-Dwh79r-B.js} +1 -1
- package/dist/assets/{Usage-D2D1i5nA.js → Usage-DeWofLpa.js} +1 -1
- package/dist/assets/{UsagePro-B8UDx-CC.js → UsagePro-BQJWWwW3.js} +1 -1
- package/dist/assets/{Webhooks-TnNw3Mml.js → Webhooks-DS3xmbEi.js} +1 -1
- package/dist/assets/{Workers-BAz4V_bk.js → Workers-DyAVvmbR.js} +1 -1
- package/dist/assets/{WorkersPro-Cbh-P8vR.js → WorkersPro-BJgab7of.js} +1 -1
- package/dist/assets/Workflows-BLXlNIxO.js +1 -0
- package/dist/assets/bqQueueOperationsRepository-BXoBdFQc.js +1 -0
- package/dist/assets/exportFile-B6puuPQx.js +2 -0
- package/dist/assets/index-D7iDxOBp.css +1 -0
- package/dist/assets/index-DwsYIYdu.js +8 -0
- package/dist/assets/{install-Ch82YzWH.js → install-DVeS3d31.js} +2 -2
- package/dist/assets/{package-V6gqAKfV.js → package-D11d0FBn.js} +1 -1
- package/dist/assets/targetClient-DvzvwnGp.js +1 -0
- package/dist/assets/useDiscovery-BbWXsy6R.js +1 -0
- package/dist/assets/{useThroughputSeries-BZ9Bb2PU.js → useThroughputSeries-DQo7JaT-.js} +1 -1
- package/dist/index.html +3 -2
- package/package.json +1 -1
- package/scripts/embedded.gen.ts +138 -124
- package/dist/assets/AddJob-g7DKWNZ0.js +0 -3
- package/dist/assets/Database-BDyQ8N-r.js +0 -3
- package/dist/assets/DlqPro-BaL9PRlj.js +0 -1
- package/dist/assets/Flows-RPGep40V.js +0 -2
- package/dist/assets/QueueControl-QMlFMQA6.js +0 -1
- package/dist/assets/Workflows-CBMzJbn0.js +0 -1
- package/dist/assets/exportFile-C7xhE8Yh.js +0 -2
- package/dist/assets/index-DR8flo6r.css +0 -1
- package/dist/assets/index-DcVSLtH4.js +0 -8
package/README.md
CHANGED
|
@@ -58,9 +58,10 @@ control agent. Its default agent address is `http://127.0.0.1:6800`.
|
|
|
58
58
|
| Area | Capabilities |
|
|
59
59
|
| --- | --- |
|
|
60
60
|
| Jobs | Submit single or bulk jobs, inspect data and results, change eligible jobs, and export the complete filtered inventory to CSV. |
|
|
61
|
+
| Discovery and failures | Search configured profiles by job metadata or correlation ID, save local views and compare observed error signatures. |
|
|
61
62
|
| Queues and schedules | Browse queue state, pause and resume processing, configure limits and groups, and manage cron or interval schedules. |
|
|
62
63
|
| Workflows and flows | Start and inspect durable executions, send signals, recover or compensate workflows, and explore dependency graphs. |
|
|
63
|
-
| Monitoring | Follow live events, inspect
|
|
64
|
+
| Monitoring | Follow live events, read retained native queue history, inspect workers and diagnostics, and export Prometheus scrape configuration and alert rules. |
|
|
64
65
|
| Fleet | Save multiple broker/agent profiles and inspect shared PostgreSQL topology while keeping each node's lifecycle controls separate. |
|
|
65
66
|
| Server control | Start, stop and restart a managed Bunqueue process, edit its launch settings, and read its logs. |
|
|
66
67
|
| Data and backups | Browse SQLite tables, run read-only SQL, export rows, and create or restore official S3 snapshots. |
|
|
@@ -69,6 +70,12 @@ control agent. Its default agent address is `http://127.0.0.1:6800`.
|
|
|
69
70
|
SQLite inspection and S3 snapshots apply to SQLite-backed servers. PostgreSQL
|
|
70
71
|
profiles use the queue and fleet controls.
|
|
71
72
|
|
|
73
|
+
Discovery reports scan limits and partial coverage. Metric history requires a
|
|
74
|
+
paired managed agent; retention belongs to Bunqueue. Native Webhooks delivers
|
|
75
|
+
job events, external Prometheus/Alertmanager evaluates exported alert rules,
|
|
76
|
+
and dashboard Alerts runs only while its browser tab is open. See
|
|
77
|
+
[native operations](https://egeominotti.github.io/bunqueue-dashboard/docs/guide/native-operations).
|
|
78
|
+
|
|
72
79
|
Job actions follow Bunqueue's safety contracts. Operations without atomic job
|
|
73
80
|
identity or flow-topology safeguards remain disabled, including DLQ retry,
|
|
74
81
|
completed-job requeue, cancel, drain and purge. See the
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { readLimitedJsonBody } from '../server/jsonBody';
|
|
2
2
|
|
|
3
3
|
const MAX_BODY_BYTES = 8 * 1024;
|
|
4
|
-
const
|
|
4
|
+
const MAX_METRIC_INDEX = 100_000;
|
|
5
5
|
const MAX_EVENT_RETENTION = 1_000_000;
|
|
6
6
|
|
|
7
7
|
export function exactQuery(url: string, allowed: readonly string[]): URLSearchParams {
|
|
@@ -65,10 +65,13 @@ export function positiveSafeInteger(value: unknown, label: string): number {
|
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
export function metricsRange(query: URLSearchParams): { start: number; end: number } {
|
|
68
|
-
const start = optionalInteger(query.get('start'), 'start', 0,
|
|
68
|
+
const start = optionalInteger(query.get('start'), 'start', 0, MAX_METRIC_INDEX, 0);
|
|
69
69
|
const rawEnd = query.get('end');
|
|
70
|
-
const end = rawEnd === null ? -1 : boundedInteger(rawEnd, 'end', -1,
|
|
70
|
+
const end = rawEnd === null ? -1 : boundedInteger(rawEnd, 'end', -1, MAX_METRIC_INDEX);
|
|
71
71
|
if (end !== -1 && end < start) throw new Error('Metrics end must be -1 or at least start');
|
|
72
|
+
if (end !== -1 && end - start >= 10_080) {
|
|
73
|
+
throw new Error('Metrics page must contain at most 10080 buckets');
|
|
74
|
+
}
|
|
72
75
|
return { start, end };
|
|
73
76
|
}
|
|
74
77
|
|