@zintrust/core 0.1.49 → 0.1.50

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.
Files changed (341) hide show
  1. package/package.json +1 -9
  2. package/src/config/index.d.ts +1 -1
  3. package/src/config/index.d.ts.map +1 -1
  4. package/src/config/index.js +30 -10
  5. package/src/index.d.ts +0 -2
  6. package/src/index.d.ts.map +1 -1
  7. package/src/index.js +3 -5
  8. package/src/proxy/d1/ZintrustD1Proxy.d.ts +2 -2
  9. package/src/proxy/d1/ZintrustD1Proxy.d.ts.map +1 -1
  10. package/src/proxy/d1/ZintrustD1Proxy.js +39 -2
  11. package/src/proxy/kv/ZintrustKvProxy.d.ts +2 -2
  12. package/src/proxy/kv/ZintrustKvProxy.d.ts.map +1 -1
  13. package/src/proxy/kv/ZintrustKvProxy.js +38 -2
  14. package/src/security/JwtManager.js +1 -1
  15. package/src/zintrust.comon.d.ts +9 -0
  16. package/src/zintrust.comon.d.ts.map +1 -0
  17. package/src/zintrust.comon.js +15 -0
  18. package/src/zintrust.plugins.d.ts +9 -3
  19. package/src/zintrust.plugins.d.ts.map +1 -1
  20. package/src/zintrust.plugins.js +10 -3
  21. package/src/zintrust.plugins.wg.d.ts +1 -0
  22. package/src/zintrust.plugins.wg.d.ts.map +1 -1
  23. package/src/zintrust.plugins.wg.js +1 -0
  24. package/app/Controllers/AuthController.d.ts +0 -10
  25. package/app/Controllers/AuthController.d.ts.map +0 -1
  26. package/app/Controllers/AuthController.js +0 -223
  27. package/app/Controllers/UserController.d.ts +0 -9
  28. package/app/Controllers/UserController.d.ts.map +0 -1
  29. package/app/Controllers/UserController.js +0 -8
  30. package/app/Controllers/UserQueryBuilderController.d.ts +0 -16
  31. package/app/Controllers/UserQueryBuilderController.d.ts.map +0 -1
  32. package/app/Controllers/UserQueryBuilderController.js +0 -404
  33. package/app/Middleware/ProfilerMiddleware.d.ts +0 -12
  34. package/app/Middleware/ProfilerMiddleware.d.ts.map +0 -1
  35. package/app/Middleware/ProfilerMiddleware.js +0 -47
  36. package/app/Middleware/index.d.ts +0 -59
  37. package/app/Middleware/index.d.ts.map +0 -1
  38. package/app/Middleware/index.js +0 -215
  39. package/app/Models/Post.d.ts +0 -14
  40. package/app/Models/Post.d.ts.map +0 -1
  41. package/app/Models/Post.js +0 -27
  42. package/app/Models/User.d.ts +0 -14
  43. package/app/Models/User.d.ts.map +0 -1
  44. package/app/Models/User.js +0 -44
  45. package/app/Schedules/JobTracking.d.ts +0 -3
  46. package/app/Schedules/JobTracking.d.ts.map +0 -1
  47. package/app/Schedules/JobTracking.js +0 -13
  48. package/app/Schedules/index.d.ts +0 -2
  49. package/app/Schedules/index.d.ts.map +0 -1
  50. package/app/Schedules/index.js +0 -1
  51. package/app/Toolkit/Broadcast/sendBroadcast.d.ts +0 -6
  52. package/app/Toolkit/Broadcast/sendBroadcast.d.ts.map +0 -1
  53. package/app/Toolkit/Broadcast/sendBroadcast.js +0 -5
  54. package/app/Toolkit/Mail/sendWelcomeEmail.d.ts +0 -6
  55. package/app/Toolkit/Mail/sendWelcomeEmail.d.ts.map +0 -1
  56. package/app/Toolkit/Mail/sendWelcomeEmail.js +0 -20
  57. package/app/Toolkit/Notification/sendSlackNotification.d.ts +0 -8
  58. package/app/Toolkit/Notification/sendSlackNotification.d.ts.map +0 -1
  59. package/app/Toolkit/Notification/sendSlackNotification.js +0 -5
  60. package/app/Toolkit/Notification/sendSms.d.ts +0 -6
  61. package/app/Toolkit/Notification/sendSms.d.ts.map +0 -1
  62. package/app/Toolkit/Notification/sendSms.js +0 -5
  63. package/app/Types/controller.d.ts +0 -44
  64. package/app/Types/controller.d.ts.map +0 -1
  65. package/app/Types/controller.js +0 -1
  66. package/config/broadcast.d.ts +0 -38
  67. package/config/broadcast.d.ts.map +0 -1
  68. package/config/broadcast.js +0 -37
  69. package/config/cache.d.ts +0 -40
  70. package/config/cache.d.ts.map +0 -1
  71. package/config/cache.js +0 -39
  72. package/config/database.d.ts +0 -58
  73. package/config/database.d.ts.map +0 -1
  74. package/config/database.js +0 -65
  75. package/config/mail.d.ts +0 -51
  76. package/config/mail.d.ts.map +0 -1
  77. package/config/mail.js +0 -69
  78. package/config/middleware.d.ts +0 -11
  79. package/config/middleware.d.ts.map +0 -1
  80. package/config/middleware.js +0 -30
  81. package/config/notification.d.ts +0 -33
  82. package/config/notification.d.ts.map +0 -1
  83. package/config/notification.js +0 -33
  84. package/config/queue.d.ts +0 -55
  85. package/config/queue.d.ts.map +0 -1
  86. package/config/queue.js +0 -87
  87. package/config/storage.d.ts +0 -59
  88. package/config/storage.d.ts.map +0 -1
  89. package/config/storage.js +0 -59
  90. package/config/workers.d.ts +0 -54
  91. package/config/workers.d.ts.map +0 -1
  92. package/config/workers.js +0 -83
  93. package/packages/cloudflare-d1-proxy/src/index.d.ts +0 -48
  94. package/packages/cloudflare-d1-proxy/src/index.d.ts.map +0 -1
  95. package/packages/cloudflare-d1-proxy/src/index.js +0 -387
  96. package/packages/cloudflare-kv-proxy/src/index.d.ts +0 -44
  97. package/packages/cloudflare-kv-proxy/src/index.d.ts.map +0 -1
  98. package/packages/cloudflare-kv-proxy/src/index.js +0 -325
  99. package/packages/queue-monitor/src/QueueMonitoringService.d.ts +0 -35
  100. package/packages/queue-monitor/src/QueueMonitoringService.d.ts.map +0 -1
  101. package/packages/queue-monitor/src/QueueMonitoringService.js +0 -194
  102. package/packages/queue-monitor/src/connection.d.ts +0 -3
  103. package/packages/queue-monitor/src/connection.d.ts.map +0 -1
  104. package/packages/queue-monitor/src/connection.js +0 -1
  105. package/packages/queue-monitor/src/dashboard-ui.d.ts +0 -7
  106. package/packages/queue-monitor/src/dashboard-ui.d.ts.map +0 -1
  107. package/packages/queue-monitor/src/dashboard-ui.js +0 -997
  108. package/packages/queue-monitor/src/driver.d.ts +0 -15
  109. package/packages/queue-monitor/src/driver.d.ts.map +0 -1
  110. package/packages/queue-monitor/src/driver.js +0 -115
  111. package/packages/queue-monitor/src/index.d.ts +0 -71
  112. package/packages/queue-monitor/src/index.d.ts.map +0 -1
  113. package/packages/queue-monitor/src/index.js +0 -296
  114. package/packages/queue-monitor/src/metrics.d.ts +0 -27
  115. package/packages/queue-monitor/src/metrics.d.ts.map +0 -1
  116. package/packages/queue-monitor/src/metrics.js +0 -92
  117. package/packages/queue-monitor/src/worker.d.ts +0 -8
  118. package/packages/queue-monitor/src/worker.d.ts.map +0 -1
  119. package/packages/queue-monitor/src/worker.js +0 -35
  120. package/packages/queue-redis/src/BullMQRedisQueue.d.ts +0 -26
  121. package/packages/queue-redis/src/BullMQRedisQueue.d.ts.map +0 -1
  122. package/packages/queue-redis/src/BullMQRedisQueue.js +0 -463
  123. package/packages/queue-redis/src/HttpQueueDriver.d.ts +0 -18
  124. package/packages/queue-redis/src/HttpQueueDriver.d.ts.map +0 -1
  125. package/packages/queue-redis/src/HttpQueueDriver.js +0 -249
  126. package/packages/queue-redis/src/QueueHttpGateway.d.ts +0 -16
  127. package/packages/queue-redis/src/QueueHttpGateway.d.ts.map +0 -1
  128. package/packages/queue-redis/src/QueueHttpGateway.js +0 -217
  129. package/packages/queue-redis/src/RedisPublishClient.d.ts +0 -14
  130. package/packages/queue-redis/src/RedisPublishClient.d.ts.map +0 -1
  131. package/packages/queue-redis/src/RedisPublishClient.js +0 -251
  132. package/packages/queue-redis/src/index.d.ts +0 -12
  133. package/packages/queue-redis/src/index.d.ts.map +0 -1
  134. package/packages/queue-redis/src/index.js +0 -10
  135. package/packages/queue-redis/src/register.d.ts +0 -6
  136. package/packages/queue-redis/src/register.d.ts.map +0 -1
  137. package/packages/queue-redis/src/register.js +0 -21
  138. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts +0 -11
  139. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.d.ts.map +0 -1
  140. package/packages/workers/migrations/20260119100000_create_zintrust_workers_table.js +0 -32
  141. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts +0 -11
  142. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.d.ts.map +0 -1
  143. package/packages/workers/migrations/20260123180000_create_queue_jobs_table.js +0 -46
  144. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts +0 -7
  145. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.d.ts.map +0 -1
  146. package/packages/workers/migrations/20260213142000_create_zintrust_job_tracking_tables.js +0 -44
  147. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts +0 -7
  148. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.d.ts.map +0 -1
  149. package/packages/workers/migrations/20260213183000_expand_zintrust_job_tracking_reliability_tables.js +0 -104
  150. package/packages/workers/src/AnomalyDetection.d.ts +0 -107
  151. package/packages/workers/src/AnomalyDetection.d.ts.map +0 -1
  152. package/packages/workers/src/AnomalyDetection.js +0 -329
  153. package/packages/workers/src/AutoScaler.d.ts +0 -128
  154. package/packages/workers/src/AutoScaler.d.ts.map +0 -1
  155. package/packages/workers/src/AutoScaler.js +0 -425
  156. package/packages/workers/src/BroadcastWorker.d.ts +0 -24
  157. package/packages/workers/src/BroadcastWorker.d.ts.map +0 -1
  158. package/packages/workers/src/BroadcastWorker.js +0 -24
  159. package/packages/workers/src/CanaryController.d.ts +0 -104
  160. package/packages/workers/src/CanaryController.d.ts.map +0 -1
  161. package/packages/workers/src/CanaryController.js +0 -424
  162. package/packages/workers/src/ChaosEngineering.d.ts +0 -80
  163. package/packages/workers/src/ChaosEngineering.d.ts.map +0 -1
  164. package/packages/workers/src/ChaosEngineering.js +0 -229
  165. package/packages/workers/src/CircuitBreaker.d.ts +0 -107
  166. package/packages/workers/src/CircuitBreaker.d.ts.map +0 -1
  167. package/packages/workers/src/CircuitBreaker.js +0 -374
  168. package/packages/workers/src/ClusterLock.d.ts +0 -91
  169. package/packages/workers/src/ClusterLock.d.ts.map +0 -1
  170. package/packages/workers/src/ClusterLock.js +0 -397
  171. package/packages/workers/src/ComplianceManager.d.ts +0 -178
  172. package/packages/workers/src/ComplianceManager.d.ts.map +0 -1
  173. package/packages/workers/src/ComplianceManager.js +0 -556
  174. package/packages/workers/src/DatacenterOrchestrator.d.ts +0 -134
  175. package/packages/workers/src/DatacenterOrchestrator.d.ts.map +0 -1
  176. package/packages/workers/src/DatacenterOrchestrator.js +0 -404
  177. package/packages/workers/src/DeadLetterQueue.d.ts +0 -123
  178. package/packages/workers/src/DeadLetterQueue.d.ts.map +0 -1
  179. package/packages/workers/src/DeadLetterQueue.js +0 -544
  180. package/packages/workers/src/HealthMonitor.d.ts +0 -43
  181. package/packages/workers/src/HealthMonitor.d.ts.map +0 -1
  182. package/packages/workers/src/HealthMonitor.js +0 -312
  183. package/packages/workers/src/MultiQueueWorker.d.ts +0 -90
  184. package/packages/workers/src/MultiQueueWorker.d.ts.map +0 -1
  185. package/packages/workers/src/MultiQueueWorker.js +0 -282
  186. package/packages/workers/src/NotificationWorker.d.ts +0 -24
  187. package/packages/workers/src/NotificationWorker.d.ts.map +0 -1
  188. package/packages/workers/src/NotificationWorker.js +0 -23
  189. package/packages/workers/src/Observability.d.ts +0 -154
  190. package/packages/workers/src/Observability.d.ts.map +0 -1
  191. package/packages/workers/src/Observability.js +0 -538
  192. package/packages/workers/src/PluginManager.d.ts +0 -124
  193. package/packages/workers/src/PluginManager.d.ts.map +0 -1
  194. package/packages/workers/src/PluginManager.js +0 -392
  195. package/packages/workers/src/PriorityQueue.d.ts +0 -118
  196. package/packages/workers/src/PriorityQueue.d.ts.map +0 -1
  197. package/packages/workers/src/PriorityQueue.js +0 -276
  198. package/packages/workers/src/ResourceMonitor.d.ts +0 -165
  199. package/packages/workers/src/ResourceMonitor.d.ts.map +0 -1
  200. package/packages/workers/src/ResourceMonitor.js +0 -632
  201. package/packages/workers/src/SLAMonitor.d.ts +0 -111
  202. package/packages/workers/src/SLAMonitor.d.ts.map +0 -1
  203. package/packages/workers/src/SLAMonitor.js +0 -274
  204. package/packages/workers/src/WorkerFactory.d.ts +0 -218
  205. package/packages/workers/src/WorkerFactory.d.ts.map +0 -1
  206. package/packages/workers/src/WorkerFactory.js +0 -2253
  207. package/packages/workers/src/WorkerInit.d.ts +0 -86
  208. package/packages/workers/src/WorkerInit.d.ts.map +0 -1
  209. package/packages/workers/src/WorkerInit.js +0 -307
  210. package/packages/workers/src/WorkerMetrics.d.ts +0 -116
  211. package/packages/workers/src/WorkerMetrics.d.ts.map +0 -1
  212. package/packages/workers/src/WorkerMetrics.js +0 -570
  213. package/packages/workers/src/WorkerRegistry.d.ts +0 -152
  214. package/packages/workers/src/WorkerRegistry.d.ts.map +0 -1
  215. package/packages/workers/src/WorkerRegistry.js +0 -396
  216. package/packages/workers/src/WorkerShutdown.d.ts +0 -70
  217. package/packages/workers/src/WorkerShutdown.d.ts.map +0 -1
  218. package/packages/workers/src/WorkerShutdown.js +0 -185
  219. package/packages/workers/src/WorkerVersioning.d.ts +0 -108
  220. package/packages/workers/src/WorkerVersioning.d.ts.map +0 -1
  221. package/packages/workers/src/WorkerVersioning.js +0 -300
  222. package/packages/workers/src/config/workerConfig.d.ts +0 -5
  223. package/packages/workers/src/config/workerConfig.d.ts.map +0 -1
  224. package/packages/workers/src/config/workerConfig.js +0 -25
  225. package/packages/workers/src/createQueueWorker.d.ts +0 -26
  226. package/packages/workers/src/createQueueWorker.d.ts.map +0 -1
  227. package/packages/workers/src/createQueueWorker.js +0 -367
  228. package/packages/workers/src/dashboard/index.d.ts +0 -2
  229. package/packages/workers/src/dashboard/index.d.ts.map +0 -1
  230. package/packages/workers/src/dashboard/index.js +0 -1
  231. package/packages/workers/src/dashboard/types.d.ts +0 -123
  232. package/packages/workers/src/dashboard/types.d.ts.map +0 -1
  233. package/packages/workers/src/dashboard/types.js +0 -1
  234. package/packages/workers/src/dashboard/workers-api.d.ts +0 -5
  235. package/packages/workers/src/dashboard/workers-api.d.ts.map +0 -1
  236. package/packages/workers/src/dashboard/workers-api.js +0 -738
  237. package/packages/workers/src/helper/index.d.ts +0 -6
  238. package/packages/workers/src/helper/index.d.ts.map +0 -1
  239. package/packages/workers/src/helper/index.js +0 -10
  240. package/packages/workers/src/http/WorkerApiController.d.ts +0 -39
  241. package/packages/workers/src/http/WorkerApiController.d.ts.map +0 -1
  242. package/packages/workers/src/http/WorkerApiController.js +0 -313
  243. package/packages/workers/src/http/WorkerController.d.ts +0 -375
  244. package/packages/workers/src/http/WorkerController.d.ts.map +0 -1
  245. package/packages/workers/src/http/WorkerController.js +0 -1454
  246. package/packages/workers/src/http/WorkerMonitoringService.d.ts +0 -12
  247. package/packages/workers/src/http/WorkerMonitoringService.d.ts.map +0 -1
  248. package/packages/workers/src/http/WorkerMonitoringService.js +0 -89
  249. package/packages/workers/src/http/middleware/CustomValidation.d.ts +0 -93
  250. package/packages/workers/src/http/middleware/CustomValidation.d.ts.map +0 -1
  251. package/packages/workers/src/http/middleware/CustomValidation.js +0 -270
  252. package/packages/workers/src/http/middleware/DatacenterValidator.d.ts +0 -4
  253. package/packages/workers/src/http/middleware/DatacenterValidator.d.ts.map +0 -1
  254. package/packages/workers/src/http/middleware/DatacenterValidator.js +0 -94
  255. package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts +0 -8
  256. package/packages/workers/src/http/middleware/EditWorkerValidation.d.ts.map +0 -1
  257. package/packages/workers/src/http/middleware/EditWorkerValidation.js +0 -56
  258. package/packages/workers/src/http/middleware/FeaturesValidator.d.ts +0 -4
  259. package/packages/workers/src/http/middleware/FeaturesValidator.d.ts.map +0 -1
  260. package/packages/workers/src/http/middleware/FeaturesValidator.js +0 -61
  261. package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts +0 -32
  262. package/packages/workers/src/http/middleware/InfrastructureValidator.d.ts.map +0 -1
  263. package/packages/workers/src/http/middleware/InfrastructureValidator.js +0 -226
  264. package/packages/workers/src/http/middleware/OptionsValidator.d.ts +0 -4
  265. package/packages/workers/src/http/middleware/OptionsValidator.d.ts.map +0 -1
  266. package/packages/workers/src/http/middleware/OptionsValidator.js +0 -112
  267. package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts +0 -8
  268. package/packages/workers/src/http/middleware/PayloadSanitizer.d.ts.map +0 -1
  269. package/packages/workers/src/http/middleware/PayloadSanitizer.js +0 -42
  270. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts +0 -4
  271. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.d.ts.map +0 -1
  272. package/packages/workers/src/http/middleware/ProcessorPathSanitizer.js +0 -140
  273. package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts +0 -4
  274. package/packages/workers/src/http/middleware/QueueNameSanitizer.d.ts.map +0 -1
  275. package/packages/workers/src/http/middleware/QueueNameSanitizer.js +0 -45
  276. package/packages/workers/src/http/middleware/ValidateDriver.d.ts +0 -8
  277. package/packages/workers/src/http/middleware/ValidateDriver.d.ts.map +0 -1
  278. package/packages/workers/src/http/middleware/ValidateDriver.js +0 -20
  279. package/packages/workers/src/http/middleware/VersionSanitizer.d.ts +0 -4
  280. package/packages/workers/src/http/middleware/VersionSanitizer.d.ts.map +0 -1
  281. package/packages/workers/src/http/middleware/VersionSanitizer.js +0 -25
  282. package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts +0 -4
  283. package/packages/workers/src/http/middleware/WorkerNameSanitizer.d.ts.map +0 -1
  284. package/packages/workers/src/http/middleware/WorkerNameSanitizer.js +0 -46
  285. package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts +0 -28
  286. package/packages/workers/src/http/middleware/WorkerValidationChain.d.ts.map +0 -1
  287. package/packages/workers/src/http/middleware/WorkerValidationChain.js +0 -186
  288. package/packages/workers/src/index.d.ts +0 -47
  289. package/packages/workers/src/index.d.ts.map +0 -1
  290. package/packages/workers/src/index.js +0 -48
  291. package/packages/workers/src/routes/workers.d.ts +0 -13
  292. package/packages/workers/src/routes/workers.d.ts.map +0 -1
  293. package/packages/workers/src/routes/workers.js +0 -126
  294. package/packages/workers/src/storage/WorkerStore.d.ts +0 -52
  295. package/packages/workers/src/storage/WorkerStore.d.ts.map +0 -1
  296. package/packages/workers/src/storage/WorkerStore.js +0 -259
  297. package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts +0 -47
  298. package/packages/workers/src/telemetry/api/TelemetryAPI.d.ts.map +0 -1
  299. package/packages/workers/src/telemetry/api/TelemetryAPI.js +0 -219
  300. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts +0 -18
  301. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.d.ts.map +0 -1
  302. package/packages/workers/src/telemetry/api/TelemetryMonitoringService.js +0 -140
  303. package/packages/workers/src/telemetry/components/AlertPanel.d.ts +0 -2
  304. package/packages/workers/src/telemetry/components/AlertPanel.d.ts.map +0 -1
  305. package/packages/workers/src/telemetry/components/AlertPanel.js +0 -13
  306. package/packages/workers/src/telemetry/components/CostTracking.d.ts +0 -2
  307. package/packages/workers/src/telemetry/components/CostTracking.d.ts.map +0 -1
  308. package/packages/workers/src/telemetry/components/CostTracking.js +0 -14
  309. package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts +0 -2
  310. package/packages/workers/src/telemetry/components/ResourceUsageChart.d.ts.map +0 -1
  311. package/packages/workers/src/telemetry/components/ResourceUsageChart.js +0 -11
  312. package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts +0 -2
  313. package/packages/workers/src/telemetry/components/WorkerHealthChart.d.ts.map +0 -1
  314. package/packages/workers/src/telemetry/components/WorkerHealthChart.js +0 -11
  315. package/packages/workers/src/telemetry/index.d.ts +0 -16
  316. package/packages/workers/src/telemetry/index.d.ts.map +0 -1
  317. package/packages/workers/src/telemetry/index.js +0 -60
  318. package/packages/workers/src/telemetry/routes/dashboard.d.ts +0 -7
  319. package/packages/workers/src/telemetry/routes/dashboard.d.ts.map +0 -1
  320. package/packages/workers/src/telemetry/routes/dashboard.js +0 -608
  321. package/packages/workers/src/type.d.ts +0 -77
  322. package/packages/workers/src/type.d.ts.map +0 -1
  323. package/packages/workers/src/type.js +0 -1
  324. package/packages/workers/src/ui/router/EmbeddedAssets.d.ts +0 -5
  325. package/packages/workers/src/ui/router/EmbeddedAssets.d.ts.map +0 -1
  326. package/packages/workers/src/ui/router/EmbeddedAssets.js +0 -13
  327. package/packages/workers/src/ui/router/ui.d.ts +0 -4
  328. package/packages/workers/src/ui/router/ui.d.ts.map +0 -1
  329. package/packages/workers/src/ui/router/ui.js +0 -208
  330. package/packages/workers/src/ui/types/worker-ui.d.ts +0 -230
  331. package/packages/workers/src/ui/types/worker-ui.d.ts.map +0 -1
  332. package/packages/workers/src/ui/types/worker-ui.js +0 -5
  333. package/routes/api.d.ts +0 -7
  334. package/routes/api.d.ts.map +0 -1
  335. package/routes/api.js +0 -136
  336. package/routes/broadcast.d.ts +0 -9
  337. package/routes/broadcast.d.ts.map +0 -1
  338. package/routes/broadcast.js +0 -27
  339. package/routes/storage.d.ts +0 -4
  340. package/routes/storage.d.ts.map +0 -1
  341. package/routes/storage.js +0 -35
