@oneuptime/common 11.0.2 → 11.0.3

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 (344) hide show
  1. package/Models/DatabaseModels/Alert.ts +166 -0
  2. package/Models/DatabaseModels/AlertLabelRule.ts +38 -0
  3. package/Models/DatabaseModels/AlertOwnerRule.ts +38 -0
  4. package/Models/DatabaseModels/DockerSwarmCluster.ts +989 -0
  5. package/Models/DatabaseModels/DockerSwarmClusterLabelRule.ts +514 -0
  6. package/Models/DatabaseModels/DockerSwarmClusterOwnerRule.ts +596 -0
  7. package/Models/DatabaseModels/DockerSwarmClusterOwnerTeam.ts +487 -0
  8. package/Models/DatabaseModels/DockerSwarmClusterOwnerUser.ts +486 -0
  9. package/Models/DatabaseModels/DockerSwarmResource.ts +750 -0
  10. package/Models/DatabaseModels/Incident.ts +166 -0
  11. package/Models/DatabaseModels/IncidentLabelRule.ts +38 -0
  12. package/Models/DatabaseModels/IncidentOwnerRule.ts +38 -0
  13. package/Models/DatabaseModels/IncidentTemplate.ts +56 -0
  14. package/Models/DatabaseModels/Index.ts +24 -0
  15. package/Models/DatabaseModels/PodmanHost.ts +859 -0
  16. package/Models/DatabaseModels/PodmanHostLabelRule.ts +514 -0
  17. package/Models/DatabaseModels/PodmanHostOwnerRule.ts +596 -0
  18. package/Models/DatabaseModels/PodmanHostOwnerTeam.ts +487 -0
  19. package/Models/DatabaseModels/PodmanHostOwnerUser.ts +486 -0
  20. package/Models/DatabaseModels/PodmanResource.ts +498 -0
  21. package/Models/DatabaseModels/ScheduledMaintenance.ts +110 -0
  22. package/Models/DatabaseModels/ScheduledMaintenanceLabelRule.ts +38 -0
  23. package/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.ts +38 -0
  24. package/Models/DatabaseModels/ScheduledMaintenanceTemplate.ts +56 -0
  25. package/Models/DatabaseModels/TelemetryException.ts +2 -0
  26. package/Server/API/DashboardAPI.ts +89 -0
  27. package/Server/API/DockerSwarmResourceAPI.ts +137 -0
  28. package/Server/API/TelemetryAPI.ts +8 -1
  29. package/Server/Infrastructure/Postgres/SchemaMigrations/1781587937032-MigrationName.ts +3199 -0
  30. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +2 -0
  31. package/Server/Services/AlertLabelRuleEngineService.ts +29 -0
  32. package/Server/Services/AlertOwnerRuleEngineService.ts +67 -0
  33. package/Server/Services/DockerSwarmClusterLabelRuleEngineService.ts +214 -0
  34. package/Server/Services/DockerSwarmClusterLabelRuleService.ts +14 -0
  35. package/Server/Services/DockerSwarmClusterOwnerRuleEngineService.ts +232 -0
  36. package/Server/Services/DockerSwarmClusterOwnerRuleService.ts +14 -0
  37. package/Server/Services/DockerSwarmClusterOwnerTeamService.ts +10 -0
  38. package/Server/Services/DockerSwarmClusterOwnerUserService.ts +10 -0
  39. package/Server/Services/DockerSwarmClusterService.ts +404 -0
  40. package/Server/Services/DockerSwarmResourceService.ts +381 -0
  41. package/Server/Services/ExceptionAggregationService.ts +1 -0
  42. package/Server/Services/IncidentLabelRuleEngineService.ts +27 -0
  43. package/Server/Services/IncidentOwnerRuleEngineService.ts +67 -0
  44. package/Server/Services/IncidentService.ts +11 -0
  45. package/Server/Services/Index.ts +14 -0
  46. package/Server/Services/LogAggregationService.ts +1 -0
  47. package/Server/Services/MetricAggregationService.ts +1 -0
  48. package/Server/Services/OpenTelemetryIngestService.ts +37 -0
  49. package/Server/Services/PodmanHostLabelRuleEngineService.ts +198 -0
  50. package/Server/Services/PodmanHostLabelRuleService.ts +14 -0
  51. package/Server/Services/PodmanHostOwnerRuleEngineService.ts +216 -0
  52. package/Server/Services/PodmanHostOwnerRuleService.ts +14 -0
  53. package/Server/Services/PodmanHostOwnerTeamService.ts +10 -0
  54. package/Server/Services/PodmanHostOwnerUserService.ts +10 -0
  55. package/Server/Services/PodmanHostService.ts +368 -0
  56. package/Server/Services/PodmanResourceService.ts +310 -0
  57. package/Server/Services/ScheduledMaintenanceLabelRuleEngineService.ts +29 -0
  58. package/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.ts +67 -0
  59. package/Server/Services/TelemetryUsageBillingService.ts +18 -0
  60. package/Server/Services/TraceAggregationService.ts +1 -0
  61. package/Server/Types/Database/Permissions/OwnerTableRegistry.ts +13 -0
  62. package/Server/Utils/Monitor/MonitorAlert.ts +10 -0
  63. package/Server/Utils/Monitor/MonitorClusterContext.ts +35 -6
  64. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +306 -0
  65. package/Server/Utils/Monitor/MonitorIncident.ts +45 -0
  66. package/Server/Utils/Monitor/MonitorMaintenanceSuppression.ts +17 -0
  67. package/Server/Utils/Monitor/MonitorTemplateUtil.ts +3 -0
  68. package/Server/Utils/Monitor/SeriesResourceLabels.ts +26 -0
  69. package/Server/Utils/Telemetry/ResourceFacetResolver.ts +49 -0
  70. package/Server/Utils/Telemetry/Telemetry.ts +10 -0
  71. package/Server/Utils/Telemetry/TelemetryEntity.ts +22 -0
  72. package/Tests/Server/Utils/Monitor/MonitorMaintenanceSuppression.test.ts +1 -0
  73. package/Tests/Types/DockerSwarm/DockerSwarmInventoryExtractor.test.ts +667 -0
  74. package/Tests/Types/Monitor/DockerSwarmAlertTemplates.test.ts +528 -0
  75. package/Types/Dashboard/DashboardComponentType.ts +7 -0
  76. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +2 -0
  77. package/Types/Dashboard/DashboardComponents/DashboardDockerSwarmNodeListComponent.ts +17 -0
  78. package/Types/Dashboard/DashboardComponents/DashboardDockerSwarmServiceListComponent.ts +17 -0
  79. package/Types/Dashboard/DashboardComponents/DashboardPodmanContainerListComponent.ts +16 -0
  80. package/Types/Dashboard/DashboardComponents/DashboardPodmanHostListComponent.ts +15 -0
  81. package/Types/Dashboard/DashboardComponents/DashboardPodmanImageListComponent.ts +16 -0
  82. package/Types/Dashboard/DashboardComponents/DashboardPodmanNetworkListComponent.ts +15 -0
  83. package/Types/Dashboard/DashboardComponents/DashboardPodmanVolumeListComponent.ts +15 -0
  84. package/Types/Dashboard/DashboardTemplates.ts +194 -0
  85. package/Types/DockerSwarm/DockerSwarmInventoryExtractor.ts +452 -0
  86. package/Types/Icon/IconProp.ts +1 -0
  87. package/Types/Monitor/DockerSwarmAlertTemplates.ts +461 -0
  88. package/Types/Monitor/DockerSwarmMetricCatalog.ts +139 -0
  89. package/Types/Monitor/HostAlertTemplates.ts +455 -0
  90. package/Types/Monitor/HostMetricCatalog.ts +177 -0
  91. package/Types/Monitor/MetricMonitor/MetricMonitorResponse.ts +21 -0
  92. package/Types/Monitor/MonitorStep.ts +99 -0
  93. package/Types/Monitor/MonitorStepDockerSwarmMonitor.ts +74 -0
  94. package/Types/Monitor/MonitorStepHostMonitor.ts +30 -0
  95. package/Types/Monitor/MonitorStepPodmanMonitor.ts +38 -0
  96. package/Types/Monitor/MonitorType.ts +42 -0
  97. package/Types/Monitor/PodmanAlertTemplates.ts +507 -0
  98. package/Types/Monitor/PodmanMetricCatalog.ts +226 -0
  99. package/Types/Permission.ts +465 -4
  100. package/Types/Podman/PodmanInventoryExtractor.ts +343 -0
  101. package/Types/Telemetry/EntityType.ts +12 -0
  102. package/Types/Telemetry/ServiceType.ts +2 -0
  103. package/UI/Components/Icon/Icon.tsx +57 -0
  104. package/UI/Components/LogsViewer/LogsViewer.tsx +44 -1
  105. package/UI/Components/LogsViewer/components/LogsFacetSidebar.tsx +28 -0
  106. package/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.ts +6 -0
  107. package/UI/Utils/TelemetryService.ts +1 -0
  108. package/Utils/Dashboard/Components/DashboardDockerSwarmNodeListComponent.ts +70 -0
  109. package/Utils/Dashboard/Components/DashboardDockerSwarmResourceListShared.ts +61 -0
  110. package/Utils/Dashboard/Components/DashboardDockerSwarmServiceListComponent.ts +71 -0
  111. package/Utils/Dashboard/Components/DashboardPodmanContainerListComponent.ts +100 -0
  112. package/Utils/Dashboard/Components/DashboardPodmanHostListComponent.ts +88 -0
  113. package/Utils/Dashboard/Components/DashboardPodmanImageListComponent.ts +97 -0
  114. package/Utils/Dashboard/Components/DashboardPodmanNetworkListComponent.ts +87 -0
  115. package/Utils/Dashboard/Components/DashboardPodmanVolumeListComponent.ts +87 -0
  116. package/Utils/Dashboard/Components/Index.ts +51 -0
  117. package/Utils/Telemetry/EntityKey.ts +18 -0
  118. package/build/dist/Models/DatabaseModels/Alert.js +162 -0
  119. package/build/dist/Models/DatabaseModels/Alert.js.map +1 -1
  120. package/build/dist/Models/DatabaseModels/AlertLabelRule.js +39 -0
  121. package/build/dist/Models/DatabaseModels/AlertLabelRule.js.map +1 -1
  122. package/build/dist/Models/DatabaseModels/AlertOwnerRule.js +39 -0
  123. package/build/dist/Models/DatabaseModels/AlertOwnerRule.js.map +1 -1
  124. package/build/dist/Models/DatabaseModels/DockerSwarmCluster.js +1018 -0
  125. package/build/dist/Models/DatabaseModels/DockerSwarmCluster.js.map +1 -0
  126. package/build/dist/Models/DatabaseModels/DockerSwarmClusterLabelRule.js +522 -0
  127. package/build/dist/Models/DatabaseModels/DockerSwarmClusterLabelRule.js.map +1 -0
  128. package/build/dist/Models/DatabaseModels/DockerSwarmClusterOwnerRule.js +603 -0
  129. package/build/dist/Models/DatabaseModels/DockerSwarmClusterOwnerRule.js.map +1 -0
  130. package/build/dist/Models/DatabaseModels/DockerSwarmClusterOwnerTeam.js +503 -0
  131. package/build/dist/Models/DatabaseModels/DockerSwarmClusterOwnerTeam.js.map +1 -0
  132. package/build/dist/Models/DatabaseModels/DockerSwarmClusterOwnerUser.js +502 -0
  133. package/build/dist/Models/DatabaseModels/DockerSwarmClusterOwnerUser.js.map +1 -0
  134. package/build/dist/Models/DatabaseModels/DockerSwarmResource.js +787 -0
  135. package/build/dist/Models/DatabaseModels/DockerSwarmResource.js.map +1 -0
  136. package/build/dist/Models/DatabaseModels/Incident.js +162 -0
  137. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  138. package/build/dist/Models/DatabaseModels/IncidentLabelRule.js +39 -0
  139. package/build/dist/Models/DatabaseModels/IncidentLabelRule.js.map +1 -1
  140. package/build/dist/Models/DatabaseModels/IncidentOwnerRule.js +39 -0
  141. package/build/dist/Models/DatabaseModels/IncidentOwnerRule.js.map +1 -1
  142. package/build/dist/Models/DatabaseModels/IncidentTemplate.js +54 -0
  143. package/build/dist/Models/DatabaseModels/IncidentTemplate.js.map +1 -1
  144. package/build/dist/Models/DatabaseModels/Index.js +24 -0
  145. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  146. package/build/dist/Models/DatabaseModels/PodmanHost.js +885 -0
  147. package/build/dist/Models/DatabaseModels/PodmanHost.js.map +1 -0
  148. package/build/dist/Models/DatabaseModels/PodmanHostLabelRule.js +522 -0
  149. package/build/dist/Models/DatabaseModels/PodmanHostLabelRule.js.map +1 -0
  150. package/build/dist/Models/DatabaseModels/PodmanHostOwnerRule.js +603 -0
  151. package/build/dist/Models/DatabaseModels/PodmanHostOwnerRule.js.map +1 -0
  152. package/build/dist/Models/DatabaseModels/PodmanHostOwnerTeam.js +503 -0
  153. package/build/dist/Models/DatabaseModels/PodmanHostOwnerTeam.js.map +1 -0
  154. package/build/dist/Models/DatabaseModels/PodmanHostOwnerUser.js +502 -0
  155. package/build/dist/Models/DatabaseModels/PodmanHostOwnerUser.js.map +1 -0
  156. package/build/dist/Models/DatabaseModels/PodmanResource.js +526 -0
  157. package/build/dist/Models/DatabaseModels/PodmanResource.js.map +1 -0
  158. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +108 -0
  159. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
  160. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceLabelRule.js +39 -0
  161. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceLabelRule.js.map +1 -1
  162. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.js +39 -0
  163. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceOwnerRule.js.map +1 -1
  164. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js +54 -0
  165. package/build/dist/Models/DatabaseModels/ScheduledMaintenanceTemplate.js.map +1 -1
  166. package/build/dist/Models/DatabaseModels/TelemetryException.js +2 -0
  167. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  168. package/build/dist/Server/API/DashboardAPI.js +89 -0
  169. package/build/dist/Server/API/DashboardAPI.js.map +1 -1
  170. package/build/dist/Server/API/DockerSwarmResourceAPI.js +100 -0
  171. package/build/dist/Server/API/DockerSwarmResourceAPI.js.map +1 -0
  172. package/build/dist/Server/API/TelemetryAPI.js +8 -1
  173. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  174. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781587937032-MigrationName.js +1100 -0
  175. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781587937032-MigrationName.js.map +1 -0
  176. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +2 -0
  177. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  178. package/build/dist/Server/Services/AlertLabelRuleEngineService.js +30 -4
  179. package/build/dist/Server/Services/AlertLabelRuleEngineService.js.map +1 -1
  180. package/build/dist/Server/Services/AlertOwnerRuleEngineService.js +62 -5
  181. package/build/dist/Server/Services/AlertOwnerRuleEngineService.js.map +1 -1
  182. package/build/dist/Server/Services/DockerSwarmClusterLabelRuleEngineService.js +168 -0
  183. package/build/dist/Server/Services/DockerSwarmClusterLabelRuleEngineService.js.map +1 -0
  184. package/build/dist/Server/Services/DockerSwarmClusterLabelRuleService.js +13 -0
  185. package/build/dist/Server/Services/DockerSwarmClusterLabelRuleService.js.map +1 -0
  186. package/build/dist/Server/Services/DockerSwarmClusterOwnerRuleEngineService.js +188 -0
  187. package/build/dist/Server/Services/DockerSwarmClusterOwnerRuleEngineService.js.map +1 -0
  188. package/build/dist/Server/Services/DockerSwarmClusterOwnerRuleService.js +13 -0
  189. package/build/dist/Server/Services/DockerSwarmClusterOwnerRuleService.js.map +1 -0
  190. package/build/dist/Server/Services/DockerSwarmClusterOwnerTeamService.js +9 -0
  191. package/build/dist/Server/Services/DockerSwarmClusterOwnerTeamService.js.map +1 -0
  192. package/build/dist/Server/Services/DockerSwarmClusterOwnerUserService.js +9 -0
  193. package/build/dist/Server/Services/DockerSwarmClusterOwnerUserService.js.map +1 -0
  194. package/build/dist/Server/Services/DockerSwarmClusterService.js +353 -0
  195. package/build/dist/Server/Services/DockerSwarmClusterService.js.map +1 -0
  196. package/build/dist/Server/Services/DockerSwarmResourceService.js +258 -0
  197. package/build/dist/Server/Services/DockerSwarmResourceService.js.map +1 -0
  198. package/build/dist/Server/Services/ExceptionAggregationService.js +1 -0
  199. package/build/dist/Server/Services/ExceptionAggregationService.js.map +1 -1
  200. package/build/dist/Server/Services/IncidentLabelRuleEngineService.js +28 -4
  201. package/build/dist/Server/Services/IncidentLabelRuleEngineService.js.map +1 -1
  202. package/build/dist/Server/Services/IncidentOwnerRuleEngineService.js +62 -5
  203. package/build/dist/Server/Services/IncidentOwnerRuleEngineService.js.map +1 -1
  204. package/build/dist/Server/Services/IncidentService.js +8 -0
  205. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  206. package/build/dist/Server/Services/Index.js +14 -0
  207. package/build/dist/Server/Services/Index.js.map +1 -1
  208. package/build/dist/Server/Services/LogAggregationService.js +1 -0
  209. package/build/dist/Server/Services/LogAggregationService.js.map +1 -1
  210. package/build/dist/Server/Services/MetricAggregationService.js +1 -0
  211. package/build/dist/Server/Services/MetricAggregationService.js.map +1 -1
  212. package/build/dist/Server/Services/OpenTelemetryIngestService.js +43 -13
  213. package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
  214. package/build/dist/Server/Services/PodmanHostLabelRuleEngineService.js +166 -0
  215. package/build/dist/Server/Services/PodmanHostLabelRuleEngineService.js.map +1 -0
  216. package/build/dist/Server/Services/PodmanHostLabelRuleService.js +13 -0
  217. package/build/dist/Server/Services/PodmanHostLabelRuleService.js.map +1 -0
  218. package/build/dist/Server/Services/PodmanHostOwnerRuleEngineService.js +186 -0
  219. package/build/dist/Server/Services/PodmanHostOwnerRuleEngineService.js.map +1 -0
  220. package/build/dist/Server/Services/PodmanHostOwnerRuleService.js +13 -0
  221. package/build/dist/Server/Services/PodmanHostOwnerRuleService.js.map +1 -0
  222. package/build/dist/Server/Services/PodmanHostOwnerTeamService.js +9 -0
  223. package/build/dist/Server/Services/PodmanHostOwnerTeamService.js.map +1 -0
  224. package/build/dist/Server/Services/PodmanHostOwnerUserService.js +9 -0
  225. package/build/dist/Server/Services/PodmanHostOwnerUserService.js.map +1 -0
  226. package/build/dist/Server/Services/PodmanHostService.js +319 -0
  227. package/build/dist/Server/Services/PodmanHostService.js.map +1 -0
  228. package/build/dist/Server/Services/PodmanResourceService.js +196 -0
  229. package/build/dist/Server/Services/PodmanResourceService.js.map +1 -0
  230. package/build/dist/Server/Services/ScheduledMaintenanceLabelRuleEngineService.js +30 -4
  231. package/build/dist/Server/Services/ScheduledMaintenanceLabelRuleEngineService.js.map +1 -1
  232. package/build/dist/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.js +62 -5
  233. package/build/dist/Server/Services/ScheduledMaintenanceOwnerRuleEngineService.js.map +1 -1
  234. package/build/dist/Server/Services/TelemetryUsageBillingService.js +13 -0
  235. package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
  236. package/build/dist/Server/Services/TraceAggregationService.js +1 -0
  237. package/build/dist/Server/Services/TraceAggregationService.js.map +1 -1
  238. package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js +13 -0
  239. package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js.map +1 -1
  240. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +8 -0
  241. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  242. package/build/dist/Server/Utils/Monitor/MonitorClusterContext.js +35 -7
  243. package/build/dist/Server/Utils/Monitor/MonitorClusterContext.js.map +1 -1
  244. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +194 -0
  245. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  246. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +35 -1
  247. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  248. package/build/dist/Server/Utils/Monitor/MonitorMaintenanceSuppression.js +9 -0
  249. package/build/dist/Server/Utils/Monitor/MonitorMaintenanceSuppression.js.map +1 -1
  250. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +3 -0
  251. package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
  252. package/build/dist/Server/Utils/Monitor/SeriesResourceLabels.js +16 -0
  253. package/build/dist/Server/Utils/Monitor/SeriesResourceLabels.js.map +1 -1
  254. package/build/dist/Server/Utils/Telemetry/ResourceFacetResolver.js +30 -0
  255. package/build/dist/Server/Utils/Telemetry/ResourceFacetResolver.js.map +1 -1
  256. package/build/dist/Server/Utils/Telemetry/Telemetry.js +6 -0
  257. package/build/dist/Server/Utils/Telemetry/Telemetry.js.map +1 -1
  258. package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js +18 -0
  259. package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js.map +1 -1
  260. package/build/dist/Types/Dashboard/DashboardComponentType.js +7 -0
  261. package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
  262. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +2 -0
  263. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  264. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerSwarmNodeListComponent.js +2 -0
  265. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerSwarmNodeListComponent.js.map +1 -0
  266. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerSwarmServiceListComponent.js +2 -0
  267. package/build/dist/Types/Dashboard/DashboardComponents/DashboardDockerSwarmServiceListComponent.js.map +1 -0
  268. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanContainerListComponent.js +2 -0
  269. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanContainerListComponent.js.map +1 -0
  270. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanHostListComponent.js +2 -0
  271. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanHostListComponent.js.map +1 -0
  272. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanImageListComponent.js +2 -0
  273. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanImageListComponent.js.map +1 -0
  274. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanNetworkListComponent.js +2 -0
  275. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanNetworkListComponent.js.map +1 -0
  276. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanVolumeListComponent.js +2 -0
  277. package/build/dist/Types/Dashboard/DashboardComponents/DashboardPodmanVolumeListComponent.js.map +1 -0
  278. package/build/dist/Types/Dashboard/DashboardTemplates.js +168 -0
  279. package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
  280. package/build/dist/Types/DockerSwarm/DockerSwarmInventoryExtractor.js +359 -0
  281. package/build/dist/Types/DockerSwarm/DockerSwarmInventoryExtractor.js.map +1 -0
  282. package/build/dist/Types/Icon/IconProp.js +1 -0
  283. package/build/dist/Types/Icon/IconProp.js.map +1 -1
  284. package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js +358 -0
  285. package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js.map +1 -0
  286. package/build/dist/Types/Monitor/DockerSwarmMetricCatalog.js +103 -0
  287. package/build/dist/Types/Monitor/DockerSwarmMetricCatalog.js.map +1 -0
  288. package/build/dist/Types/Monitor/HostAlertTemplates.js +365 -0
  289. package/build/dist/Types/Monitor/HostAlertTemplates.js.map +1 -0
  290. package/build/dist/Types/Monitor/HostMetricCatalog.js +138 -0
  291. package/build/dist/Types/Monitor/HostMetricCatalog.js.map +1 -0
  292. package/build/dist/Types/Monitor/MonitorStep.js +69 -0
  293. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  294. package/build/dist/Types/Monitor/MonitorStepDockerSwarmMonitor.js +21 -0
  295. package/build/dist/Types/Monitor/MonitorStepDockerSwarmMonitor.js.map +1 -0
  296. package/build/dist/Types/Monitor/MonitorStepHostMonitor.js +20 -0
  297. package/build/dist/Types/Monitor/MonitorStepHostMonitor.js.map +1 -0
  298. package/build/dist/Types/Monitor/MonitorStepPodmanMonitor.js +21 -0
  299. package/build/dist/Types/Monitor/MonitorStepPodmanMonitor.js.map +1 -0
  300. package/build/dist/Types/Monitor/MonitorType.js +39 -0
  301. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  302. package/build/dist/Types/Monitor/PodmanAlertTemplates.js +410 -0
  303. package/build/dist/Types/Monitor/PodmanAlertTemplates.js.map +1 -0
  304. package/build/dist/Types/Monitor/PodmanMetricCatalog.js +192 -0
  305. package/build/dist/Types/Monitor/PodmanMetricCatalog.js.map +1 -0
  306. package/build/dist/Types/Permission.js +420 -4
  307. package/build/dist/Types/Permission.js.map +1 -1
  308. package/build/dist/Types/Podman/PodmanInventoryExtractor.js +293 -0
  309. package/build/dist/Types/Podman/PodmanInventoryExtractor.js.map +1 -0
  310. package/build/dist/Types/Telemetry/EntityType.js +12 -0
  311. package/build/dist/Types/Telemetry/EntityType.js.map +1 -1
  312. package/build/dist/Types/Telemetry/ServiceType.js +2 -0
  313. package/build/dist/Types/Telemetry/ServiceType.js.map +1 -1
  314. package/build/dist/UI/Components/Icon/Icon.js +16 -0
  315. package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
  316. package/build/dist/UI/Components/LogsViewer/LogsViewer.js +30 -2
  317. package/build/dist/UI/Components/LogsViewer/LogsViewer.js.map +1 -1
  318. package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js +22 -0
  319. package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js.map +1 -1
  320. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js +6 -0
  321. package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js.map +1 -1
  322. package/build/dist/UI/Utils/TelemetryService.js +1 -0
  323. package/build/dist/UI/Utils/TelemetryService.js.map +1 -1
  324. package/build/dist/Utils/Dashboard/Components/DashboardDockerSwarmNodeListComponent.js +55 -0
  325. package/build/dist/Utils/Dashboard/Components/DashboardDockerSwarmNodeListComponent.js.map +1 -0
  326. package/build/dist/Utils/Dashboard/Components/DashboardDockerSwarmResourceListShared.js +46 -0
  327. package/build/dist/Utils/Dashboard/Components/DashboardDockerSwarmResourceListShared.js.map +1 -0
  328. package/build/dist/Utils/Dashboard/Components/DashboardDockerSwarmServiceListComponent.js +55 -0
  329. package/build/dist/Utils/Dashboard/Components/DashboardDockerSwarmServiceListComponent.js.map +1 -0
  330. package/build/dist/Utils/Dashboard/Components/DashboardPodmanContainerListComponent.js +77 -0
  331. package/build/dist/Utils/Dashboard/Components/DashboardPodmanContainerListComponent.js.map +1 -0
  332. package/build/dist/Utils/Dashboard/Components/DashboardPodmanHostListComponent.js +71 -0
  333. package/build/dist/Utils/Dashboard/Components/DashboardPodmanHostListComponent.js.map +1 -0
  334. package/build/dist/Utils/Dashboard/Components/DashboardPodmanImageListComponent.js +77 -0
  335. package/build/dist/Utils/Dashboard/Components/DashboardPodmanImageListComponent.js.map +1 -0
  336. package/build/dist/Utils/Dashboard/Components/DashboardPodmanNetworkListComponent.js +68 -0
  337. package/build/dist/Utils/Dashboard/Components/DashboardPodmanNetworkListComponent.js.map +1 -0
  338. package/build/dist/Utils/Dashboard/Components/DashboardPodmanVolumeListComponent.js +68 -0
  339. package/build/dist/Utils/Dashboard/Components/DashboardPodmanVolumeListComponent.js.map +1 -0
  340. package/build/dist/Utils/Dashboard/Components/Index.js +28 -0
  341. package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
  342. package/build/dist/Utils/Telemetry/EntityKey.js +14 -0
  343. package/build/dist/Utils/Telemetry/EntityKey.js.map +1 -1
  344. package/package.json +1 -1
