@oneuptime/common 12.0.2 → 12.0.4

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 (384) hide show
  1. package/Models/DatabaseModels/CephCluster.ts +14 -0
  2. package/Models/DatabaseModels/CodeRepository.ts +14 -6
  3. package/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.ts +14 -0
  4. package/Models/DatabaseModels/DockerHost.ts +14 -0
  5. package/Models/DatabaseModels/GlobalOidcProject.ts +18 -0
  6. package/Models/DatabaseModels/GlobalSsoProject.ts +18 -0
  7. package/Models/DatabaseModels/Index.ts +2 -0
  8. package/Models/DatabaseModels/IoTFleet.ts +14 -0
  9. package/Models/DatabaseModels/KubernetesCluster.ts +14 -0
  10. package/Models/DatabaseModels/LogDropFilter.ts +9 -20
  11. package/Models/DatabaseModels/NetworkDevice.ts +14 -0
  12. package/Models/DatabaseModels/NetworkInterface.ts +18 -0
  13. package/Models/DatabaseModels/Project.ts +16 -2
  14. package/Models/DatabaseModels/ProxmoxCluster.ts +14 -0
  15. package/Models/DatabaseModels/Service.ts +30 -0
  16. package/Models/DatabaseModels/StatusPageMonitorRule.ts +911 -0
  17. package/Models/DatabaseModels/StatusPagePrivateUser.ts +30 -0
  18. package/Models/DatabaseModels/StatusPageResource.ts +73 -0
  19. package/Models/DatabaseModels/TraceDropFilter.ts +9 -20
  20. package/Models/DatabaseModels/User.ts +30 -0
  21. package/Server/API/AIAgentDataAPI.ts +31 -0
  22. package/Server/API/BaseAPI.ts +13 -2
  23. package/Server/API/DashboardAPI.ts +458 -12
  24. package/Server/API/GitHubAPI.ts +119 -283
  25. package/Server/API/UserAPI.ts +263 -1
  26. package/Server/EnvironmentConfig.ts +38 -4
  27. package/Server/Infrastructure/GlobalCache.ts +152 -0
  28. package/Server/Infrastructure/Postgres/DataSourceOptions.ts +16 -0
  29. package/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.ts +123 -0
  30. package/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.ts +21 -0
  31. package/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.ts +68 -0
  32. package/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.ts +100 -0
  33. package/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.ts +214 -0
  34. package/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.ts +69 -0
  35. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +12 -0
  36. package/Server/Services/AlertStateTimelineService.ts +20 -0
  37. package/Server/Services/AnalyticsDatabaseService.ts +72 -1
  38. package/Server/Services/CephClusterService.ts +26 -86
  39. package/Server/Services/CloudResourceService.ts +23 -83
  40. package/Server/Services/CodeRepositoryService.ts +105 -2
  41. package/Server/Services/DatabaseService.ts +296 -2
  42. package/Server/Services/DockerHostService.ts +19 -79
  43. package/Server/Services/DockerSwarmClusterService.ts +27 -88
  44. package/Server/Services/HostService.ts +46 -99
  45. package/Server/Services/IncidentStateTimelineService.ts +20 -0
  46. package/Server/Services/Index.ts +2 -0
  47. package/Server/Services/IoTFleetService.ts +19 -79
  48. package/Server/Services/KubernetesClusterService.ts +17 -78
  49. package/Server/Services/LabelService.ts +57 -10
  50. package/Server/Services/MetricTypeService.ts +84 -0
  51. package/Server/Services/MonitorService.ts +89 -14
  52. package/Server/Services/MonitorStatusTimelineService.ts +29 -0
  53. package/Server/Services/MonitorTemplateService.ts +65 -0
  54. package/Server/Services/OpenTelemetryIngestService.ts +230 -26
  55. package/Server/Services/PodmanHostService.ts +19 -79
  56. package/Server/Services/ProxmoxClusterService.ts +23 -83
  57. package/Server/Services/RumApplicationService.ts +19 -80
  58. package/Server/Services/ScheduledMaintenanceStateTimelineService.ts +21 -0
  59. package/Server/Services/ServerlessFunctionService.ts +24 -85
  60. package/Server/Services/ServiceService.ts +299 -73
  61. package/Server/Services/StatusPageMonitorRuleEngineService.ts +752 -0
  62. package/Server/Services/StatusPageMonitorRuleService.ts +471 -0
  63. package/Server/Services/TelemetryEntityRelationshipService.ts +1 -0
  64. package/Server/Services/TelemetryEntityService.ts +1 -0
  65. package/Server/Services/UserService.ts +184 -0
  66. package/Server/Utils/AI/Toolbox/CodeTools.ts +45 -4
  67. package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +13 -0
  68. package/Server/Utils/CodeRepository/GitHub/GitHub.ts +157 -4
  69. package/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.ts +130 -0
  70. package/Server/Utils/Database/ProjectScopedReferenceValidator.ts +170 -39
  71. package/Server/Utils/Monitor/MonitorResource.ts +63 -36
  72. package/Server/Utils/Monitor/MonitorStatusTimeline.ts +36 -0
  73. package/Server/Utils/Monitor/MonitorStepsProjectValidator.ts +148 -127
  74. package/Server/Utils/Monitor/MonitorStepsReferenceExtractor.ts +434 -0
  75. package/Server/Utils/PasswordHash.ts +306 -0
  76. package/Server/Utils/SingleFlight.ts +83 -0
  77. package/Server/Utils/StatusPage/MonitorRulePatternValidator.ts +46 -0
  78. package/Server/Utils/Telemetry/EntityRegistry.ts +107 -26
  79. package/Server/Utils/Telemetry/ResourceHeartbeat.ts +314 -0
  80. package/Server/Utils/Telemetry/Telemetry.ts +351 -122
  81. package/Tests/App/Dashboard/OverviewCustomFields.test.tsx +333 -0
  82. package/Tests/App/Dashboard/UserCustomFields.test.tsx +392 -0
  83. package/Tests/App/Dashboard/WidgetCatalog.test.ts +2 -0
  84. package/Tests/Models/DatabaseModels/ColumnTransformerInvariants.test.ts +306 -0
  85. package/Tests/Models/DatabaseModels/NumberColumnDeserialization.test.ts +333 -0
  86. package/Tests/Models/DatabaseModels/StatusPageMonitorRuleModel.test.ts +190 -0
  87. package/Tests/Server/API/AIAgentDataRepositoryToken.test.ts +381 -0
  88. package/Tests/Server/API/DashboardPublicAttributeValuesAPI.test.ts +943 -0
  89. package/Tests/Server/API/DashboardPublicMetricsAggregateAPI.test.ts +1296 -0
  90. package/Tests/Server/API/DashboardPublicResourceListAPI.test.ts +26 -0
  91. package/Tests/Server/API/DashboardPublicTemplatePayloads.test.ts +598 -0
  92. package/Tests/Server/API/GitHubAppInstallationBindingAPI.test.ts +539 -0
  93. package/Tests/Server/API/Helpers.ts +6 -1
  94. package/Tests/Server/API/UserProjectsAPI.test.ts +852 -0
  95. package/Tests/Server/Infrastructure/GlobalCache.test.ts +354 -0
  96. package/Tests/Server/Infrastructure/PostgresLockTimeoutOptions.test.ts +181 -0
  97. package/Tests/Server/Infrastructure/SemaphoreMutex.test.ts +215 -0
  98. package/Tests/Server/Services/AddPerUserPasswordSaltMigration.test.ts +178 -0
  99. package/Tests/Server/Services/AnalyticsDatabasePaginationStability.test.ts +582 -0
  100. package/Tests/Server/Services/AnalyticsDatabaseService.test.ts +5 -0
  101. package/Tests/Server/Services/CodeRepositoryInstallationBinding.test.ts +305 -0
  102. package/Tests/Server/Services/CodeRepositoryResolutionBinding.test.ts +147 -0
  103. package/Tests/Server/Services/DatabaseServicePerUserPasswordSalt.test.ts +870 -0
  104. package/Tests/Server/Services/DatabaseServiceUpdateColumnsIfUnlocked.test.ts +342 -0
  105. package/Tests/Server/Services/DropFilterSaveValidation.test.ts +245 -0
  106. package/Tests/Server/Services/HostServiceUpdateLastSeen.test.ts +163 -15
  107. package/Tests/Server/Services/MetricTypeAttachServices.test.ts +222 -0
  108. package/Tests/Server/Services/MissingReferenceWriteGuard.test.ts +614 -0
  109. package/Tests/Server/Services/MonitorStatusTimelineFastPath.test.ts +23 -0
  110. package/Tests/Server/Services/OpenTelemetryServiceResolutionCache.test.ts +568 -0
  111. package/Tests/Server/Services/ResourceUpdateLastSeenLivenessFallback.test.ts +305 -56
  112. package/Tests/Server/Services/RestoreDroppedUniqueIndexesMigration.test.ts +386 -0
  113. package/Tests/Server/Services/RestoreServiceLowerNameIndexMigration.test.ts +240 -0
  114. package/Tests/Server/Services/ServiceUpdateLastSeenSplitGates.test.ts +705 -0
  115. package/Tests/Server/Services/StatusPageMonitorRuleEngineService.test.ts +1719 -0
  116. package/Tests/Server/Services/StatusPageMonitorRuleHooks.test.ts +1212 -0
  117. package/Tests/Server/Services/StatusPageMonitorRuleMonitorCreateHook.test.ts +228 -0
  118. package/Tests/Server/Services/UserServiceFirstMasterAdminElection.test.ts +885 -0
  119. package/Tests/Server/Services/WidenHashedStringColumnsForScryptMigration.test.ts +220 -0
  120. package/Tests/Server/Utils/AI/CodeTools.test.ts +47 -1
  121. package/Tests/Server/Utils/AI/CodeWriteTools.test.ts +10 -0
  122. package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +267 -0
  123. package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +120 -0
  124. package/Tests/Server/Utils/CodeRepository/GitHubInstallationBinding.test.ts +292 -0
  125. package/Tests/Server/Utils/Database/ProjectScopedReferenceValidator.test.ts +260 -13
  126. package/Tests/Server/Utils/EntityRegistryRowFence.test.ts +302 -0
  127. package/Tests/Server/Utils/GitHubInstallationOwnershipVerification.test.ts +340 -0
  128. package/Tests/Server/Utils/GitHubWebhookAndTreeCacheIsolation.test.ts +250 -0
  129. package/Tests/Server/Utils/MetricTypeIndexConvergence.test.ts +598 -0
  130. package/Tests/Server/Utils/Monitor/MonitorStatusTimelineUnusableStatus.test.ts +154 -0
  131. package/Tests/Server/Utils/Monitor/MonitorStepsProjectValidator.test.ts +638 -92
  132. package/Tests/Server/Utils/Monitor/MonitorStepsReferenceExtractor.test.ts +724 -0
  133. package/Tests/Server/Utils/PasswordHash.test.ts +555 -0
  134. package/Tests/Server/Utils/SingleFlight.test.ts +221 -0
  135. package/Tests/Types/Dashboard/NetworkDashboardTemplate.test.ts +793 -0
  136. package/Tests/Types/Database/BigIntColumnTransformer.test.ts +147 -0
  137. package/Tests/Types/Database/ColumnLength.test.ts +7 -1
  138. package/Tests/Types/Database/DatabasePropertyTransformer.test.ts +140 -0
  139. package/Tests/Types/Database/NumericColumnValue.test.ts +127 -0
  140. package/Tests/Types/Decimal.test.ts +37 -0
  141. package/Tests/Types/HashedStringPerUserSalt.test.ts +476 -0
  142. package/Tests/Types/Monitor/DockerAlertTemplates.test.ts +293 -0
  143. package/Tests/Types/Monitor/HostAlertTemplates.test.ts +249 -0
  144. package/Tests/Types/Monitor/IotAlertTemplates.test.ts +320 -0
  145. package/Tests/Types/Monitor/PodmanAlertTemplates.test.ts +271 -0
  146. package/Tests/Types/Monitor/SnmpVersionParsing.test.ts +152 -0
  147. package/Tests/Types/Port.test.ts +38 -0
  148. package/Tests/UI/Components/CustomFields/CustomFieldsDetail.test.tsx +696 -0
  149. package/Tests/UI/Components/LogsHistogram.test.tsx +276 -0
  150. package/Tests/UI/Components/UseLiveLogsRefresh.test.tsx +489 -0
  151. package/Tests/UI/Components/UseLogsHistogram.test.tsx +500 -0
  152. package/Tests/UI/Utils/UserProjectsModelAPI.test.ts +714 -0
  153. package/Tests/Utils/Dashboard/Components/DashboardComponentsUtil.test.ts +120 -0
  154. package/Tests/Utils/Dashboard/DashboardNetworkMapComponent.test.ts +327 -0
  155. package/Tests/Utils/TeamMembersByProject.test.ts +655 -0
  156. package/Types/Dashboard/DashboardComponentType.ts +1 -0
  157. package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +1 -0
  158. package/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.ts +40 -0
  159. package/Types/Dashboard/DashboardTemplates.ts +397 -0
  160. package/Types/Database/BigIntColumnTransformer.ts +74 -0
  161. package/Types/Database/ColumnLength.ts +9 -1
  162. package/Types/Database/DatabaseProperty.ts +26 -0
  163. package/Types/Database/NumericColumnValue.ts +128 -0
  164. package/Types/Database/TableColumn.ts +11 -0
  165. package/Types/Database/UnsynchronizedIndex.ts +48 -0
  166. package/Types/Decimal.ts +16 -4
  167. package/Types/HashedString.ts +139 -4
  168. package/Types/Permission.ts +48 -0
  169. package/Types/Port.ts +16 -4
  170. package/UI/Components/CustomFields/CustomFieldsDetail.tsx +85 -11
  171. package/UI/Components/LogsViewer/useLiveLogsRefresh.ts +86 -0
  172. package/UI/Components/LogsViewer/useLogsHistogram.ts +113 -0
  173. package/UI/Components/Navbar/NavBar.tsx +12 -2
  174. package/UI/Components/Navbar/NavBarMenuModal.tsx +19 -7
  175. package/UI/Utils/ModelAPI/UserProjectsModelAPI.ts +257 -0
  176. package/Utils/Dashboard/Components/DashboardNetworkMapComponent.ts +136 -0
  177. package/Utils/Dashboard/Components/Index.ts +7 -0
  178. package/Utils/TeamMembersByProject.ts +237 -0
  179. package/build/dist/Models/DatabaseModels/CephCluster.js +16 -1
  180. package/build/dist/Models/DatabaseModels/CephCluster.js.map +1 -1
  181. package/build/dist/Models/DatabaseModels/CodeRepository.js +14 -6
  182. package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
  183. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js +12 -0
  184. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js.map +1 -1
  185. package/build/dist/Models/DatabaseModels/DockerHost.js +16 -1
  186. package/build/dist/Models/DatabaseModels/DockerHost.js.map +1 -1
  187. package/build/dist/Models/DatabaseModels/GlobalOidcProject.js +16 -1
  188. package/build/dist/Models/DatabaseModels/GlobalOidcProject.js.map +1 -1
  189. package/build/dist/Models/DatabaseModels/GlobalSsoProject.js +16 -1
  190. package/build/dist/Models/DatabaseModels/GlobalSsoProject.js.map +1 -1
  191. package/build/dist/Models/DatabaseModels/Index.js +2 -0
  192. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  193. package/build/dist/Models/DatabaseModels/IoTFleet.js +16 -1
  194. package/build/dist/Models/DatabaseModels/IoTFleet.js.map +1 -1
  195. package/build/dist/Models/DatabaseModels/KubernetesCluster.js +16 -1
  196. package/build/dist/Models/DatabaseModels/KubernetesCluster.js.map +1 -1
  197. package/build/dist/Models/DatabaseModels/LogDropFilter.js +9 -20
  198. package/build/dist/Models/DatabaseModels/LogDropFilter.js.map +1 -1
  199. package/build/dist/Models/DatabaseModels/NetworkDevice.js +16 -1
  200. package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
  201. package/build/dist/Models/DatabaseModels/NetworkInterface.js +16 -1
  202. package/build/dist/Models/DatabaseModels/NetworkInterface.js.map +1 -1
  203. package/build/dist/Models/DatabaseModels/Project.js +16 -2
  204. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  205. package/build/dist/Models/DatabaseModels/ProxmoxCluster.js +16 -1
  206. package/build/dist/Models/DatabaseModels/ProxmoxCluster.js.map +1 -1
  207. package/build/dist/Models/DatabaseModels/Service.js +28 -1
  208. package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
  209. package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js +925 -0
  210. package/build/dist/Models/DatabaseModels/StatusPageMonitorRule.js.map +1 -0
  211. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js +32 -0
  212. package/build/dist/Models/DatabaseModels/StatusPagePrivateUser.js.map +1 -1
  213. package/build/dist/Models/DatabaseModels/StatusPageResource.js +72 -0
  214. package/build/dist/Models/DatabaseModels/StatusPageResource.js.map +1 -1
  215. package/build/dist/Models/DatabaseModels/TraceDropFilter.js +9 -20
  216. package/build/dist/Models/DatabaseModels/TraceDropFilter.js.map +1 -1
  217. package/build/dist/Models/DatabaseModels/User.js +32 -0
  218. package/build/dist/Models/DatabaseModels/User.js.map +1 -1
  219. package/build/dist/Server/API/AIAgentDataAPI.js +21 -2
  220. package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
  221. package/build/dist/Server/API/BaseAPI.js +11 -1
  222. package/build/dist/Server/API/BaseAPI.js.map +1 -1
  223. package/build/dist/Server/API/DashboardAPI.js +343 -10
  224. package/build/dist/Server/API/DashboardAPI.js.map +1 -1
  225. package/build/dist/Server/API/GitHubAPI.js +94 -167
  226. package/build/dist/Server/API/GitHubAPI.js.map +1 -1
  227. package/build/dist/Server/API/UserAPI.js +187 -2
  228. package/build/dist/Server/API/UserAPI.js.map +1 -1
  229. package/build/dist/Server/EnvironmentConfig.js +34 -4
  230. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  231. package/build/dist/Server/Infrastructure/GlobalCache.js +120 -0
  232. package/build/dist/Server/Infrastructure/GlobalCache.js.map +1 -1
  233. package/build/dist/Server/Infrastructure/Postgres/DataSourceOptions.js +5 -3
  234. package/build/dist/Server/Infrastructure/Postgres/DataSourceOptions.js.map +1 -1
  235. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.js +48 -0
  236. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786005052769-AddStatusPageMonitorRule.js.map +1 -0
  237. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.js +14 -0
  238. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786018109307-AddPerUserPasswordSalt.js.map +1 -0
  239. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.js +59 -0
  240. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786023262402-WidenHashedStringColumnsForScrypt.js.map +1 -0
  241. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.js +93 -0
  242. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786100000000-RestoreServiceLowerNameIndex.js.map +1 -0
  243. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.js +101 -0
  244. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786200000000-RestoreDroppedUniqueIndexes.js.map +1 -0
  245. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.js +66 -0
  246. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1786300000000-QuarantineUnboundGitHubInstallations.js.map +1 -0
  247. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +12 -0
  248. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  249. package/build/dist/Server/Services/AlertStateTimelineService.js +19 -0
  250. package/build/dist/Server/Services/AlertStateTimelineService.js.map +1 -1
  251. package/build/dist/Server/Services/AnalyticsDatabaseService.js +57 -1
  252. package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
  253. package/build/dist/Server/Services/CephClusterService.js +26 -76
  254. package/build/dist/Server/Services/CephClusterService.js.map +1 -1
  255. package/build/dist/Server/Services/CloudResourceService.js +23 -73
  256. package/build/dist/Server/Services/CloudResourceService.js.map +1 -1
  257. package/build/dist/Server/Services/CodeRepositoryService.js +90 -2
  258. package/build/dist/Server/Services/CodeRepositoryService.js.map +1 -1
  259. package/build/dist/Server/Services/DatabaseService.js +246 -2
  260. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  261. package/build/dist/Server/Services/DockerHostService.js +19 -69
  262. package/build/dist/Server/Services/DockerHostService.js.map +1 -1
  263. package/build/dist/Server/Services/DockerSwarmClusterService.js +27 -78
  264. package/build/dist/Server/Services/DockerSwarmClusterService.js.map +1 -1
  265. package/build/dist/Server/Services/HostService.js +58 -102
  266. package/build/dist/Server/Services/HostService.js.map +1 -1
  267. package/build/dist/Server/Services/IncidentStateTimelineService.js +19 -0
  268. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  269. package/build/dist/Server/Services/Index.js +2 -0
  270. package/build/dist/Server/Services/Index.js.map +1 -1
  271. package/build/dist/Server/Services/IoTFleetService.js +19 -69
  272. package/build/dist/Server/Services/IoTFleetService.js.map +1 -1
  273. package/build/dist/Server/Services/KubernetesClusterService.js +17 -68
  274. package/build/dist/Server/Services/KubernetesClusterService.js.map +1 -1
  275. package/build/dist/Server/Services/LabelService.js +42 -7
  276. package/build/dist/Server/Services/LabelService.js.map +1 -1
  277. package/build/dist/Server/Services/MetricTypeService.js +74 -0
  278. package/build/dist/Server/Services/MetricTypeService.js.map +1 -1
  279. package/build/dist/Server/Services/MonitorService.js +81 -9
  280. package/build/dist/Server/Services/MonitorService.js.map +1 -1
  281. package/build/dist/Server/Services/MonitorStatusTimelineService.js +28 -0
  282. package/build/dist/Server/Services/MonitorStatusTimelineService.js.map +1 -1
  283. package/build/dist/Server/Services/MonitorTemplateService.js +60 -0
  284. package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
  285. package/build/dist/Server/Services/OpenTelemetryIngestService.js +155 -25
  286. package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
  287. package/build/dist/Server/Services/PodmanHostService.js +19 -69
  288. package/build/dist/Server/Services/PodmanHostService.js.map +1 -1
  289. package/build/dist/Server/Services/ProxmoxClusterService.js +23 -73
  290. package/build/dist/Server/Services/ProxmoxClusterService.js.map +1 -1
  291. package/build/dist/Server/Services/RumApplicationService.js +19 -70
  292. package/build/dist/Server/Services/RumApplicationService.js.map +1 -1
  293. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js +20 -0
  294. package/build/dist/Server/Services/ScheduledMaintenanceStateTimelineService.js.map +1 -1
  295. package/build/dist/Server/Services/ServerlessFunctionService.js +24 -75
  296. package/build/dist/Server/Services/ServerlessFunctionService.js.map +1 -1
  297. package/build/dist/Server/Services/ServiceService.js +236 -61
  298. package/build/dist/Server/Services/ServiceService.js.map +1 -1
  299. package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js +603 -0
  300. package/build/dist/Server/Services/StatusPageMonitorRuleEngineService.js.map +1 -0
  301. package/build/dist/Server/Services/StatusPageMonitorRuleService.js +401 -0
  302. package/build/dist/Server/Services/StatusPageMonitorRuleService.js.map +1 -0
  303. package/build/dist/Server/Services/TelemetryEntityRelationshipService.js +1 -0
  304. package/build/dist/Server/Services/TelemetryEntityRelationshipService.js.map +1 -1
  305. package/build/dist/Server/Services/TelemetryEntityService.js +1 -0
  306. package/build/dist/Server/Services/TelemetryEntityService.js.map +1 -1
  307. package/build/dist/Server/Services/UserService.js +165 -0
  308. package/build/dist/Server/Services/UserService.js.map +1 -1
  309. package/build/dist/Server/Utils/AI/Toolbox/CodeTools.js +31 -1
  310. package/build/dist/Server/Utils/AI/Toolbox/CodeTools.js.map +1 -1
  311. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +13 -0
  312. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
  313. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js +126 -4
  314. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js.map +1 -1
  315. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.js +136 -0
  316. package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubInstallationBinding.js.map +1 -0
  317. package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js +105 -29
  318. package/build/dist/Server/Utils/Database/ProjectScopedReferenceValidator.js.map +1 -1
  319. package/build/dist/Server/Utils/Monitor/MonitorResource.js +56 -32
  320. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  321. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js +30 -3
  322. package/build/dist/Server/Utils/Monitor/MonitorStatusTimeline.js.map +1 -1
  323. package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js +110 -98
  324. package/build/dist/Server/Utils/Monitor/MonitorStepsProjectValidator.js.map +1 -1
  325. package/build/dist/Server/Utils/Monitor/MonitorStepsReferenceExtractor.js +312 -0
  326. package/build/dist/Server/Utils/Monitor/MonitorStepsReferenceExtractor.js.map +1 -0
  327. package/build/dist/Server/Utils/PasswordHash.js +237 -0
  328. package/build/dist/Server/Utils/PasswordHash.js.map +1 -0
  329. package/build/dist/Server/Utils/SingleFlight.js +76 -0
  330. package/build/dist/Server/Utils/SingleFlight.js.map +1 -0
  331. package/build/dist/Server/Utils/StatusPage/MonitorRulePatternValidator.js +29 -0
  332. package/build/dist/Server/Utils/StatusPage/MonitorRulePatternValidator.js.map +1 -0
  333. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +78 -19
  334. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -1
  335. package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js +160 -0
  336. package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js.map +1 -0
  337. package/build/dist/Server/Utils/Telemetry/Telemetry.js +279 -104
  338. package/build/dist/Server/Utils/Telemetry/Telemetry.js.map +1 -1
  339. package/build/dist/Types/Dashboard/DashboardComponentType.js +1 -0
  340. package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
  341. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +1 -0
  342. package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
  343. package/build/dist/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.js +2 -0
  344. package/build/dist/Types/Dashboard/DashboardComponents/DashboardNetworkMapComponent.js.map +1 -0
  345. package/build/dist/Types/Dashboard/DashboardTemplates.js +368 -0
  346. package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
  347. package/build/dist/Types/Database/BigIntColumnTransformer.js +66 -0
  348. package/build/dist/Types/Database/BigIntColumnTransformer.js.map +1 -0
  349. package/build/dist/Types/Database/ColumnLength.js +9 -1
  350. package/build/dist/Types/Database/ColumnLength.js.map +1 -1
  351. package/build/dist/Types/Database/DatabaseProperty.js +25 -0
  352. package/build/dist/Types/Database/DatabaseProperty.js.map +1 -1
  353. package/build/dist/Types/Database/NumericColumnValue.js +97 -0
  354. package/build/dist/Types/Database/NumericColumnValue.js.map +1 -0
  355. package/build/dist/Types/Database/TableColumn.js.map +1 -1
  356. package/build/dist/Types/Database/UnsynchronizedIndex.js +46 -0
  357. package/build/dist/Types/Database/UnsynchronizedIndex.js.map +1 -0
  358. package/build/dist/Types/Decimal.js +14 -3
  359. package/build/dist/Types/Decimal.js.map +1 -1
  360. package/build/dist/Types/HashedString.js +95 -5
  361. package/build/dist/Types/HashedString.js.map +1 -1
  362. package/build/dist/Types/Permission.js +42 -0
  363. package/build/dist/Types/Permission.js.map +1 -1
  364. package/build/dist/Types/Port.js +15 -5
  365. package/build/dist/Types/Port.js.map +1 -1
  366. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +51 -10
  367. package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
  368. package/build/dist/UI/Components/LogsViewer/useLiveLogsRefresh.js +44 -0
  369. package/build/dist/UI/Components/LogsViewer/useLiveLogsRefresh.js.map +1 -0
  370. package/build/dist/UI/Components/LogsViewer/useLogsHistogram.js +75 -0
  371. package/build/dist/UI/Components/LogsViewer/useLogsHistogram.js.map +1 -0
  372. package/build/dist/UI/Components/Navbar/NavBar.js +3 -1
  373. package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
  374. package/build/dist/UI/Components/Navbar/NavBarMenuModal.js +19 -7
  375. package/build/dist/UI/Components/Navbar/NavBarMenuModal.js.map +1 -1
  376. package/build/dist/UI/Utils/ModelAPI/UserProjectsModelAPI.js +156 -0
  377. package/build/dist/UI/Utils/ModelAPI/UserProjectsModelAPI.js.map +1 -0
  378. package/build/dist/Utils/Dashboard/Components/DashboardNetworkMapComponent.js +114 -0
  379. package/build/dist/Utils/Dashboard/Components/DashboardNetworkMapComponent.js.map +1 -0
  380. package/build/dist/Utils/Dashboard/Components/Index.js +4 -0
  381. package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
  382. package/build/dist/Utils/TeamMembersByProject.js +145 -0
  383. package/build/dist/Utils/TeamMembersByProject.js.map +1 -0
  384. package/package.json +1 -1