@@ -1,52 +0,0 @@
1
- /**
2
- * Worker Store
3
- * Persistence layer for workers (memory, redis, db)
4
- */
5
- import type { createRedisConnection } from '../../../../src/index.js';
6
- import { type IDatabase } from '../../../../src/index.js';
7
- type RedisConnection = ReturnType<typeof createRedisConnection>;
8
- export type WorkerRecord = {
9
- name: string;
10
- queueName: string;
11
- version: string | null;
12
- status: string;
13
- autoStart: boolean;
14
- concurrency: number;
15
- region: string | null;
16
- processorSpec?: string | null;
17
- activeStatus?: boolean;
18
- features?: Record<string, unknown> | null;
19
- infrastructure?: Record<string, unknown> | null;
20
- datacenter?: Record<string, unknown> | null;
21
- createdAt: Date;
22
- updatedAt: Date;
23
- lastHealthCheck?: Date;
24
- lastError?: string;
25
- connectionState?: 'disconnected' | 'connecting' | 'connected' | 'error';
26
- };
27
- export type WorkerStore = {
28
- init(): Promise<void>;
29
- list(options?: {
30
- offset?: number;
31
- limit?: number;
32
- search?: string;
33
- includeInactive?: boolean;
34
- }): Promise<WorkerRecord[]>;
35
- get(name: string): Promise<WorkerRecord | null>;
36
- save(record: WorkerRecord): Promise<void>;
37
- update(name: string, patch: Partial<WorkerRecord>): Promise<void>;
38
- updateMany?: (names: string[], patch: Partial<WorkerRecord>) => Promise<void>;
39
- remove(name: string): Promise<void>;
40
- close?(): Promise<void>;
41
- };
42
- export declare const InMemoryWorkerStore: Readonly<{
43
- create(): WorkerStore;
44
- }>;
45
- export declare const RedisWorkerStore: Readonly<{
46
- create(client: RedisConnection, keyPrefix?: string): WorkerStore;
47
- }>;
48
- export declare const DbWorkerStore: Readonly<{
49
- create(db: IDatabase, table?: string): WorkerStore;
50
- }>;
51
- export {};
52
- //# sourceMappingURL=WorkerStore.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"WorkerStore.d.ts","sourceRoot":"","sources":["../../../../../packages/workers/src/storage/WorkerStore.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,KAAK,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEhE,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC1C,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5C,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,eAAe,CAAC,EAAE,IAAI,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,cAAc,GAAG,YAAY,GAAG,WAAW,GAAG,OAAO,CAAC;CACzE,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG;IACxB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,IAAI,CAAC,OAAO,CAAC,EAAE;QACb,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,eAAe,CAAC,EAAE,OAAO,CAAC;KAC3B,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC5B,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,UAAU,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpC,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB,CAAC;AAgFF,eAAO,MAAM,mBAAmB;cACpB,WAAW;EA0CrB,CAAC;AAEH,eAAO,MAAM,gBAAgB;mBACZ,eAAe,uBAAmC,WAAW;EA2E5E,CAAC;AAEH,eAAO,MAAM,aAAa;eACb,SAAS,mBAA+B,WAAW;EA2D9D,CAAC"}
@@ -1,259 +0,0 @@
1
- /**
2
- * Worker Store
3
- * Persistence layer for workers (memory, redis, db)
4
- */
5
- const now = () => new Date();
6
- const mergeRecord = (current, patch) => ({
7
- ...current,
8
- ...patch,
9
- updatedAt: patch.updatedAt ?? now(),
10
- });
11
- const toSqlDateTime = (value) => {
12
- if (!value)
13
- return null;
14
- // Use UTC and drop timezone for SQL DATETIME compatibility
15
- return value.toISOString().slice(0, 19).replace('T', ' ');
16
- };
17
- const serializeDbWorker = (record) => ({
18
- name: record.name,
19
- queue_name: record.queueName,
20
- version: record.version,
21
- status: record.status,
22
- auto_start: record.autoStart,
23
- concurrency: record.concurrency,
24
- region: record.region,
25
- processor_spec: record.processorSpec ?? null,
26
- active_status: record.activeStatus ?? true,
27
- features: record.features ? JSON.stringify(record.features) : null,
28
- infrastructure: record.infrastructure ? JSON.stringify(record.infrastructure) : null,
29
- datacenter: record.datacenter ? JSON.stringify(record.datacenter) : null,
30
- created_at: toSqlDateTime(record.createdAt),
31
- updated_at: toSqlDateTime(record.updatedAt),
32
- last_health_check: toSqlDateTime(record.lastHealthCheck ?? null),
33
- last_error: record.lastError ?? null,
34
- connection_state: record.connectionState ?? null,
35
- });
36
- const getHealthCheck = (row) => {
37
- if (!row['last_health_check']) {
38
- return undefined;
39
- }
40
- return row['last_health_check'] instanceof Date
41
- ? row['last_health_check']
42
- : new Date(String(row['last_health_check']));
43
- };
44
- const deserializeDbWorker = (row) => {
45
- const parseJson = (value) => {
46
- if (typeof value !== 'string' || value.trim() === '')
47
- return null;
48
- try {
49
- return JSON.parse(value);
50
- }
51
- catch {
52
- return null;
53
- }
54
- };
55
- return {
56
- name: String(row['name'] ?? ''),
57
- queueName: String(row['queue_name'] ?? ''),
58
- version: row['version'] ? String(row['version']) : null,
59
- status: String(row['status'] ?? 'unknown'),
60
- autoStart: Boolean(row['auto_start'] ?? false),
61
- concurrency: Number(row['concurrency'] ?? 0),
62
- region: row['region'] ? String(row['region']) : null,
63
- processorSpec: String(row['processor_spec']),
64
- activeStatus: row['active_status'] === undefined ? true : Boolean(row['active_status']),
65
- features: parseJson(row['features']),
66
- infrastructure: parseJson(row['infrastructure']),
67
- datacenter: parseJson(row['datacenter']),
68
- createdAt: row['created_at'] instanceof Date ? row['created_at'] : new Date(String(row['created_at'])),
69
- updatedAt: row['updated_at'] instanceof Date ? row['updated_at'] : new Date(String(row['updated_at'])),
70
- lastHealthCheck: getHealthCheck(row),
71
- lastError: row['last_error'] ? String(row['last_error']) : undefined,
72
- connectionState: row['connection_state']
73
- ? String(row['connection_state'])
74
- : undefined,
75
- };
76
- };
77
- export const InMemoryWorkerStore = Object.freeze({
78
- create() {
79
- const store = new Map();
80
- return {
81
- async init() {
82
- return undefined;
83
- },
84
- async list(options) {
85
- let values = Array.from(store.values());
86
- if (options) {
87
- const start = options.offset || 0;
88
- const end = options.limit ? start + options.limit : undefined;
89
- values = values.slice(start, end);
90
- }
91
- return values;
92
- },
93
- async get(name) {
94
- return store.get(name) ?? null;
95
- },
96
- async save(record) {
97
- store.set(record.name, record);
98
- },
99
- async update(name, patch) {
100
- const current = store.get(name);
101
- if (!current)
102
- return;
103
- store.set(name, mergeRecord(current, patch));
104
- },
105
- async updateMany(names, patch) {
106
- for (const name of names) {
107
- const current = store.get(name);
108
- if (!current)
109
- continue;
110
- store.set(name, mergeRecord(current, patch));
111
- }
112
- },
113
- async remove(name) {
114
- store.delete(name);
115
- },
116
- async close() {
117
- // No-op for memory store
118
- },
119
- };
120
- },
121
- });
122
- export const RedisWorkerStore = Object.freeze({
123
- create(client, keyPrefix = 'workers:registry') {
124
- const key = keyPrefix;
125
- const serialize = (record) => JSON.stringify({
126
- ...record,
127
- createdAt: record.createdAt.toISOString(),
128
- updatedAt: record.updatedAt.toISOString(),
129
- });
130
- const deserialize = (raw) => {
131
- const parsed = JSON.parse(raw);
132
- return {
133
- ...parsed,
134
- createdAt: new Date(parsed.createdAt),
135
- updatedAt: new Date(parsed.updatedAt),
136
- };
137
- };
138
- return {
139
- async init() {
140
- return undefined;
141
- },
142
- async list(options) {
143
- const all = await client.hgetall(key);
144
- let values = Object.values(all).map((element) => deserialize(element));
145
- values.sort((a, b) => a.name.localeCompare(b.name));
146
- if (options) {
147
- const start = options.offset || 0;
148
- const end = options.limit ? start + options.limit : undefined;
149
- values = values.slice(start, end);
150
- }
151
- return values;
152
- },
153
- async get(name) {
154
- const raw = await client.hget(key, name);
155
- return raw ? deserialize(raw) : null;
156
- },
157
- async save(record) {
158
- await client.hset(key, record.name, serialize(record));
159
- },
160
- async update(name, patch) {
161
- const current = await this.get(name);
162
- if (!current)
163
- return;
164
- await client.hset(key, name, serialize(mergeRecord(current, patch)));
165
- },
166
- async updateMany(names, patch) {
167
- if (names.length === 0)
168
- return;
169
- const entries = await client.hmget(key, ...names);
170
- const updates = [];
171
- entries.forEach((raw, index) => {
172
- if (!raw)
173
- return;
174
- const current = deserialize(raw);
175
- const updated = mergeRecord(current, patch);
176
- updates.push(names[index], serialize(updated));
177
- });
178
- if (updates.length === 0)
179
- return;
180
- await client.hset(key, ...updates);
181
- },
182
- async close() {
183
- try {
184
- // Force disconnect in Cloudflare env to avoid hanging on quit()
185
- client.disconnect();
186
- }
187
- catch {
188
- // Ignore connection errors during cleanup
189
- }
190
- },
191
- async remove(name) {
192
- await client.hdel(key, name);
193
- },
194
- };
195
- },
196
- });
197
- export const DbWorkerStore = Object.freeze({
198
- create(db, table = 'zintrust_workers') {
199
- return {
200
- async init() {
201
- return undefined;
202
- },
203
- async list(options) {
204
- const query = db.table(table);
205
- if (options?.limit)
206
- query.limit(options.limit);
207
- if (options?.offset)
208
- query.offset(options.offset);
209
- const rows = await query.get();
210
- return rows.map((element) => deserializeDbWorker(element));
211
- },
212
- async get(name) {
213
- const row = await db.table(table).where('name', '=', name).first();
214
- return row ? deserializeDbWorker(row) : null;
215
- },
216
- async save(record) {
217
- const existing = await db
218
- .table(table)
219
- .where('name', '=', record.name)
220
- .first();
221
- if (existing) {
222
- await db.table(table).where('name', '=', record.name).update(serializeDbWorker(record));
223
- return;
224
- }
225
- await db.table(table).insert(serializeDbWorker(record));
226
- },
227
- async update(name, patch) {
228
- const current = await this.get(name);
229
- if (!current)
230
- return;
231
- const updated = mergeRecord(current, patch);
232
- await db.table(table).where('name', '=', name).update(serializeDbWorker(updated));
233
- },
234
- async updateMany(names, patch) {
235
- if (names.length === 0)
236
- return;
237
- const update = {
238
- updated_at: toSqlDateTime(patch.updatedAt ?? now()),
239
- };
240
- if (patch.status !== undefined)
241
- update['status'] = patch.status;
242
- if (patch.lastError !== undefined)
243
- update['last_error'] = patch.lastError ?? null;
244
- if (patch.lastHealthCheck !== undefined)
245
- update['last_health_check'] = toSqlDateTime(patch.lastHealthCheck ?? null);
246
- if (patch.connectionState !== undefined)
247
- update['connection_state'] = patch.connectionState ?? null;
248
- await db.table(table).whereIn('name', names).update(update);
249
- },
250
- async remove(name) {
251
- await db.table(table).where('name', '=', name).delete();
252
- },
253
- async close() {
254
- // Database clients often managed by pool, but if needed:
255
- // await db.destroy?.();
256
- },
257
- };
258
- },
259
- });
@@ -1,47 +0,0 @@
1
- export type TelemetrySettings = {
2
- enabled: boolean;
3
- basePath: string;
4
- middleware: ReadonlyArray<string>;
5
- autoRefresh: boolean;
6
- refreshIntervalMs: number;
7
- };
8
- export type ResourceCurrentResponse = {
9
- ok: boolean;
10
- usage?: unknown;
11
- };
12
- export type SystemSummaryResponse = {
13
- ok: boolean;
14
- summary?: unknown;
15
- };
16
- export type ApiResponse<T> = {
17
- ok: boolean;
18
- error?: string;
19
- } & T;
20
- export type AlertRep = {
21
- type: string;
22
- severity: string;
23
- message: string;
24
- timestamp: string;
25
- recommendation?: string;
26
- };
27
- export declare const TelemetryAPI: Readonly<{
28
- getSystemSummary(): Promise<ApiResponse<{
29
- summary: unknown;
30
- }>>;
31
- getMonitoringSummary(): Promise<ApiResponse<{
32
- summary: unknown;
33
- }>>;
34
- getResourceCurrent(): Promise<ApiResponse<{
35
- usage: unknown;
36
- }>>;
37
- getResourceTrends(): Promise<ApiResponse<{
38
- trends: unknown;
39
- }>>;
40
- }>;
41
- export declare function createSnapshotBuilder(): () => Promise<{
42
- ok: boolean;
43
- summary: unknown;
44
- resources: unknown;
45
- cost: unknown;
46
- }>;
47
- //# sourceMappingURL=TelemetryAPI.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TelemetryAPI.d.ts","sourceRoot":"","sources":["../../../../../../packages/workers/src/telemetry/api/TelemetryAPI.ts"],"names":[],"mappings":"AAOA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AACvE,MAAM,MAAM,qBAAqB,GAAG;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAQvE,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,CAAC,CAAC;AACjE,MAAM,MAAM,QAAQ,GAAG;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,CAAC;AA+IF,eAAO,MAAM,YAAY;wBACG,OAAO,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;4BAuCtC,OAAO,CAAC,WAAW,CAAC;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;0BAc5C,OAAO,CAAC,WAAW,CAAC;QAAE,KAAK,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;yBAczC,OAAO,CAAC,WAAW,CAAC;QAAE,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;EAapE,CAAC;AAEH,wBAAgB,qBAAqB,UAClB,OAAO,CAAC;IACvB,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC,CA4BH"}
@@ -1,219 +0,0 @@
1
- import { Logger } from '../../../../../src/index.js';
2
- import { getWorkers } from '../../dashboard/workers-api.js';
3
- import { HealthMonitor } from '../../HealthMonitor.js';
4
- import { ResourceMonitor } from '../../ResourceMonitor.js';
5
- const isOkWithUsage = (value) => value.ok === true && 'usage' in value;
6
- const isOkWithSummary = (value) => value.ok === true && 'summary' in value;
7
- // Helper function to create stopped worker alert
8
- const createStoppedWorkerAlert = (worker) => ({
9
- type: 'worker-stopped',
10
- severity: 'warning',
11
- message: `Worker ${worker.name} is stopped`,
12
- timestamp: worker.health?.lastCheck || new Date().toISOString(),
13
- });
14
- // Helper function to create health check alert
15
- const createHealthCheckAlert = (worker) => {
16
- const check = worker.health?.checks?.[0];
17
- if (!check)
18
- return null;
19
- return {
20
- type: 'health-check-failed',
21
- severity: check.status === 'fail' ? 'critical' : 'warning',
22
- message: check.message || `Health check failed: ${check.name}`,
23
- timestamp: worker.health?.lastCheck || new Date().toISOString(),
24
- };
25
- };
26
- // Helper function to generate worker alerts
27
- const generateWorkerAlerts = (workers) => {
28
- return workers
29
- .filter((w) => {
30
- return (w.status !== 'running' ||
31
- w.health?.status !== 'healthy' ||
32
- (w.health?.checks && w.health.checks.length > 0));
33
- })
34
- .map((w) => {
35
- const workerData = {
36
- workerName: w.name,
37
- status: w.status,
38
- healthStatus: w.health?.status || 'unknown',
39
- lastCheck: w.health?.lastCheck || new Date().toISOString(),
40
- checks: w.health?.checks || [],
41
- };
42
- let alert = null;
43
- if (w.status === 'stopped') {
44
- alert = createStoppedWorkerAlert(w);
45
- }
46
- else if (w.health?.checks && w.health.checks.length > 0) {
47
- alert = createHealthCheckAlert(w);
48
- }
49
- return {
50
- ...workerData,
51
- alert,
52
- };
53
- })
54
- .filter((w) => w.alert !== null);
55
- };
56
- // Helper function to generate resource alerts
57
- const generateResourceAlerts = (resourceUsage) => {
58
- const resourceAlerts = [];
59
- const cpuUsage = resourceUsage.resourceSnapshot?.cpu?.usage || 0;
60
- const memoryUsage = resourceUsage.resourceSnapshot?.memory?.usage || 0;
61
- if (cpuUsage > 90) {
62
- resourceAlerts.push({
63
- type: 'cpu-high',
64
- severity: 'critical',
65
- message: `Critical CPU usage: ${cpuUsage.toFixed(1)}%`,
66
- timestamp: new Date().toISOString(),
67
- recommendation: 'Consider scaling up or optimizing worker code',
68
- });
69
- }
70
- else if (cpuUsage > 80) {
71
- resourceAlerts.push({
72
- type: 'cpu-high',
73
- severity: 'warning',
74
- message: `High CPU usage: ${cpuUsage.toFixed(1)}%`,
75
- timestamp: new Date().toISOString(),
76
- recommendation: 'Monitor closely and consider scaling',
77
- });
78
- }
79
- if (memoryUsage > 95) {
80
- resourceAlerts.push({
81
- type: 'memory-high',
82
- severity: 'critical',
83
- message: `Critical memory usage: ${memoryUsage.toFixed(1)}%`,
84
- timestamp: new Date().toISOString(),
85
- recommendation: 'Increase memory allocation or optimize memory usage',
86
- });
87
- }
88
- else if (memoryUsage > 85) {
89
- resourceAlerts.push({
90
- type: 'memory-high',
91
- severity: 'warning',
92
- message: `High memory usage: ${memoryUsage.toFixed(1)}%`,
93
- timestamp: new Date().toISOString(),
94
- recommendation: 'Monitor memory usage closely',
95
- });
96
- }
97
- return resourceAlerts;
98
- };
99
- // Helper function to calculate monitoring summary
100
- const calculateMonitoringSummary = (runningWorkers) => {
101
- const healthyCount = runningWorkers.filter((w) => w.health?.status === 'healthy').length;
102
- const degradedCount = runningWorkers.filter((w) => w.health?.status === 'warning').length;
103
- const criticalCount = runningWorkers.filter((w) => w.health?.status === 'unhealthy').length;
104
- return {
105
- total: runningWorkers.length,
106
- healthy: healthyCount,
107
- degraded: degradedCount,
108
- critical: criticalCount,
109
- details: runningWorkers.map((w) => ({
110
- workerName: w.name,
111
- status: w.health?.status || 'unknown',
112
- lastCheck: w.health?.lastCheck || new Date().toISOString(),
113
- checks: w.health?.checks || [],
114
- })),
115
- };
116
- };
117
- export const TelemetryAPI = Object.freeze({
118
- async getSystemSummary() {
119
- try {
120
- // Get all workers (both running and stopped) for complete alert visibility
121
- const workersResult = await getWorkers({});
122
- const runningWorkers = workersResult.workers.filter((w) => w.status === 'running');
123
- // Calculate monitoring summary from running workers only
124
- const monitoringSummary = calculateMonitoringSummary(runningWorkers);
125
- // Generate alerts from workers and resources
126
- const workerAlerts = generateWorkerAlerts(workersResult.workers);
127
- const resourceUsage = ResourceMonitor.getCurrentUsage('system');
128
- const resourceAlerts = generateResourceAlerts(resourceUsage);
129
- // Combine all alerts
130
- const allAlerts = [...workerAlerts, ...resourceAlerts];
131
- return {
132
- ok: true,
133
- summary: {
134
- workers: runningWorkers.length,
135
- monitoring: {
136
- ...monitoringSummary,
137
- alerts: allAlerts, // Include all alerts (workers + resources)
138
- },
139
- resources: resourceUsage,
140
- alerts: allAlerts, // Top-level alerts for easy access
141
- },
142
- };
143
- }
144
- catch (error) {
145
- Logger.error('Failed to get system summary', error);
146
- return {
147
- ok: false,
148
- error: error instanceof Error ? error.message : 'Unknown error',
149
- summary: {},
150
- };
151
- }
152
- },
153
- async getMonitoringSummary() {
154
- try {
155
- const summary = await HealthMonitor.getSummary();
156
- return { ok: true, summary };
157
- }
158
- catch (error) {
159
- Logger.error('Failed to get monitoring summary', error);
160
- return {
161
- ok: false,
162
- error: error instanceof Error ? error.message : 'Unknown error',
163
- summary: {},
164
- };
165
- }
166
- },
167
- async getResourceCurrent() {
168
- try {
169
- const usage = ResourceMonitor.getCurrentUsage('system');
170
- return { ok: true, usage };
171
- }
172
- catch (error) {
173
- Logger.error('Failed to get resource usage', error);
174
- return {
175
- ok: false,
176
- error: error instanceof Error ? error.message : 'Unknown error',
177
- usage: null,
178
- };
179
- }
180
- },
181
- async getResourceTrends() {
182
- try {
183
- const trends = ResourceMonitor.getAllTrends('system', 'day');
184
- return { ok: true, trends };
185
- }
186
- catch (error) {
187
- Logger.error('Failed to get resource trends', error);
188
- return {
189
- ok: false,
190
- error: error instanceof Error ? error.message : 'Unknown error',
191
- trends: null,
192
- };
193
- }
194
- },
195
- });
196
- export function createSnapshotBuilder() {
197
- return async () => {
198
- const [systemSummaryResult, resourceCurrentResult] = await Promise.allSettled([
199
- TelemetryAPI.getSystemSummary(),
200
- TelemetryAPI.getResourceCurrent(),
201
- ]);
202
- if (systemSummaryResult.status === 'rejected') {
203
- Logger.error('Telemetry dashboard summary failed', systemSummaryResult.reason);
204
- }
205
- if (resourceCurrentResult.status === 'rejected') {
206
- Logger.error('Telemetry resource summary failed', resourceCurrentResult.reason);
207
- }
208
- const systemSummary = systemSummaryResult.status === 'fulfilled' ? systemSummaryResult.value : { ok: false };
209
- const resourceCurrent = resourceCurrentResult.status === 'fulfilled'
210
- ? resourceCurrentResult.value
211
- : { ok: false };
212
- return {
213
- ok: systemSummary.ok ?? false,
214
- summary: isOkWithSummary(systemSummary) ? systemSummary.summary : {},
215
- resources: isOkWithUsage(resourceCurrent) ? resourceCurrent.usage : null,
216
- cost: null,
217
- };
218
- };
219
- }
@@ -1,18 +0,0 @@
1
- import type { IResponse } from '../../../../../src/index.js';
2
- import type { createSnapshotBuilder, TelemetrySettings } from './TelemetryAPI';
3
- export type TelemetrySnapshotData = {
4
- type: string;
5
- ts: string;
6
- ok: boolean;
7
- summary: unknown;
8
- resources: unknown;
9
- cost: unknown;
10
- };
11
- export declare const TelemetryMonitoringService: Readonly<{
12
- subscribe(callback: (data: TelemetrySnapshotData) => void): void;
13
- unsubscribe(callback: (data: TelemetrySnapshotData) => void): void;
14
- startMonitoring(settings: TelemetrySettings, buildSnapshot: ReturnType<typeof createSnapshotBuilder>): void;
15
- stopMonitoring(): void;
16
- }>;
17
- export declare const teleStream: (res: IResponse, settings: TelemetrySettings, buildSnapshot: ReturnType<typeof createSnapshotBuilder>) => Promise<void>;
18
- //# sourceMappingURL=TelemetryMonitoringService.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TelemetryMonitoringService.d.ts","sourceRoot":"","sources":["../../../../../../packages/workers/src/telemetry/api/TelemetryMonitoringService.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAEhD,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAE/E,MAAM,MAAM,qBAAqB,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAkFF,eAAO,MAAM,0BAA0B;wBACjB,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,GAAG,IAAI;0BAQ1C,CAAC,IAAI,EAAE,qBAAqB,KAAK,IAAI,GAAG,IAAI;8BAWtD,iBAAiB,iBACZ,UAAU,CAAC,OAAO,qBAAqB,CAAC,GACtD,IAAI;sBAOW,IAAI;EAOtB,CAAC;AAEH,eAAO,MAAM,UAAU,GACrB,KAAK,SAAS,EACd,UAAU,iBAAiB,EAC3B,eAAe,UAAU,CAAC,OAAO,qBAAqB,CAAC,KACtD,OAAO,CAAC,IAAI,CA8Cd,CAAC"}