@@ -1,4 +1,5 @@
1
1
  import DockerHost from "./DockerHost";
2
+ import PodmanHost from "./PodmanHost";
2
3
  import Host from "./Host";
3
4
  import KubernetesCluster from "./KubernetesCluster";
4
5
  import Label from "./Label";
@@ -736,6 +737,61 @@ export default class ScheduledMaintenanceTemplate extends BaseModel {
736
737
  })
737
738
  public dockerHosts?: Array<DockerHost> = undefined;
738
739
 
740
+ @ColumnAccessControl({
741
+ create: [
742
+ Permission.ProjectOwner,
743
+ Permission.ProjectAdmin,
744
+ Permission.ProjectMember,
745
+ Permission.ScheduledMaintenanceAdmin,
746
+ Permission.ScheduledMaintenanceMember,
747
+ Permission.CreateScheduledMaintenanceTemplate,
748
+ ],
749
+ read: [
750
+ Permission.ProjectOwner,
751
+ Permission.ProjectAdmin,
752
+ Permission.ProjectMember,
753
+ Permission.Viewer,
754
+ Permission.ScheduledMaintenanceAdmin,
755
+ Permission.ScheduledMaintenanceMember,
756
+ Permission.ScheduledMaintenanceViewer,
757
+ Permission.ReadScheduledMaintenanceTemplate,
758
+ ],
759
+ update: [
760
+ Permission.ProjectOwner,
761
+ Permission.ProjectAdmin,
762
+ Permission.ProjectMember,
763
+ Permission.ScheduledMaintenanceAdmin,
764
+ Permission.ScheduledMaintenanceMember,
765
+ Permission.EditScheduledMaintenanceTemplate,
766
+ ],
767
+ })
768
+ @TableColumn({
769
+ required: false,
770
+ type: TableColumnType.EntityArray,
771
+ modelType: PodmanHost,
772
+ title: "Podman Hosts",
773
+ description:
774
+ "List of Podman hosts to pre-populate on scheduled maintenance events created from this template.",
775
+ })
776
+ @ManyToMany(
777
+ () => {
778
+ return PodmanHost;
779
+ },
780
+ { eager: false },
781
+ )
782
+ @JoinTable({
783
+ name: "ScheduledMaintenanceTemplatePodmanHost",
784
+ inverseJoinColumn: {
785
+ name: "podmanHostId",
786
+ referencedColumnName: "_id",
787
+ },
788
+ joinColumn: {
789
+ name: "scheduledMaintenanceTemplateId",
790
+ referencedColumnName: "_id",
791
+ },
792
+ })
793
+ public podmanHosts?: Array<PodmanHost> = undefined;
794
+
739
795
  @ColumnAccessControl({
740
796
  create: [
741
797
  Permission.ProjectOwner,
@@ -23,6 +23,7 @@ import DatabaseBaseModel from "./DatabaseBaseModel/DatabaseBaseModel";
23
23
  import Service from "./Service";
24
24
  import Host from "./Host";
25
25
  import DockerHost from "./DockerHost";
26
+ import PodmanHost from "./PodmanHost";
26
27
  import KubernetesCluster from "./KubernetesCluster";
27
28
  import ServerlessFunction from "./ServerlessFunction";
28
29
  import CloudResource from "./CloudResource";
@@ -80,6 +81,7 @@ import RumApplication from "./RumApplication";
80
81
  Service,
81
82
  Host,
82
83
  DockerHost,
84
+ PodmanHost,
83
85
  KubernetesCluster,
84
86
  ServerlessFunction,
85
87
  CloudResource,
@@ -45,8 +45,11 @@ import Host from "../../Models/DatabaseModels/Host";
45
45
  import KubernetesResource from "../../Models/DatabaseModels/KubernetesResource";
46
46
  import DockerHost from "../../Models/DatabaseModels/DockerHost";
47
47
  import DockerResource from "../../Models/DatabaseModels/DockerResource";
48
+ import PodmanHost from "../../Models/DatabaseModels/PodmanHost";
49
+ import PodmanResource from "../../Models/DatabaseModels/PodmanResource";
48
50
  import ProxmoxResource from "../../Models/DatabaseModels/ProxmoxResource";
49
51
  import CephResource from "../../Models/DatabaseModels/CephResource";
52
+ import DockerSwarmResource from "../../Models/DatabaseModels/DockerSwarmResource";
50
53
  import Span from "../../Models/AnalyticsModels/Span";
51
54
  import Log from "../../Models/AnalyticsModels/Log";
52
55
  import IncidentService from "../Services/IncidentService";
@@ -56,8 +59,11 @@ import HostService from "../Services/HostService";
56
59
  import KubernetesResourceService from "../Services/KubernetesResourceService";
57
60
  import DockerHostService from "../Services/DockerHostService";
58
61
  import DockerResourceService from "../Services/DockerResourceService";
62
+ import PodmanHostService from "../Services/PodmanHostService";
63
+ import PodmanResourceService from "../Services/PodmanResourceService";
59
64
  import ProxmoxResourceService from "../Services/ProxmoxResourceService";
60
65
  import CephResourceService from "../Services/CephResourceService";
66
+ import DockerSwarmResourceService from "../Services/DockerSwarmResourceService";
61
67
  import SpanService from "../Services/SpanService";
62
68
  import LogService from "../Services/LogService";
63
69
 
@@ -215,6 +221,67 @@ const PUBLIC_DASHBOARD_RESOURCES: Record<
215
221
  dockerHost: { name: true },
216
222
  },
217
223
  },
224
+ "podman-host": {
225
+ modelType: PodmanHost,
226
+ service: PodmanHostService,
227
+ select: {
228
+ _id: true,
229
+ name: true,
230
+ otelCollectorStatus: true,
231
+ containersRunning: true,
232
+ containersStopped: true,
233
+ containersPaused: true,
234
+ osType: true,
235
+ osVersion: true,
236
+ },
237
+ },
238
+ "podman-container": {
239
+ modelType: PodmanResource,
240
+ service: PodmanResourceService,
241
+ select: {
242
+ _id: true,
243
+ name: true,
244
+ imageName: true,
245
+ state: true,
246
+ latestCpuPercent: true,
247
+ latestMemoryBytes: true,
248
+ podmanHostId: true,
249
+ podmanHost: { name: true },
250
+ },
251
+ },
252
+ "podman-image": {
253
+ modelType: PodmanResource,
254
+ service: PodmanResourceService,
255
+ select: {
256
+ _id: true,
257
+ name: true,
258
+ containerId: true,
259
+ podmanHostId: true,
260
+ podmanHost: { name: true },
261
+ },
262
+ },
263
+ "podman-network": {
264
+ modelType: PodmanResource,
265
+ service: PodmanResourceService,
266
+ select: {
267
+ _id: true,
268
+ name: true,
269
+ state: true,
270
+ podmanHostId: true,
271
+ podmanHost: { name: true },
272
+ },
273
+ },
274
+ "podman-volume": {
275
+ modelType: PodmanResource,
276
+ service: PodmanResourceService,
277
+ select: {
278
+ _id: true,
279
+ name: true,
280
+ state: true,
281
+ podmanHostId: true,
282
+ podmanHost: { name: true },
283
+ },
284
+ },
218
285
  "proxmox-resource": {
219
286
  modelType: ProxmoxResource,
220
287
  service: ProxmoxResourceService,
@@ -257,6 +324,28 @@ const PUBLIC_DASHBOARD_RESOURCES: Record<
257
324
  cephCluster: { name: true },
258
325
  },
259
326
  },