@@ -0,0 +1,401 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __metadata = (this && this.__metadata) || function (k, v) {
8
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
+ };
10
+ import DatabaseService from "./DatabaseService";
11
+ import StatusPageMonitorRuleEngineService from "./StatusPageMonitorRuleEngineService";
12
+ import StatusPageGroupService from "./StatusPageGroupService";
13
+ import StatusPageResourceService from "./StatusPageResourceService";
14
+ import StatusPageService from "./StatusPageService";
15
+ import Model from "../../Models/DatabaseModels/StatusPageMonitorRule";
16
+ import { LIMIT_PER_PROJECT } from "../../Types/Database/LimitMax";
17
+ import BadDataException from "../../Types/Exception/BadDataException";
18
+ import ObjectID from "../../Types/ObjectID";
19
+ import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
20
+ import ProjectScopedReferenceValidator, { resolveReferenceId, } from "../Utils/Database/ProjectScopedReferenceValidator";
21
+ import StatusPageMonitorRulePatternValidator from "../Utils/StatusPage/MonitorRulePatternValidator";
22
+ import logger from "../Utils/Logger";
23
+ export class Service extends DatabaseService {
24
+ constructor() {
25
+ super(Model);
26
+ }
27
+ async onBeforeCreate(createBy) {
28
+ if (!createBy.data.statusPageId) {
29
+ throw new BadDataException("Status Page ID is required to create a status page monitor rule.");
30
+ }
31
+ this.assertHasMatchCriteria({
32
+ monitorLabelCount: (createBy.data.monitorLabels || []).length,
33
+ monitorNamePattern: createBy.data.monitorNamePattern,
34
+ monitorDescriptionPattern: createBy.data.monitorDescriptionPattern,
35
+ });
36
+ StatusPageMonitorRulePatternValidator.validate({
37
+ namePattern: createBy.data.monitorNamePattern,
38
+ descriptionPattern: createBy.data.monitorDescriptionPattern,
39
+ });
40
+ await this.assertReferencesAreInScope({
41
+ projectId: createBy.props.tenantId || createBy.data.projectId,
42
+ statusPageId: resolveReferenceId(createBy.data.statusPageId || createBy.data.statusPage),
43
+ statusPageGroupId: resolveReferenceId(createBy.data.statusPageGroupId || createBy.data.statusPageGroup),
44
+ });
45
+ return {
46
+ createBy: createBy,
47
+ carryForward: null,
48
+ };
49
+ }
50
+ async onCreateSuccess(_onCreate, createdItem) {
51
+ /*
52
+ * Backfill: a rule the user just wrote should populate the page with the
53
+ * monitors that already match, not only with ones created after it.
54
+ */
55
+ if (createdItem.id) {
56
+ await this.syncQuietly(createdItem.id);
57
+ }
58
+ return createdItem;
59
+ }
60
+ async onBeforeUpdate(updateBy) {
61
+ StatusPageMonitorRulePatternValidator.validate({
62
+ namePattern: updateBy.data.monitorNamePattern,
63
+ descriptionPattern: updateBy.data.monitorDescriptionPattern,
64
+ });
65
+ /*
66
+ * An edit can empty a rule out just as easily as a create can, and the
67
+ * result is the same useless rule. The merged view is what matters, so
68
+ * fields the edit does not mention are read back off the stored row -
69
+ * clearing only the labels on a rule that also has a name pattern is
70
+ * perfectly fine, and must not be refused.
71
+ */
72
+ await this.assertUpdateKeepsMatchCriteria(updateBy);
73
+ /*
74
+ * Re-pointing a rule at a different group is an ordinary edit, so the same
75
+ * scope checks the create path makes apply here. statusPageId is
76
+ * create-only in the column ACL, so only the group can move.
77
+ */
78
+ const nextGroupId = resolveReferenceId(updateBy.data["statusPageGroupId"] ||
79
+ updateBy.data["statusPageGroup"]);
80
+ if (nextGroupId) {
81
+ for (const rule of await this.findRulesForQuery(updateBy)) {
82
+ await this.assertReferencesAreInScope({
83
+ projectId: updateBy.props.tenantId || rule.projectId,
84
+ statusPageId: rule.statusPageId,
85
+ statusPageGroupId: nextGroupId,
86
+ });
87
+ }
88
+ }
89
+ return { updateBy, carryForward: null };
90
+ }
91
+ async onUpdateSuccess(onUpdate, updatedItemIds) {
92
+ /*
93
+ * Every editable field on this model changes what the rule matches or how
94
+ * the resources it owns are rendered, so any edit re-runs the rule. The
95
+ * sync is idempotent, so re-running it after a no-op edit costs a read.
96
+ */
97
+ for (const id of updatedItemIds) {
98
+ await this.syncQuietly(id);
99
+ }
100
+ return onUpdate;
101
+ }
102
+ /**
103
+ * Deleting a rule undoes it: the resources it added go too, and the monitors
104
+ * it was publishing are offered to the rules that survive.
105
+ *
106
+ * Every destructive step lives here rather than in onBeforeDelete, because
107
+ * DatabaseService applies checkDeleteQueryPermission *after* onBeforeDelete.
108
+ * A hook there sees the caller's raw, un-tenant-scoped query, so a
109
+ * root-privileged write from it would let a caller destroy another project's
110
+ * status page resources by naming that project's rule id, with the
111
+ * permission check only rejecting the (already moot) rule delete afterwards.
112
+ * `itemIdsBeforeDelete` is the permission-checked set, so acting on it is
113
+ * safe.
114
+ *
115
+ * By this point the StatusPageResource -> StatusPageMonitorRule foreign key
116
+ * has usually already cascaded the resources away, which makes the removal
117
+ * pass belt-and-braces rather than the primary mechanism. It is kept so the
118
+ * behaviour does not depend on the cascade staying as it is — and it is also
119
+ * why the monitor ids come from carryForward: after the cascade there is
120
+ * nothing left to read them off.
121
+ */
122
+ async onDeleteSuccess(onDelete, itemIdsBeforeDelete) {
123
+ var _a;
124
+ const monitorIdsByRuleId = ((_a = onDelete.carryForward) === null || _a === void 0 ? void 0 : _a.monitorIdsByRuleId) || {};
125
+ for (const statusPageMonitorRuleId of itemIdsBeforeDelete) {
126
+ try {
127
+ await StatusPageMonitorRuleEngineService.removeResourcesAddedByRule({
128
+ statusPageMonitorRuleId: statusPageMonitorRuleId,
129
+ });
130
+ }
131
+ catch (error) {
132
+ logger.error(`Error removing resources added by status page monitor rule ${statusPageMonitorRuleId.toString()}: ${error}`, {
133
+ statusPageMonitorRuleId: statusPageMonitorRuleId.toString(),
134
+ });
135
+ }
136
+ /*
137
+ * Deleting a rule must behave like disabling one. Disabling routes
138
+ * through syncResourcesForRule, which hands each released monitor to the
139
+ * other rules on the page; without this, deleting would instead drop a
140
+ * monitor that a sibling rule still claims — the same rule, switched off
141
+ * two different ways, giving two different pages.
142
+ */
143
+ for (const monitorId of monitorIdsByRuleId[statusPageMonitorRuleId.toString()] || []) {
144
+ try {
145
+ await StatusPageMonitorRuleEngineService.syncRulesForMonitor({
146
+ monitorId: new ObjectID(monitorId),
147
+ projectId: onDelete.deleteBy.props.tenantId,
148
+ });
149
+ }
150
+ catch (error) {
151
+ logger.error(`Error re-homing monitor ${monitorId} after status page monitor rule ${statusPageMonitorRuleId.toString()} was deleted: ${error}`, { monitorId: monitorId });
152
+ }
153
+ }
154
+ }
155
+ return onDelete;
156
+ }
157
+ /**
158
+ * Notes down which monitors each doomed rule is publishing, so
159
+ * onDeleteSuccess can offer them to the rules that survive.
160
+ *
161
+ * This has to happen before the delete because the StatusPageResource ->
162
+ * StatusPageMonitorRule foreign key is ON DELETE CASCADE: by the time the
163
+ * rule row is gone, so are the resources that named the monitors.
164
+ *
165
+ * It is READ ONLY, and reads through the caller's own props rather than as
166
+ * root. onBeforeDelete runs before checkDeleteQueryPermission, so anything
167
+ * here sees the caller's raw query — a root-privileged write from this hook
168
+ * would let a caller destroy another project's status page resources by
169
+ * naming that project's rule id.
170
+ */
171
+ async onBeforeDelete(deleteBy) {
172
+ const monitorIdsByRuleId = {};
173
+ try {
174
+ const rules = await this.findBy({
175
+ query: deleteBy.query,
176
+ select: {
177
+ _id: true,
178
+ },
179
+ limit: LIMIT_PER_PROJECT,
180
+ skip: 0,
181
+ props: deleteBy.props,
182
+ });
183
+ for (const rule of rules) {
184
+ if (!rule.id) {
185
+ continue;
186
+ }
187
+ const resources = await StatusPageResourceService.findBy({
188
+ query: {
189
+ statusPageMonitorRuleId: rule.id,
190
+ },
191
+ select: {
192
+ monitorId: true,
193
+ },
194
+ limit: LIMIT_PER_PROJECT,
195
+ skip: 0,
196
+ props: {
197
+ isRoot: true,
198
+ },
199
+ });
200
+ monitorIdsByRuleId[rule.id.toString()] = resources
201
+ .map((resource) => {
202
+ var _a;
203
+ return ((_a = resource.monitorId) === null || _a === void 0 ? void 0 : _a.toString()) || "";
204
+ })
205
+ .filter((monitorId) => {
206
+ return monitorId !== "";
207
+ });
208
+ }
209
+ }
210
+ catch (error) {
211
+ /*
212
+ * Best effort. Failing to note the monitors down must not block the
213
+ * delete; the worst case is that a sibling rule re-adopts them on its
214
+ * next run instead of immediately.
215
+ */
216
+ logger.error(`Error collecting monitors published by status page monitor rules before delete: ${error}`);
217
+ }
218
+ return { deleteBy, carryForward: { monitorIdsByRuleId } };
219
+ }
220
+ /**
221
+ * A rule points at a status page, and optionally at a group on that page.
222
+ * Neither is checked by the framework, and both decide what ends up on a
223
+ * PUBLIC page, so both are checked here:
224
+ *
225
+ * - a status page from another project would let one tenant publish its
226
+ * monitors on another tenant's status page;
227
+ * - a group belonging to a different status page would produce resources
228
+ * that render nowhere, because the page only draws groups that are its
229
+ * own — a rule that silently adds invisible monitors.
230
+ */
231
+ async assertReferencesAreInScope(data) {
232
+ var _a;
233
+ await ProjectScopedReferenceValidator.validateReferencesBelongToProject({
234
+ projectId: data.projectId,
235
+ subject: "status page monitor rule",
236
+ references: [
237
+ {
238
+ modelName: "Status Page",
239
+ id: data.statusPageId,
240
+ service: StatusPageService,
241
+ },
242
+ {
243
+ modelName: "Status Page Group",
244
+ id: data.statusPageGroupId,
245
+ service: StatusPageGroupService,
246
+ },
247
+ ],
248
+ });
249
+ if (!data.statusPageGroupId || !data.statusPageId) {
250
+ return;
251
+ }
252
+ const group = await StatusPageGroupService.findOneById({
253
+ id: new ObjectID(data.statusPageGroupId.toString()),
254
+ select: {
255
+ _id: true,
256
+ statusPageId: true,
257
+ },
258
+ props: {
259
+ isRoot: true,
260
+ },
261
+ });
262
+ /*
263
+ * A group id that matches no row at all is left to the foreign key to
264
+ * report, the same call the project-scope validator above makes.
265
+ */
266
+ if (!group) {
267
+ return;
268
+ }
269
+ if (((_a = group.statusPageId) === null || _a === void 0 ? void 0 : _a.toString()) !== data.statusPageId.toString()) {
270
+ throw new BadDataException("The group this rule adds monitors to belongs to a different status page. Pick a group on the status page the rule is for.");
271
+ }
272
+ }
273
+ /**
274
+ * A rule with no criteria would claim every monitor in the project. An empty
275
+ * form is much more likely to be an unfinished one, and the cost of guessing
276
+ * wrong is a private monitor on a public page — so say so instead.
277
+ */
278
+ assertHasMatchCriteria(data) {
279
+ if (data.monitorLabelCount === 0 &&
280
+ !data.monitorNamePattern &&
281
+ !data.monitorDescriptionPattern) {
282
+ throw new BadDataException("A status page monitor rule needs at least one match criterion: monitor labels, a monitor name pattern, or a monitor description pattern. Use .* as the name pattern to match every monitor.");
283
+ }
284
+ }
285
+ /**
286
+ * The rules an update actually touches, read for validation.
287
+ *
288
+ * onBeforeUpdate runs before DatabaseService applies the update query's
289
+ * permission check, so the query here is still the caller's raw one. The
290
+ * tenant is pinned onto it when the caller has one, so a validation read can
291
+ * never reach across projects and answer questions about another tenant's
292
+ * rules. Genuinely root callers (the engines, migrations) have no tenantId
293
+ * and are trusted.
294
+ */
295
+ async findRulesForQuery(updateBy) {
296
+ const query = Object.assign({}, updateBy.query);
297
+ if (updateBy.props.tenantId) {
298
+ query["projectId"] = updateBy.props.tenantId;
299
+ }
300
+ return await this.findBy({
301
+ query: query,
302
+ select: {
303
+ _id: true,
304
+ projectId: true,
305
+ statusPageId: true,
306
+ monitorLabels: {
307
+ _id: true,
308
+ },
309
+ monitorNamePattern: true,
310
+ monitorDescriptionPattern: true,
311
+ },
312
+ limit: LIMIT_PER_PROJECT,
313
+ skip: 0,
314
+ props: {
315
+ isRoot: true,
316
+ },
317
+ });
318
+ }
319
+ /**
320
+ * The create-time criteria check, applied to what the rule will look like
321
+ * after this edit. Every rule the edit touches has to survive it.
322
+ */
323
+ async assertUpdateKeepsMatchCriteria(updateBy) {
324
+ const touchesCriteria = updateBy.data.monitorLabels !== undefined ||
325
+ updateBy.data.monitorNamePattern !== undefined ||
326
+ updateBy.data.monitorDescriptionPattern !== undefined;
327
+ if (!touchesCriteria) {
328
+ return;
329
+ }
330
+ const rules = await this.findRulesForQuery(updateBy);
331
+ const nextLabels = updateBy.data
332
+ .monitorLabels;
333
+ for (const rule of rules) {
334
+ this.assertHasMatchCriteria({
335
+ monitorLabelCount: (nextLabels === undefined
336
+ ? rule.monitorLabels || []
337
+ : nextLabels).length,
338
+ monitorNamePattern: updateBy.data.monitorNamePattern === undefined
339
+ ? rule.monitorNamePattern
340
+ : updateBy.data.monitorNamePattern,
341
+ monitorDescriptionPattern: updateBy.data.monitorDescriptionPattern === undefined
342
+ ? rule.monitorDescriptionPattern
343
+ : updateBy.data.monitorDescriptionPattern,
344
+ });
345
+ }
346
+ }
347
+ /**
348
+ * Rule CRUD must not fail because the sync did. The rule is already saved
349
+ * and the next monitor change (or the next edit) re-runs it.
350
+ */
351
+ async syncQuietly(statusPageMonitorRuleId) {
352
+ try {
353
+ await StatusPageMonitorRuleEngineService.syncResourcesForRule({
354
+ statusPageMonitorRuleId: statusPageMonitorRuleId,
355
+ });
356
+ }
357
+ catch (error) {
358
+ logger.error(`Error syncing status page monitor rule ${statusPageMonitorRuleId.toString()}: ${error}`, {
359
+ statusPageMonitorRuleId: statusPageMonitorRuleId.toString(),
360
+ });
361
+ }
362
+ }
363
+ }
364
+ __decorate([
365
+ CaptureSpan(),
366
+ __metadata("design:type", Function),
367
+ __metadata("design:paramtypes", [Object]),
368
+ __metadata("design:returntype", Promise)
369
+ ], Service.prototype, "onBeforeCreate", null);
370
+ __decorate([
371
+ CaptureSpan(),
372
+ __metadata("design:type", Function),
373
+ __metadata("design:paramtypes", [Object, Model]),
374
+ __metadata("design:returntype", Promise)
375
+ ], Service.prototype, "onCreateSuccess", null);
376
+ __decorate([
377
+ CaptureSpan(),
378
+ __metadata("design:type", Function),
379
+ __metadata("design:paramtypes", [Object]),
380
+ __metadata("design:returntype", Promise)
381
+ ], Service.prototype, "onBeforeUpdate", null);
382
+ __decorate([
383
+ CaptureSpan(),
384
+ __metadata("design:type", Function),
385
+ __metadata("design:paramtypes", [Object, Array]),
386
+ __metadata("design:returntype", Promise)
387
+ ], Service.prototype, "onUpdateSuccess", null);
388
+ __decorate([
389
+ CaptureSpan(),
390
+ __metadata("design:type", Function),
391
+ __metadata("design:paramtypes", [Object, Array]),
392
+ __metadata("design:returntype", Promise)
393
+ ], Service.prototype, "onDeleteSuccess", null);
394
+ __decorate([
395
+ CaptureSpan(),
396
+ __metadata("design:type", Function),
397
+ __metadata("design:paramtypes", [Object]),
398
+ __metadata("design:returntype", Promise)
399
+ ], Service.prototype, "onBeforeDelete", null);
400
+ export default new Service();
401
+ //# sourceMappingURL=StatusPageMonitorRuleService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StatusPageMonitorRuleService.js","sourceRoot":"","sources":["../../../../Server/Services/StatusPageMonitorRuleService.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,7 @@ export class TelemetryEntityRelationshipService extends DatabaseService {
49
49
  },