327
+ "docker-swarm-resource": {
328
+ modelType: DockerSwarmResource,
329
+ service: DockerSwarmResourceService,
330
+ select: {
331
+ _id: true,
332
+ name: true,
333
+ externalId: true,
334
+ kind: true,
335
+ role: true,
336
+ state: true,
337
+ serviceMode: true,
338
+ desiredReplicas: true,
339
+ runningReplicas: true,
340
+ image: true,
341
+ isReady: true,
342
+ latestCpuPercent: true,
343
+ latestMemoryPercent: true,
344
+ lastSeenAt: true,
345
+ dockerSwarmClusterId: true,
346
+ dockerSwarmCluster: { name: true },
347
+ },
348
+ },
260
349
  span: {
261
350
  modelType: Span,
262
351
  service: SpanService,
@@ -0,0 +1,137 @@
1
+ import DockerSwarmResource from "../../Models/DatabaseModels/DockerSwarmResource";
2
+ import DockerSwarmCluster from "../../Models/DatabaseModels/DockerSwarmCluster";
3
+ import BadDataException from "../../Types/Exception/BadDataException";
4
+ import ObjectID from "../../Types/ObjectID";
5
+ import DockerSwarmResourceService, {
6
+ DockerSwarmInventorySummary,
7
+ Service as DockerSwarmResourceServiceType,
8
+ } from "../Services/DockerSwarmResourceService";
9
+ import DockerSwarmClusterService from "../Services/DockerSwarmClusterService";
10
+ import UserMiddleware from "../Middleware/UserAuthorization";
11
+ import Response from "../Utils/Response";
12
+ import BaseAPI from "./BaseAPI";
13
+ import {
14
+ ExpressRequest,
15
+ ExpressResponse,
16
+ NextFunction,
17
+ } from "../Utils/Express";
18
+ import CommonAPI from "./CommonAPI";
19
+ import DatabaseCommonInteractionProps from "../../Types/BaseDatabase/DatabaseCommonInteractionProps";
20
+ import NotFoundException from "../../Types/Exception/NotFoundException";
21
+ import { JSONObject } from "../../Types/JSON";
22
+
23
+ /*
24
+ * ------------------------------------------------------------------
25
+ * DockerSwarmResourceAPI
26
+ *
27
+ * Augments the auto-generated CRUD router with a single custom
28
+ * endpoint the DockerSwarm layout/overview pages use to fetch sidebar
29
+ * badge counts in one round-trip:
30
+ *
31
+ * POST /docker-swarm-resource/inventory-summary/:clusterId
32
+ *
33
+ * The standard CRUD endpoints (list / get) are still registered by
34
+ * BaseAPI; the UI uses them via ModelAPI for list/detail reads.
35
+ * Write endpoints reject (@TableAccessControl create/update/delete
36
+ * = []); ingest writes go through DockerSwarmResourceService as root.
37
+ * ------------------------------------------------------------------
38
+ */
39
+ export default class DockerSwarmResourceAPI extends BaseAPI<
40
+ DockerSwarmResource,
41
+ DockerSwarmResourceServiceType
42
+ > {
43
+ public constructor() {
44
+ super(DockerSwarmResource, DockerSwarmResourceService);
45
+
46
+ this.router.post(
47
+ `${new this.entityType()
48
+ .getCrudApiPath()
49
+ ?.toString()}/inventory-summary/:clusterId`,
50
+ UserMiddleware.getUserMiddleware,
51
+ async (req: ExpressRequest, res: ExpressResponse, next: NextFunction) => {
52
+ try {
53
+ await this.getInventorySummary(req, res);
54
+ } catch (err) {
55
+ next(err);
56
+ }
57
+ },
58
+ );
59
+ }
60
+
61
+ /*
62
+ * Cluster + auth resolution for the cluster-scoped sub-route.
63
+ * Returns the (projectId, dockerSwarmClusterId) tuple after enforcing
64
+ * the standard ACL chain. Throws NotFound when the cluster is
65
+ * missing or the caller lacks read access (indistinguishable on
66
+ * purpose).
67
+ */
68
+ private async resolveClusterForRequest(req: ExpressRequest): Promise<{
69
+ projectId: ObjectID;
70
+ dockerSwarmClusterId: ObjectID;
71
+ }> {
72
+ const clusterIdParam: string | undefined = req.params["clusterId"];
73
+ if (!clusterIdParam) {
74
+ throw new BadDataException("Cluster ID is required");
75
+ }
76
+
77
+ let dockerSwarmClusterId: ObjectID;
78
+ try {
79
+ dockerSwarmClusterId = new ObjectID(clusterIdParam);
80
+ } catch {
81
+ throw new BadDataException("Invalid Cluster ID");
82
+ }
83
+
84
+ const props: DatabaseCommonInteractionProps =
85
+ await CommonAPI.getDatabaseCommonInteractionProps(req);
86
+
87
+ const cluster: DockerSwarmCluster | null =
88
+ await DockerSwarmClusterService.findOneById({
89
+ id: dockerSwarmClusterId,
90
+ select: {
91
+ _id: true,
92
+ projectId: true,
93
+ },
94
+ props,
95
+ });
96
+
97
+ if (!cluster || !cluster.projectId) {
98
+ throw new NotFoundException("DockerSwarm Cluster not found");
99
+ }
100
+
101
+ return {
102
+ projectId: cluster.projectId,
103
+ dockerSwarmClusterId,
104
+ };
105
+ }
106
+
107
+ private async getInventorySummary(
108
+ req: ExpressRequest,
109
+ res: ExpressResponse,
110
+ ): Promise<void> {
111
+ const { projectId, dockerSwarmClusterId } =
112
+ await this.resolveClusterForRequest(req);
113
+
114
+ const summary: DockerSwarmInventorySummary =
115
+ await this.service.getInventorySummary({
116
+ projectId,
117
+ dockerSwarmClusterId,
118
+ });
119
+
120
+ const responseBody: JSONObject = {
121
+ countsByKind: summary.countsByKind as unknown as JSONObject,
122
+ // Convenience fields so the UI doesn't have to repeat COALESCE:
123
+ nodeCount: summary.countsByKind["Node"] || 0,
124
+ serviceCount: summary.countsByKind["Service"] || 0,
125
+ taskCount: summary.countsByKind["Task"] || 0,
126
+ stackCount: summary.countsByKind["Stack"] || 0,
127
+ networkCount: summary.countsByKind["Network"] || 0,
128
+ secretCount: summary.countsByKind["Secret"] || 0,
129
+ configCount: summary.countsByKind["Config"] || 0,
130
+ volumeCount: summary.countsByKind["Volume"] || 0,
131
+ nodeReadyCount: summary.nodeReadyCount,
132
+ taskRunningCount: summary.taskRunningCount,
133
+ };
134
+
135
+ return Response.sendJsonObjectResponse(req, res, responseBody);
136
+ }
137
+ }
@@ -1201,6 +1201,7 @@ router.post(
1201
1201
  "primaryEntityId",
1202
1202
  "hostId",
1203
1203
  "dockerHostId",
1204
+ "podmanHostId",
1204
1205
  "kubernetesClusterId",
1205
1206
  "exceptionType",
1206
1207
  "environment",
@@ -1365,7 +1366,13 @@ router.post(
1365
1366
 
1366
1367
  const facetKeys: Array<string> = body["facetKeys"]
1367
1368
  ? (body["facetKeys"] as Array<string>)
1368
- : ["primaryEntityId", "hostId", "dockerHostId", "kubernetesClusterId"];
1369
+ : [
1370
+ "primaryEntityId",
1371
+ "hostId",
1372
+ "dockerHostId",
1373
+ "podmanHostId",
1374
+ "kubernetesClusterId",
1375
+ ];
1369
1376
 
1370
1377
  const startTime: Date = body["startTime"]
1371
1378
  ? OneUptimeDate.fromString(body["startTime"] as string)