50
50
  lastSeenAt: now,
51
51
  describe: `edge ${edge.fromEntityKey}-[${edge.relationshipType}]->${edge.toEntityKey}`,
52
+ rowFenceId: `${projectId.toString()}:${edge.fromEntityKey}:${edge.toEntityKey}:${edge.relationshipType}`,
52
53
  buildModel: () => {
53
54
  const model = new Model();
54
55
  model.projectId = projectId;
@@ -1 +1 @@
1
- {"version":3,"file":"TelemetryEntityRelationshipService.js","sourceRoot":"","sources":["../../../../Server/Services/TelemetryEntityRelationshipService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,yDAAyD,CAAC;AAE5E,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,WAAW,MAAM,gCAAgC,CAAC;AAEzD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAG1E,MAAM,OAAO,kCAAmC,SAAQ,eAAsB;IAC5E;QACE,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IAEU,AAAN,KAAK,CAAC,sBAAsB,CAAC,IAGnC;QACC,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YAC9B,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,kBAAkB,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YACrE,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,MAAM,CAAC,KAAK,CACV,6DAA6D,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,gBAAgB,MAAM,IAAI,CAAC,WAAW,GAAG,CACnI,CAAC;gBACF,MAAM,CAAC,KAAK,CAAC,GAAY,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,IAGhC;QACC,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACjC,MAAM,GAAG,GAAS,aAAa,CAAC,cAAc,EAAE,CAAC;QAEjD,MAAM,qBAAqB,CAAC;YAC1B,OAAO,EAAE,IAAI;YACb,KAAK,EAAE;gBACL,SAAS;gBACT,aAAa,EAAE,IAAI,CAAC,aAAa;gBACjC,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;aACxC;YACD,UAAU,EAAE,GAAG;YACf,QAAQ,EAAE,QAAQ,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,gBAAgB,MAAM,IAAI,CAAC,WAAW,EAAE;YACtF,UAAU,EAAE,GAAG,EAAE;gBACf,MAAM,KAAK,GAAU,IAAI,KAAK,EAAE,CAAC;gBACjC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC5B,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC;gBACzC,KAAK,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;gBACrC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAC;gBAC/C,KAAK,CAAC,WAAW,GAAG,GAAG,CAAC;gBACxB,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC;gBACvB,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;oBACjB,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;oBACzC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;oBAC3C,KAAK,CAAC,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;gBACnD,CAAC;gBACD,OAAO,KAAK,CAAC;YACf,CAAC;YACD;;;;;;eAMG;YACH,WAAW,EAAE,GAAkC,EAAE;gBAC/C,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;oBAClB,OAAO,EAAmC,CAAC;gBAC7C,CAAC;gBACD,OAAO;oBACL,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;oBACjC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU;oBACnC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa;iBACE,CAAC;YAChD,CAAC;SACF,CAAC,CAAC;IACL,CAAC;CACF;AAnEc;IADZ,WAAW,EAAE;;;;gFAeb;AAuDH,eAAe,IAAI,kCAAkC,EAAE,CAAC"}
1
+ {"version":3,"file":"TelemetryEntityRelationshipService.js","sourceRoot":"","sources":["../../../../Server/Services/TelemetryEntityRelationshipService.ts"],"names":[],"mappings":"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"}
@@ -116,6 +116,7 @@ export class TelemetryEntityService extends DatabaseService {
116
116
  },
117
117
  lastSeenAt: now,
118
118
  describe: `entity ${entity.entityType}/${entity.entityKey}`,
119
+ rowFenceId: `${projectId.toString()}:${entity.entityType}:${entity.entityKey}`,
119
120
  select: { descriptiveAttributes: true, labels: true, resourceId: true },
120
121
  buildUpdate: (existing) => {
121
122
  var _a;
@@ -1 +1 @@
1
- {"version":3,"file":"TelemetryEntityService.js","sourceRoot":"","sources":["../../../../Server/Services/TelemetryEntityService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TelemetryEntityService.js","sourceRoot":"","sources":["../../../../Server/Services/TelemetryEntityService.ts"],"names":[],"mappings":"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"}