@oneuptime/common 14.0.2 → 14.0.5

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 (765) hide show
  1. package/Models/DatabaseModels/Alert.ts +55 -0
  2. package/Models/DatabaseModels/AlertFeed.ts +2 -0
  3. package/Models/DatabaseModels/DatabaseServer.ts +1650 -0
  4. package/Models/DatabaseModels/DatabaseServerEndpoint.ts +540 -0
  5. package/Models/DatabaseModels/DatabaseServerFeed.ts +625 -0
  6. package/Models/DatabaseModels/DatabaseServerLabelRule.ts +514 -0
  7. package/Models/DatabaseModels/DatabaseServerOwnerRule.ts +596 -0
  8. package/Models/DatabaseModels/DatabaseServerOwnerTeam.ts +491 -0
  9. package/Models/DatabaseModels/DatabaseServerOwnerUser.ts +490 -0
  10. package/Models/DatabaseModels/Incident.ts +55 -0
  11. package/Models/DatabaseModels/IncidentAlert.ts +540 -0
  12. package/Models/DatabaseModels/IncidentFeed.ts +2 -0
  13. package/Models/DatabaseModels/Index.ts +18 -0
  14. package/Models/DatabaseModels/NetworkDeviceDiscoveryScan.ts +26 -0
  15. package/Models/DatabaseModels/Project.ts +60 -0
  16. package/Models/DatabaseModels/RumApplication.ts +52 -1
  17. package/Models/DatabaseModels/ScheduledMaintenance.ts +55 -0
  18. package/Models/DatabaseModels/TelemetryException.ts +2 -0
  19. package/Models/DatabaseModels/UserProjectSsoConsent.ts +146 -0
  20. package/Server/Infrastructure/Postgres/SchemaMigrations/1794800000000-AddSessionReplaySameOriginTracePropagation.ts +28 -0
  21. package/Server/Infrastructure/Postgres/SchemaMigrations/1794900000000-AddIncidentAlert.ts +89 -0
  22. package/Server/Infrastructure/Postgres/SchemaMigrations/1795000000000-AddDatabaseServerTables.ts +673 -0
  23. package/Server/Infrastructure/Postgres/SchemaMigrations/1795100000000-AddUserProjectSsoConsent.ts +51 -0
  24. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
  25. package/Server/Middleware/MultipartFormData.ts +1 -1
  26. package/Server/Middleware/TelemetryIngest.ts +15 -8
  27. package/Server/Services/AlertReminderRuleService.ts +100 -24
  28. package/Server/Services/DatabaseServerEndpointService.ts +895 -0
  29. package/Server/Services/DatabaseServerFeedService.ts +128 -0
  30. package/Server/Services/DatabaseServerLabelRuleEngineService.ts +340 -0
  31. package/Server/Services/DatabaseServerLabelRuleService.ts +14 -0
  32. package/Server/Services/DatabaseServerOwnerRuleEngineService.ts +425 -0
  33. package/Server/Services/DatabaseServerOwnerRuleService.ts +14 -0
  34. package/Server/Services/DatabaseServerOwnerTeamService.ts +180 -0
  35. package/Server/Services/DatabaseServerOwnerUserService.ts +173 -0
  36. package/Server/Services/DatabaseServerService.ts +4546 -0
  37. package/Server/Services/DatabaseService.ts +14 -8
  38. package/Server/Services/DockerResourceService.ts +43 -2
  39. package/Server/Services/IncidentAlertService.ts +1811 -0
  40. package/Server/Services/IncidentReminderRuleService.ts +103 -23
  41. package/Server/Services/IncidentService.ts +210 -10
  42. package/Server/Services/IncidentStateTimelineService.ts +24 -0
  43. package/Server/Services/Index.ts +18 -0
  44. package/Server/Services/InventoryItemService.ts +113 -5
  45. package/Server/Services/IoTDeviceService.ts +145 -37
  46. package/Server/Services/OpenTelemetryIngestService.ts +19 -0
  47. package/Server/Services/PodmanResourceService.ts +43 -2
  48. package/Server/Services/ScheduledMaintenanceReminderRuleService.ts +107 -23
  49. package/Server/Services/ServiceService.ts +1 -1
  50. package/Server/Services/TelemetryUsageBillingService.ts +29 -2
  51. package/Server/Services/UserProjectSsoConsentService.ts +74 -0
  52. package/Server/Services/UserService.ts +14 -1
  53. package/Server/Types/Database/Permissions/OwnerTableRegistry.ts +18 -0
  54. package/Server/Types/Database/QueryHelper.ts +30 -1
  55. package/Server/Utils/AI/Toolbox/ResourceTools.ts +69 -1
  56. package/Server/Utils/Database/AffectedResourceRelations.ts +6 -0
  57. package/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.ts +188 -6
  58. package/Server/Utils/Monitor/MonitorAlert.ts +28 -1
  59. package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +2262 -755
  60. package/Server/Utils/Monitor/MonitorIncident.ts +28 -1
  61. package/Server/Utils/Monitor/MonitorMaintenanceSuppression.ts +268 -6
  62. package/Server/Utils/Monitor/MonitorResource.ts +47 -11
  63. package/Server/Utils/Monitor/MonitorResourceContext.ts +1 -0
  64. package/Server/Utils/Monitor/MonitorStepResourceIdentity.ts +239 -21
  65. package/Server/Utils/Monitor/PerSeriesResolutionRootCause.ts +43 -0
  66. package/Server/Utils/Monitor/SeriesResourceLabels.ts +291 -0
  67. package/Server/Utils/Monitor/SeriesResourceLinker.ts +111 -12
  68. package/Server/Utils/Rules/RuleRun/RuleRunRegistry.ts +25 -0
  69. package/Server/Utils/SessionReplay/SessionReplayGateCache.ts +24 -2
  70. package/Server/Utils/StartServer.ts +26 -6
  71. package/Server/Utils/TeamMember/ProjectLeaveResourceCleanup.ts +2 -0
  72. package/Server/Utils/Telemetry/DatabaseEndpointDiscovery.ts +688 -0
  73. package/Server/Utils/Telemetry/EntityRegistry.ts +5 -1
  74. package/Server/Utils/Telemetry/LogExceptionExtractor.ts +18 -1
  75. package/Server/Utils/Telemetry/ResourceEntityFilter.ts +175 -12
  76. package/Server/Utils/Telemetry/ResourceFacetResolver.ts +12 -0
  77. package/Server/Utils/Telemetry/ServiceDependencyDiscovery.ts +606 -36
  78. package/Server/Utils/Telemetry/Telemetry.ts +16 -0
  79. package/Server/Utils/Telemetry/TelemetryEntity.ts +22 -22
  80. package/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.ts +16 -10
  81. package/Tests/App/Accounts/SignedInRedirect.test.tsx +241 -0
  82. package/Tests/App/AdminDashboard/AdminHeaderSmallScreens.test.tsx +221 -4
  83. package/Tests/App/Dashboard/AIInsightsResourcePageContext.test.ts +42 -0
  84. package/Tests/App/Dashboard/AffectedResourcesDisplay.test.tsx +100 -0
  85. package/Tests/App/Dashboard/AffectedResourcesPicker.test.tsx +86 -0
  86. package/Tests/App/Dashboard/AffectedResourcesPickerHiddenTypes.test.tsx +2 -0
  87. package/Tests/App/Dashboard/AffectedResourcesSummaryStep.test.tsx +19 -0
  88. package/Tests/App/Dashboard/BreadcrumbCoverage.test.tsx +14 -0
  89. package/Tests/App/Dashboard/BulkIncidentLinkActions.test.tsx +869 -0
  90. package/Tests/App/Dashboard/CephMetricTooltips.test.tsx +1777 -0
  91. package/Tests/App/Dashboard/CloudFleetSummary.test.ts +8 -0
  92. package/Tests/App/Dashboard/CloudMetricTooltips.test.tsx +887 -0
  93. package/Tests/App/Dashboard/ContainerHostMetricTooltips.test.tsx +1309 -0
  94. package/Tests/App/Dashboard/CorrelateFilterBuilder.test.tsx +26 -1
  95. package/Tests/App/Dashboard/DashboardAppSsoError.test.tsx +501 -0
  96. package/Tests/App/Dashboard/DashboardHeaderRequests.test.tsx +64 -1
  97. package/Tests/App/Dashboard/DashboardHeaderSmallScreens.test.tsx +178 -18
  98. package/Tests/App/Dashboard/DashboardMasterPageSsoRedirect.test.tsx +444 -0
  99. package/Tests/App/Dashboard/DashboardNavBarForeignHiddenRule.test.tsx +573 -0
  100. package/Tests/App/Dashboard/DatabaseChartAxes.test.tsx +431 -0
  101. package/Tests/App/Dashboard/DatabaseContainerDetailBadge.test.tsx +249 -0
  102. package/Tests/App/Dashboard/DatabaseDashboardE2EFixes.test.ts +681 -0
  103. package/Tests/App/Dashboard/DatabaseDocumentationMarkdown.test.ts +1801 -0
  104. package/Tests/App/Dashboard/DatabaseFleetSummaryRefresh.test.tsx +280 -0
  105. package/Tests/App/Dashboard/DatabaseFormHelpers.test.tsx +321 -0
  106. package/Tests/App/Dashboard/DatabaseMetricMonitorLink.test.tsx +795 -0
  107. package/Tests/App/Dashboard/DatabaseOverviewHeader.test.tsx +580 -0
  108. package/Tests/App/Dashboard/DatabaseRecommendationsEngineMetrics.test.ts +270 -0
  109. package/Tests/App/Dashboard/DatabaseServerComponents.test.tsx +1486 -0
  110. package/Tests/App/Dashboard/DatabaseServerEngineMetricsFilter.test.ts +223 -0
  111. package/Tests/App/Dashboard/DatabaseServerPresentation.test.ts +435 -0
  112. package/Tests/App/Dashboard/DatabaseServerSummary.test.ts +186 -0
  113. package/Tests/App/Dashboard/DatabaseServerTelemetryQueries.test.ts +1553 -0
  114. package/Tests/App/Dashboard/DatabaseTableTruncation.test.tsx +326 -0
  115. package/Tests/App/Dashboard/DatabaseTelemetryScope.test.ts +512 -0
  116. package/Tests/App/Dashboard/DatabaseTelemetryTabs.test.tsx +774 -0
  117. package/Tests/App/Dashboard/DatabaseViewLayout.test.tsx +233 -0
  118. package/Tests/App/Dashboard/DatabaseWorkloadBadge.test.tsx +972 -0
  119. package/Tests/App/Dashboard/DiscoveryReviewInventoryRefresh.test.tsx +5 -0
  120. package/Tests/App/Dashboard/DiscoveryReviewUnnamedHostHint.test.tsx +1061 -0
  121. package/Tests/App/Dashboard/DiscoveryScanLivePage.test.tsx +39 -0
  122. package/Tests/App/Dashboard/DockerSwarmClustersListTooltips.test.tsx +414 -0
  123. package/Tests/App/Dashboard/DockerSwarmMetricTooltips.test.ts +796 -0
  124. package/Tests/App/Dashboard/DockerSwarmOverviewTooltips.test.tsx +747 -0
  125. package/Tests/App/Dashboard/EventOverlayScope.test.ts +147 -0
  126. package/Tests/App/Dashboard/EventOverlayScopeHook.test.tsx +1 -0
  127. package/Tests/App/Dashboard/ExceptionMonitorEnvironmentFilter.test.tsx +38 -18
  128. package/Tests/App/Dashboard/HostDetailViewTooltips.test.tsx +725 -0
  129. package/Tests/App/Dashboard/HostListColumnTooltips.test.tsx +472 -0
  130. package/Tests/App/Dashboard/HostMetricTooltips.test.ts +709 -0
  131. package/Tests/App/Dashboard/HostOverviewTooltips.test.tsx +698 -0
  132. package/Tests/App/Dashboard/HostTooltipHarness.ts +124 -0
  133. package/Tests/App/Dashboard/HostsListTooltips.test.tsx +395 -0
  134. package/Tests/App/Dashboard/IncidentAlertLinkDialog.test.tsx +691 -0
  135. package/Tests/App/Dashboard/IncidentAlertLinkHelpers.test.ts +458 -0
  136. package/Tests/App/Dashboard/IncidentAlertLinkPages.test.tsx +828 -0
  137. package/Tests/App/Dashboard/IncidentAlertLinkSideMenus.test.tsx +231 -0
  138. package/Tests/App/Dashboard/IncidentCreateFromAlerts.test.tsx +689 -0
  139. package/Tests/App/Dashboard/IoTMetricTooltips.test.tsx +1123 -0
  140. package/Tests/App/Dashboard/KubernetesClusterMetricTooltips.test.ts +837 -0
  141. package/Tests/App/Dashboard/KubernetesClusterOverviewTooltips.test.tsx +699 -0
  142. package/Tests/App/Dashboard/KubernetesContainersTabTooltips.test.tsx +320 -0
  143. package/Tests/App/Dashboard/KubernetesCostTooltips.test.tsx +502 -0
  144. package/Tests/App/Dashboard/KubernetesInsightsTooltips.test.tsx +222 -0
  145. package/Tests/App/Dashboard/KubernetesResourceMetricTooltips.test.ts +561 -0
  146. package/Tests/App/Dashboard/KubernetesResourcePagesTooltips.test.tsx +1168 -0
  147. package/Tests/App/Dashboard/LinkIncidentAlertModal.test.tsx +154 -0
  148. package/Tests/App/Dashboard/LogsResourceFacetChips.test.tsx +1 -0
  149. package/Tests/App/Dashboard/MetricDescriptionRules.ts +170 -0
  150. package/Tests/App/Dashboard/MetricDescriptionsCatalog.test.ts +206 -0
  151. package/Tests/App/Dashboard/MetricDescriptionsConsistency.test.ts +275 -0
  152. package/Tests/App/Dashboard/MetricsViewerDrillDown.test.tsx +310 -0
  153. package/Tests/App/Dashboard/MetricsViewerEntityScopedRows.test.tsx +495 -0
  154. package/Tests/App/Dashboard/MonitorCreateFromMonitorBackedDevice.test.tsx +132 -1
  155. package/Tests/App/Dashboard/NavigationSearchKeywords.test.tsx +5 -0
  156. package/Tests/App/Dashboard/NetworkDeviceTooltips.test.tsx +852 -0
  157. package/Tests/App/Dashboard/NetworkDiagnosticsTooltips.test.tsx +556 -0
  158. package/Tests/App/Dashboard/NetworkMetricTooltips.test.ts +1348 -0
  159. package/Tests/App/Dashboard/NetworkSiteTooltips.test.tsx +679 -0
  160. package/Tests/App/Dashboard/ProductOrientation.test.tsx +4 -3
  161. package/Tests/App/Dashboard/ProxmoxMetricTooltips.test.ts +592 -0
  162. package/Tests/App/Dashboard/ProxmoxOverviewTooltips.test.tsx +1002 -0
  163. package/Tests/App/Dashboard/ProxmoxResourcePageTooltips.test.tsx +923 -0
  164. package/Tests/App/Dashboard/RecommendationsLoadedContext.test.tsx +349 -0
  165. package/Tests/App/Dashboard/ResourceArchiveSettings.test.tsx +62 -0
  166. package/Tests/App/Dashboard/ResourceFeedPageWiring.test.ts +8 -1
  167. package/Tests/App/Dashboard/ResourceFeedPagesFilterSort.test.tsx +14 -0
  168. package/Tests/App/Dashboard/ResourceOverviewTileTooltips.test.tsx +1066 -0
  169. package/Tests/App/Dashboard/RumOverviewPage.test.tsx +1195 -0
  170. package/Tests/App/Dashboard/ScheduledMaintenanceOverviewPage.test.tsx +2 -0
  171. package/Tests/App/Dashboard/ServerlessMetricTooltips.test.tsx +474 -0
  172. package/Tests/App/Dashboard/ServiceMapDatabaseLink.test.tsx +1085 -0
  173. package/Tests/App/Dashboard/ServiceMetricTooltips.test.tsx +772 -0
  174. package/Tests/App/Dashboard/SessionReplayAuditTable.test.tsx +56 -1
  175. package/Tests/App/Dashboard/TelemetryMetricsSignals.test.ts +1207 -0
  176. package/Tests/App/Dashboard/TelemetryResourceRetentionSettings.test.tsx +10 -0
  177. package/Tests/App/Dashboard/TelemetryResourceTabTooltips.test.tsx +437 -0
  178. package/Tests/App/Dashboard/TracesResourceFacets.test.tsx +2 -1
  179. package/Tests/App/Dashboard/VMwareMetricTooltips.test.ts +801 -0
  180. package/Tests/App/Dashboard/VMwareOverviewTooltips.test.tsx +601 -0
  181. package/Tests/App/Dashboard/VMwareResourcePagesTooltips.test.tsx +646 -0
  182. package/Tests/App/Dashboard/VMwareTooltipHarness.ts +145 -0
  183. package/Tests/App/StatusPage/StatusPageHeaderForeignHiddenRule.test.tsx +284 -0
  184. package/Tests/ClassStrings.ts +178 -0
  185. package/Tests/Fixtures/MobilePasskeyUser.json +1 -2
  186. package/Tests/ForeignHiddenRuleGuard.ts +2152 -0
  187. package/Tests/Models/DatabaseModels/DatabaseServerModels.test.ts +2250 -0
  188. package/Tests/Models/DatabaseModels/IncidentAlertModel.test.ts +554 -0
  189. package/Tests/Models/DatabaseModels/ResourceFeedModels.test.ts +24 -5
  190. package/Tests/Models/DatabaseModels/SessionReplayModels.test.ts +117 -0
  191. package/Tests/Models/DatabaseModels/StaticRuleCriteriaInheritance.test.ts +4 -2
  192. package/Tests/RenderedMarkup.ts +518 -0
  193. package/Tests/ResponsiveVisibility.test.ts +490 -4
  194. package/Tests/ResponsiveVisibility.ts +505 -52
  195. package/Tests/Server/Infrastructure/Postgres/AddConfigurableRuleCriteriaMigration.test.ts +3 -0
  196. package/Tests/Server/Infrastructure/Postgres/AddDatabaseServerTablesMigration.test.ts +541 -0
  197. package/Tests/Server/Infrastructure/Postgres/AddIncidentAlertMigration.test.ts +341 -0
  198. package/Tests/Server/Infrastructure/Postgres/AddSessionReplaySameOriginTracePropagationMigration.test.ts +247 -0
  199. package/Tests/Server/Infrastructure/Postgres/AddUserProjectSsoConsentMigration.test.ts +234 -0
  200. package/Tests/Server/Services/ContainerSnapshotUpsertPostgres.test.ts +319 -0
  201. package/Tests/Server/Services/CrossProjectRelationWriteGuard.test.ts +13 -0
  202. package/Tests/Server/Services/DatabaseServerEndpointService.test.ts +2033 -0
  203. package/Tests/Server/Services/DatabaseServerFeedAndOwnerServices.test.ts +529 -0
  204. package/Tests/Server/Services/DatabaseServerLifecycle.test.ts +3302 -0
  205. package/Tests/Server/Services/DatabaseServerRegistries.test.ts +603 -0
  206. package/Tests/Server/Services/DatabaseServerRuleEngines.test.ts +754 -0
  207. package/Tests/Server/Services/DatabaseServerService.test.ts +3558 -0
  208. package/Tests/Server/Services/DatabaseServerSqlPostgres.test.ts +2045 -0
  209. package/Tests/Server/Services/DatabaseServiceUpdateColumnsIfUnlockedPostgres.test.ts +362 -0
  210. package/Tests/Server/Services/DatabaseServiceUpdateColumnsIfUnlockedReply.test.ts +210 -0
  211. package/Tests/Server/Services/HookFreeWriteLengthClamp.test.ts +18 -0
  212. package/Tests/Server/Services/IncidentAlertPostgres.test.ts +903 -0
  213. package/Tests/Server/Services/IncidentAlertRegistration.test.ts +96 -0
  214. package/Tests/Server/Services/IncidentAlertService.test.ts +2225 -0
  215. package/Tests/Server/Services/IncidentAlertSloLinkSurvivesEdit.test.ts +2 -0
  216. package/Tests/Server/Services/IncidentAlertStateCascade.test.ts +970 -0
  217. package/Tests/Server/Services/IncidentCreateFromAlerts.test.ts +1284 -0
  218. package/Tests/Server/Services/IncomingCallPolicyEscalationRuleTarget.test.ts +225 -0
  219. package/Tests/Server/Services/InventoryItemDisplayName.test.ts +280 -2
  220. package/Tests/Server/Services/InventoryUpsertSchemaParity.test.ts +8 -2
  221. package/Tests/Server/Services/IoTDeviceLatestMetricsPostgres.test.ts +689 -0
  222. package/Tests/Server/Services/IoTDeviceService.test.ts +379 -0
  223. package/Tests/Server/Services/LatestMetricsValuesShape.test.ts +360 -0
  224. package/Tests/Server/Services/LlmModelPriceService.test.ts +402 -0
  225. package/Tests/Server/Services/OpenTelemetryResourceRetentionMemo.test.ts +7 -1
  226. package/Tests/Server/Services/OwnerRowUniqueness.test.ts +61 -9
  227. package/Tests/Server/Services/ReminderRuleLookupPostgres.test.ts +2250 -0
  228. package/Tests/Server/Services/ReminderRuleRefreshOpenSubjectsPaging.test.ts +653 -0
  229. package/Tests/Server/Services/ResourceUpdateLastSeenLivenessFallback.test.ts +68 -20
  230. package/Tests/Server/Services/StaticRuleCriteriaRuntimeCoverage.test.ts +3 -3
  231. package/Tests/Server/Services/TelemetryResourceFacetCounting.test.ts +9 -0
  232. package/Tests/Server/Services/UserProjectSsoConsentPostgres.test.ts +153 -0
  233. package/Tests/Server/Services/UserProjectSsoConsentService.test.ts +192 -0
  234. package/Tests/Server/Services/UserServiceFirstMasterAdminElection.test.ts +71 -0
  235. package/Tests/Server/Services/UserSignupIdTakeoverPostgres.test.ts +238 -0
  236. package/Tests/Server/Services/WorkspaceNotificationSummaryHelpers.test.ts +592 -0
  237. package/Tests/Server/Types/Billing/PayAsYouGoMeteredAuthorization.test.ts +3 -0
  238. package/Tests/Server/Types/Database/EventOverlayScopePostgres.test.ts +1 -0
  239. package/Tests/Server/Types/Database/FeedEventTypeFilterQuery.test.ts +11 -0
  240. package/Tests/Server/Types/Database/Permissions/InfrastructureOwnershipScope.test.ts +8 -0
  241. package/Tests/Server/Types/Database/QueryHelperBooleanForCriteriaBackedRule.test.ts +1094 -0
  242. package/Tests/Server/Utils/AI/ResourceTools.test.ts +134 -0
  243. package/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.test.ts +41 -0
  244. package/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteriaAnomalyUnits.test.ts +279 -9
  245. package/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteriaDisplayContext.test.ts +933 -0
  246. package/Tests/Server/Utils/Monitor/DatabaseMaintenanceSuppression.test.ts +582 -0
  247. package/Tests/Server/Utils/Monitor/DatabaseServerMonitorLinking.test.ts +753 -0
  248. package/Tests/Server/Utils/Monitor/MonitorActionTimestamps.test.ts +1 -0
  249. package/Tests/Server/Utils/Monitor/MonitorAlertCriteriaReferences.test.ts +1 -0
  250. package/Tests/Server/Utils/Monitor/MonitorAlertResourceLinking.test.ts +119 -0
  251. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluator.test.ts +60 -25
  252. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluatorAffectedResourceEdgeCases.test.ts +1719 -0
  253. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluatorKubernetesAffectedResources.test.ts +1447 -0
  254. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluatorKubernetesRatioEmail.test.ts +352 -0
  255. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluatorPlatformMetricUnits.test.ts +717 -0
  256. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluatorPlatformRawScan.test.ts +2125 -0
  257. package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluatorPlatformSeriesAffectedResources.test.ts +1288 -0
  258. package/Tests/Server/Utils/Monitor/MonitorDependencySuppressionCreatorSkip.test.ts +1 -0
  259. package/Tests/Server/Utils/Monitor/MonitorIncidentCriteriaReferences.test.ts +1 -0
  260. package/Tests/Server/Utils/Monitor/MonitorIncidentMemberRoleMembership.test.ts +1 -0
  261. package/Tests/Server/Utils/Monitor/MonitorIncidentResourceLinking.test.ts +88 -0
  262. package/Tests/Server/Utils/Monitor/MonitorMaintenanceSuppression.test.ts +205 -0
  263. package/Tests/Server/Utils/Monitor/MonitorResourceContext.test.ts +62 -0
  264. package/Tests/Server/Utils/Monitor/MonitorResourceDatabaseMaintenance.test.ts +803 -0
  265. package/Tests/Server/Utils/Monitor/MonitorStepResourceIdentity.test.ts +133 -3
  266. package/Tests/Server/Utils/Monitor/MonitorSummaryPersistence.test.ts +1 -0
  267. package/Tests/Server/Utils/Monitor/PerSeriesRecoveryResolution.test.ts +472 -1
  268. package/Tests/Server/Utils/Monitor/PerSeriesSecondEntityAlerting.test.ts +1 -0
  269. package/Tests/Server/Utils/Monitor/SeriesResourceLinker.test.ts +236 -2
  270. package/Tests/Server/Utils/SeriesResourceLabels.test.ts +70 -0
  271. package/Tests/Server/Utils/SessionReplay/SessionReplayGateCachePolicy.test.ts +103 -0
  272. package/Tests/Server/Utils/StartServerProtobufContentType.test.ts +54 -0
  273. package/Tests/Server/Utils/Telemetry/DatabaseEndpointDiscovery.test.ts +1895 -0
  274. package/Tests/Server/Utils/Telemetry/EntityRegistry.test.ts +7 -0
  275. package/Tests/Server/Utils/Telemetry/LogExceptionExtractorSeverityGate.test.ts +90 -0
  276. package/Tests/Server/Utils/Telemetry/ResourceEntityFilter.test.ts +570 -0
  277. package/Tests/Server/Utils/Telemetry/ResourceFacetResolver.test.ts +97 -2
  278. package/Tests/Server/Utils/Telemetry/ServiceDependencyDiscovery.test.ts +1337 -0
  279. package/Tests/Server/Utils/Telemetry/TelemetryEntity.test.ts +295 -0
  280. package/Tests/Types/AI/AIResourceContext.test.ts +30 -0
  281. package/Tests/Types/DatabaseServer/DatabaseContainerClassifier.test.ts +3644 -0
  282. package/Tests/Types/DatabaseServer/DatabaseContainerCommand.test.ts +340 -0
  283. package/Tests/Types/DatabaseServer/DatabaseContainerCommandCorpus.ts +826 -0
  284. package/Tests/Types/DatabaseServer/DatabaseContainerCommandPostgres.test.ts +150 -0
  285. package/Tests/Types/DatabaseServer/DatabaseEndpoint.test.ts +2657 -0
  286. package/Tests/Types/DatabaseServer/DatabaseServerDiscoverySource.test.ts +64 -0
  287. package/Tests/Types/DatabaseServer/DatabaseServerEntityKeys.test.ts +952 -0
  288. package/Tests/Types/DatabaseServer/DatabaseServerMetricCatalog.test.ts +1161 -0
  289. package/Tests/Types/DatabaseServer/DatabaseSystem.test.ts +1514 -0
  290. package/Tests/Types/DatabaseServer/DatabaseTelemetryResolver.test.ts +1558 -0
  291. package/Tests/Types/Monitor/CephAlertTemplates.test.ts +255 -6
  292. package/Tests/Types/Monitor/DatabaseAlertTemplates.test.ts +2254 -0
  293. package/Tests/Types/Monitor/KubernetesAlertTemplates.test.ts +298 -0
  294. package/Tests/Types/Monitor/KubernetesMetricCatalog.test.ts +271 -0
  295. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCatalog.test.ts +253 -9
  296. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCoverage.test.ts +13 -5
  297. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +4 -2
  298. package/Tests/Types/Monitor/Recommendation/MonitorRecommendationUtil.test.ts +111 -2
  299. package/Tests/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.test.ts +61 -0
  300. package/Tests/Types/Monitor/SeriesContext/SeriesLabelDisplay.test.ts +114 -0
  301. package/Tests/Types/Monitor/Utils/KubernetesAgentEmittedMetrics.ts +181 -0
  302. package/Tests/Types/NetworkDevice/DiscoveredHostNamingStatus.test.ts +401 -0
  303. package/Tests/Types/Rum/WebVitals.test.ts +173 -0
  304. package/Tests/Types/Telemetry/ResourceEntityFacet.test.ts +4 -1
  305. package/Tests/Types/Telemetry/ResourceFacetCatalog.test.ts +24 -2
  306. package/Tests/UI/Components/Card.test.tsx +93 -2
  307. package/Tests/UI/Components/FeedOptions.test.ts +6 -0
  308. package/Tests/UI/Components/FeedOptionsButton.test.tsx +8 -1
  309. package/Tests/UI/Components/FieldLabelInfoCardTooltip.test.tsx +413 -0
  310. package/Tests/UI/Components/ForeignHiddenRuleResilience.test.tsx +1147 -0
  311. package/Tests/UI/Components/HeaderRightRail.test.tsx +41 -1
  312. package/Tests/UI/Components/InfoTooltip.test.tsx +242 -0
  313. package/Tests/UI/Components/LogsEntityNames.test.ts +16 -1
  314. package/Tests/UI/Components/LogsFacetSidebarHiddenFacets.test.tsx +7 -3
  315. package/Tests/UI/Components/ModelTable/BaseModelTableBulkDelete.test.tsx +207 -3
  316. package/Tests/UI/Components/ModelTable/BaseModelTableBulkDeleteVerb.test.tsx +367 -0
  317. package/Tests/UI/Components/ModelTable/BaseModelTableCreateButtonTitle.test.tsx +275 -0
  318. package/Tests/UI/Components/ResourceFacetConfigs.test.ts +2 -1
  319. package/Tests/UI/Components/RuleCriteria/RuleCriteriaModelTable.test.tsx +3 -3
  320. package/Tests/UI/Components/SrOnlyForeignRule.test.tsx +994 -0
  321. package/Tests/UI/Components/StatusPage/ResourceListSelection.test.tsx +34 -1
  322. package/Tests/UI/Components/TableHeaderTooltip.test.tsx +662 -0
  323. package/Tests/UI/Components/TelemetryFacetSidebarHiddenFacets.test.tsx +4 -1
  324. package/Tests/UI/ForeignHiddenRuleGuard.test.ts +1951 -0
  325. package/Tests/UI/Rum/PrivacySummaryCard.test.tsx +166 -9
  326. package/Tests/UI/Rum/RecordingHealthTooltips.test.tsx +447 -0
  327. package/Tests/UI/Rum/ReplayCorrelationPanel.test.tsx +164 -0
  328. package/Tests/UI/Rum/ReplayFrameCapture.test.ts +6750 -0
  329. package/Tests/UI/Rum/ReplayPlayerChrome.test.tsx +19 -1
  330. package/Tests/UI/Rum/ReplayRail.test.tsx +723 -12
  331. package/Tests/UI/Rum/ReplayRailDetail.test.tsx +86 -0
  332. package/Tests/UI/Rum/ReplayScreenshot.test.ts +2124 -0
  333. package/Tests/UI/Rum/ReplayScreenshotActions.test.tsx +3288 -0
  334. package/Tests/UI/Rum/ReplayStage.test.tsx +62 -0
  335. package/Tests/UI/Rum/ReplayStageOverlays.test.tsx +983 -2
  336. package/Tests/UI/Rum/ReplayTabSwitcher.test.tsx +19 -1
  337. package/Tests/UI/Rum/SessionReplaySettingsPolicyLoading.test.tsx +149 -0
  338. package/Tests/UI/Rum/SessionReplaySetupGuide.test.tsx +107 -6
  339. package/Tests/UI/Rum/SessionReplayUsersTableTooltips.test.tsx +330 -0
  340. package/Tests/UI/Rum/UserFlowTooltips.test.tsx +886 -0
  341. package/Tests/UI/TailwindPlayCdnForeignHiddenRule.test.ts +1005 -0
  342. package/Tests/UI/ThemeGroupHoverReveal.test.ts +847 -0
  343. package/Tests/UI/Utils/Breadcrumb/fixtures/RealBreadcrumbTrails.ts +80 -0
  344. package/Tests/UI/Utils/Breadcrumb/fixtures/RealRoutePatterns.ts +23 -0
  345. package/Tests/UI/Utils/ModelAPISsoRedirect.test.ts +127 -0
  346. package/Tests/UI/Utils/Navigation.test.ts +102 -0
  347. package/Tests/UI/Utils/PermissionGate.test.ts +76 -0
  348. package/Tests/UI/Utils/Telemetry/TelemetryEntityNames.test.ts +23 -0
  349. package/Tests/Utils/Incident/IncidentFromAlerts.test.ts +696 -0
  350. package/Tests/Utils/LabelRuleImportExport.test.ts +5 -0
  351. package/Tests/Utils/MetricUnitUtil.test.ts +227 -2
  352. package/Tests/Utils/Monitor/MetricValueFormatter.test.ts +288 -2
  353. package/Tests/Utils/Monitor/PlatformResourceIdentityAndUnits.test.ts +1559 -0
  354. package/Tests/Utils/NetworkDiscovery/DiscoveredHostNamingDiagnosis.test.ts +2546 -0
  355. package/Tests/Utils/NetworkDiscovery/DiscoveredHostUtil.test.ts +315 -0
  356. package/Tests/Utils/NetworkDiscovery/DiscoveryReverseDnsChain.test.ts +336 -1
  357. package/Tests/Utils/NetworkDiscovery/NetbiosNameUtil.test.ts +244 -0
  358. package/Tests/Utils/Rum/SessionTraceState.test.ts +239 -0
  359. package/Tests/Utils/ValueFormatter.test.ts +50 -0
  360. package/Tests/tsconfig.json +16 -0
  361. package/Types/AI/AIResourceContext.ts +7 -0
  362. package/Types/Dashboard/DashboardTemplates.ts +2 -1
  363. package/Types/DatabaseServer/DatabaseConnectionSpan.ts +77 -0
  364. package/Types/DatabaseServer/DatabaseContainerClassifier.ts +2068 -0
  365. package/Types/DatabaseServer/DatabaseContainerCommand.ts +801 -0
  366. package/Types/DatabaseServer/DatabaseEndpoint.ts +1943 -0
  367. package/Types/DatabaseServer/DatabaseServerDiscoverySource.ts +68 -0
  368. package/Types/DatabaseServer/DatabaseServerMetricCatalog.ts +966 -0
  369. package/Types/DatabaseServer/DatabaseSystem.ts +2124 -0
  370. package/Types/DatabaseServer/DatabaseTelemetryResolver.ts +555 -0
  371. package/Types/Email/EmailTemplateType.ts +1 -0
  372. package/Types/Incident/IncidentAlertLink.ts +38 -0
  373. package/Types/Monitor/CephAlertTemplates.ts +18 -0
  374. package/Types/Monitor/DatabaseAlertTemplates.ts +2020 -0
  375. package/Types/Monitor/KubernetesAlertTemplates.ts +64 -24
  376. package/Types/Monitor/KubernetesMetricCatalog.ts +118 -19
  377. package/Types/Monitor/MetricMonitor/MetricCriteriaContext.ts +14 -0
  378. package/Types/Monitor/MetricMonitor/MetricMonitorResponse.ts +93 -10
  379. package/Types/Monitor/Recommendation/MonitorRecommendationCatalog.ts +109 -8
  380. package/Types/Monitor/Recommendation/MonitorRecommendationTypes.ts +36 -7
  381. package/Types/Monitor/Recommendation/MonitorRecommendationUtil.ts +43 -2
  382. package/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.ts +41 -6
  383. package/Types/Monitor/SeriesContext/SeriesLabelDisplay.ts +26 -0
  384. package/Types/NetworkDevice/DiscoveredHostNamingStatus.ts +147 -0
  385. package/Types/Permission.ts +315 -0
  386. package/Types/Probe/ProbeApiIngestResponse.ts +8 -0
  387. package/Types/Rules/RuleCriteriaFieldRegistry.ts +10 -0
  388. package/Types/Rules/RuleRun.ts +12 -0
  389. package/Types/Rum/SessionReplay.ts +25 -6
  390. package/Types/Rum/WebVitals.ts +52 -0
  391. package/Types/Telemetry/EntityType.ts +23 -0
  392. package/Types/Telemetry/ResourceFacetCatalog.ts +14 -0
  393. package/Types/Telemetry/ServiceType.ts +8 -0
  394. package/UI/Components/Banner/Banner.tsx +1 -1
  395. package/UI/Components/Card/Card.tsx +1 -1
  396. package/UI/Components/Charts/ChartGroup/ChartGroup.tsx +2 -2
  397. package/UI/Components/Charts/Line/LineChart.tsx +7 -0
  398. package/UI/Components/CommandPalette/CommandPalette.tsx +1 -1
  399. package/UI/Components/Date/StartAndEndDate.tsx +5 -5
  400. package/UI/Components/Detail/FieldLabel.tsx +8 -0
  401. package/UI/Components/Diagram/HorizontalStepChain.tsx +1 -1
  402. package/UI/Components/Feed/FeedOptionsButton.tsx +1 -1
  403. package/UI/Components/Forms/BasicForm.tsx +1 -1
  404. package/UI/Components/Header/Header.tsx +1 -1
  405. package/UI/Components/Header/HeaderIconDropdownButton.tsx +1 -1
  406. package/UI/Components/HeaderAlert/HeaderAlert.tsx +1 -1
  407. package/UI/Components/InfoCard/InfoCard.tsx +47 -1
  408. package/UI/Components/LogsViewer/components/FacetValueRow.tsx +1 -1
  409. package/UI/Components/LogsViewer/components/LogsFacetSidebar.tsx +1 -1
  410. package/UI/Components/Modal/ModalFooter.tsx +1 -1
  411. package/UI/Components/ModelDetail/CardModelDetail.tsx +2 -2
  412. package/UI/Components/ModelTable/BaseModelTable.tsx +99 -21
  413. package/UI/Components/ModelTable/Column.ts +5 -0
  414. package/UI/Components/Navbar/NavBar.tsx +9 -2
  415. package/UI/Components/Navbar/NavBarMenuModal.tsx +2 -2
  416. package/UI/Components/Page/Page.tsx +1 -1
  417. package/UI/Components/Pagination/Pagination.tsx +3 -3
  418. package/UI/Components/ProgressButtons/ProgressButtonItem.tsx +1 -1
  419. package/UI/Components/SideMenu/SideMenu.tsx +4 -1
  420. package/UI/Components/StatusPage/ResourceGroupNavigator.tsx +4 -2
  421. package/UI/Components/StatusPage/ResourceList.tsx +6 -6
  422. package/UI/Components/Table/TableHeader.tsx +47 -2
  423. package/UI/Components/Table/Types/Column.ts +7 -0
  424. package/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.tsx +1 -1
  425. package/UI/Components/TelemetryViewer/components/TelemetryFacetValueRow.tsx +1 -1
  426. package/UI/Components/Tooltip/InfoTooltip.tsx +78 -0
  427. package/UI/Components/Workflow/ColumnEditor/ModelQueryBuilder.tsx +1 -1
  428. package/UI/Components/Workflow/ComponentsModal.tsx +2 -2
  429. package/UI/Components/Workflow/StepTraceViewer.tsx +1 -1
  430. package/UI/Styles/Theme.css +8 -1
  431. package/UI/Utils/Navigation.ts +89 -42
  432. package/UI/Utils/PermissionGate.ts +11 -2
  433. package/UI/Utils/Telemetry/TelemetryEntityNames.ts +7 -0
  434. package/UI/Utils/TelemetryService.ts +4 -3
  435. package/Utils/Incident/IncidentFromAlerts.ts +516 -0
  436. package/Utils/LabelRuleImportExport.ts +2 -0
  437. package/Utils/MetricUnitUtil.ts +103 -11
  438. package/Utils/Monitor/MetricValueFormatter.ts +66 -13
  439. package/Utils/Monitor/PlatformMetricUnitUtil.ts +215 -0
  440. package/Utils/Monitor/PlatformResourceIdentity.ts +514 -0
  441. package/Utils/NetworkDiscovery/DiscoveredHostNamingDiagnosis.ts +425 -0
  442. package/Utils/NetworkDiscovery/DiscoveredHostUtil.ts +32 -0
  443. package/Utils/NetworkDiscovery/NetbiosNameUtil.ts +73 -0
  444. package/Utils/Rum/SessionTraceState.ts +212 -0
  445. package/Utils/Telemetry/DatabaseServerEntityKeys.ts +275 -0
  446. package/Utils/Telemetry/EntityKey.ts +176 -0
  447. package/Utils/ValueFormatter.ts +16 -0
  448. package/build/dist/Models/DatabaseModels/Alert.js +54 -0
  449. package/build/dist/Models/DatabaseModels/Alert.js.map +1 -1
  450. package/build/dist/Models/DatabaseModels/AlertFeed.js +2 -0
  451. package/build/dist/Models/DatabaseModels/AlertFeed.js.map +1 -1
  452. package/build/dist/Models/DatabaseModels/DatabaseServer.js +1683 -0
  453. package/build/dist/Models/DatabaseModels/DatabaseServer.js.map +1 -0
  454. package/build/dist/Models/DatabaseModels/DatabaseServerEndpoint.js +559 -0
  455. package/build/dist/Models/DatabaseModels/DatabaseServerEndpoint.js.map +1 -0
  456. package/build/dist/Models/DatabaseModels/DatabaseServerFeed.js +648 -0
  457. package/build/dist/Models/DatabaseModels/DatabaseServerFeed.js.map +1 -0
  458. package/build/dist/Models/DatabaseModels/DatabaseServerLabelRule.js +522 -0
  459. package/build/dist/Models/DatabaseModels/DatabaseServerLabelRule.js.map +1 -0
  460. package/build/dist/Models/DatabaseModels/DatabaseServerOwnerRule.js +603 -0
  461. package/build/dist/Models/DatabaseModels/DatabaseServerOwnerRule.js.map +1 -0
  462. package/build/dist/Models/DatabaseModels/DatabaseServerOwnerTeam.js +506 -0
  463. package/build/dist/Models/DatabaseModels/DatabaseServerOwnerTeam.js.map +1 -0
  464. package/build/dist/Models/DatabaseModels/DatabaseServerOwnerUser.js +505 -0
  465. package/build/dist/Models/DatabaseModels/DatabaseServerOwnerUser.js.map +1 -0
  466. package/build/dist/Models/DatabaseModels/Incident.js +54 -0
  467. package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
  468. package/build/dist/Models/DatabaseModels/IncidentAlert.js +553 -0
  469. package/build/dist/Models/DatabaseModels/IncidentAlert.js.map +1 -0
  470. package/build/dist/Models/DatabaseModels/IncidentFeed.js +2 -0
  471. package/build/dist/Models/DatabaseModels/IncidentFeed.js.map +1 -1
  472. package/build/dist/Models/DatabaseModels/Index.js +18 -0
  473. package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
  474. package/build/dist/Models/DatabaseModels/NetworkDeviceDiscoveryScan.js.map +1 -1
  475. package/build/dist/Models/DatabaseModels/Project.js +62 -0
  476. package/build/dist/Models/DatabaseModels/Project.js.map +1 -1
  477. package/build/dist/Models/DatabaseModels/RumApplication.js +53 -1
  478. package/build/dist/Models/DatabaseModels/RumApplication.js.map +1 -1
  479. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +54 -0
  480. package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
  481. package/build/dist/Models/DatabaseModels/TelemetryException.js +2 -0
  482. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  483. package/build/dist/Models/DatabaseModels/UserProjectSsoConsent.js +162 -0
  484. package/build/dist/Models/DatabaseModels/UserProjectSsoConsent.js.map +1 -0
  485. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1794800000000-AddSessionReplaySameOriginTracePropagation.js +20 -0
  486. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1794800000000-AddSessionReplaySameOriginTracePropagation.js.map +1 -0
  487. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1794900000000-AddIncidentAlert.js +42 -0
  488. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1794900000000-AddIncidentAlert.js.map +1 -0
  489. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1795000000000-AddDatabaseServerTables.js +240 -0
  490. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1795000000000-AddDatabaseServerTables.js.map +1 -0
  491. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1795100000000-AddUserProjectSsoConsent.js +26 -0
  492. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1795100000000-AddUserProjectSsoConsent.js.map +1 -0
  493. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
  494. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  495. package/build/dist/Server/Middleware/MultipartFormData.js +1 -1
  496. package/build/dist/Server/Middleware/TelemetryIngest.js +15 -8
  497. package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
  498. package/build/dist/Server/Services/AlertReminderRuleService.js +72 -23
  499. package/build/dist/Server/Services/AlertReminderRuleService.js.map +1 -1
  500. package/build/dist/Server/Services/DatabaseServerEndpointService.js +694 -0
  501. package/build/dist/Server/Services/DatabaseServerEndpointService.js.map +1 -0
  502. package/build/dist/Server/Services/DatabaseServerFeedService.js +110 -0
  503. package/build/dist/Server/Services/DatabaseServerFeedService.js.map +1 -0
  504. package/build/dist/Server/Services/DatabaseServerLabelRuleEngineService.js +272 -0
  505. package/build/dist/Server/Services/DatabaseServerLabelRuleEngineService.js.map +1 -0
  506. package/build/dist/Server/Services/DatabaseServerLabelRuleService.js +13 -0
  507. package/build/dist/Server/Services/DatabaseServerLabelRuleService.js.map +1 -0
  508. package/build/dist/Server/Services/DatabaseServerOwnerRuleEngineService.js +340 -0
  509. package/build/dist/Server/Services/DatabaseServerOwnerRuleEngineService.js.map +1 -0
  510. package/build/dist/Server/Services/DatabaseServerOwnerRuleService.js +13 -0
  511. package/build/dist/Server/Services/DatabaseServerOwnerRuleService.js.map +1 -0
  512. package/build/dist/Server/Services/DatabaseServerOwnerTeamService.js +160 -0
  513. package/build/dist/Server/Services/DatabaseServerOwnerTeamService.js.map +1 -0
  514. package/build/dist/Server/Services/DatabaseServerOwnerUserService.js +153 -0
  515. package/build/dist/Server/Services/DatabaseServerOwnerUserService.js.map +1 -0
  516. package/build/dist/Server/Services/DatabaseServerService.js +3272 -0
  517. package/build/dist/Server/Services/DatabaseServerService.js.map +1 -0
  518. package/build/dist/Server/Services/DatabaseService.js +8 -4
  519. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  520. package/build/dist/Server/Services/DockerResourceService.js +30 -3
  521. package/build/dist/Server/Services/DockerResourceService.js.map +1 -1
  522. package/build/dist/Server/Services/IncidentAlertService.js +1370 -0
  523. package/build/dist/Server/Services/IncidentAlertService.js.map +1 -0
  524. package/build/dist/Server/Services/IncidentReminderRuleService.js +73 -23
  525. package/build/dist/Server/Services/IncidentReminderRuleService.js.map +1 -1
  526. package/build/dist/Server/Services/IncidentService.js +164 -12
  527. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  528. package/build/dist/Server/Services/IncidentStateTimelineService.js +21 -0
  529. package/build/dist/Server/Services/IncidentStateTimelineService.js.map +1 -1
  530. package/build/dist/Server/Services/Index.js +18 -0
  531. package/build/dist/Server/Services/Index.js.map +1 -1
  532. package/build/dist/Server/Services/InventoryItemService.js +88 -5
  533. package/build/dist/Server/Services/InventoryItemService.js.map +1 -1
  534. package/build/dist/Server/Services/IoTDeviceService.js +111 -24
  535. package/build/dist/Server/Services/IoTDeviceService.js.map +1 -1
  536. package/build/dist/Server/Services/OpenTelemetryIngestService.js +24 -9
  537. package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
  538. package/build/dist/Server/Services/PodmanResourceService.js +30 -3
  539. package/build/dist/Server/Services/PodmanResourceService.js.map +1 -1
  540. package/build/dist/Server/Services/ScheduledMaintenanceReminderRuleService.js +75 -23
  541. package/build/dist/Server/Services/ScheduledMaintenanceReminderRuleService.js.map +1 -1
  542. package/build/dist/Server/Services/ServiceService.js +1 -1
  543. package/build/dist/Server/Services/ServiceService.js.map +1 -1
  544. package/build/dist/Server/Services/TelemetryUsageBillingService.js +23 -2
  545. package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
  546. package/build/dist/Server/Services/UserProjectSsoConsentService.js +79 -0
  547. package/build/dist/Server/Services/UserProjectSsoConsentService.js.map +1 -0
  548. package/build/dist/Server/Services/UserService.js +13 -1
  549. package/build/dist/Server/Services/UserService.js.map +1 -1
  550. package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js +18 -0
  551. package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js.map +1 -1
  552. package/build/dist/Server/Types/Database/QueryHelper.js +26 -1
  553. package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
  554. package/build/dist/Server/Utils/AI/Toolbox/ResourceTools.js +46 -0
  555. package/build/dist/Server/Utils/AI/Toolbox/ResourceTools.js.map +1 -1
  556. package/build/dist/Server/Utils/Database/AffectedResourceRelations.js +6 -0
  557. package/build/dist/Server/Utils/Database/AffectedResourceRelations.js.map +1 -1
  558. package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js +134 -13
  559. package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js.map +1 -1
  560. package/build/dist/Server/Utils/Monitor/MonitorAlert.js +22 -6
  561. package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
  562. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +1489 -524
  563. package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
  564. package/build/dist/Server/Utils/Monitor/MonitorIncident.js +22 -6
  565. package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
  566. package/build/dist/Server/Utils/Monitor/MonitorMaintenanceSuppression.js +196 -6
  567. package/build/dist/Server/Utils/Monitor/MonitorMaintenanceSuppression.js.map +1 -1
  568. package/build/dist/Server/Utils/Monitor/MonitorResource.js +36 -9
  569. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  570. package/build/dist/Server/Utils/Monitor/MonitorResourceContext.js +1 -0
  571. package/build/dist/Server/Utils/Monitor/MonitorResourceContext.js.map +1 -1
  572. package/build/dist/Server/Utils/Monitor/MonitorStepResourceIdentity.js +175 -17
  573. package/build/dist/Server/Utils/Monitor/MonitorStepResourceIdentity.js.map +1 -1
  574. package/build/dist/Server/Utils/Monitor/PerSeriesResolutionRootCause.js +29 -0
  575. package/build/dist/Server/Utils/Monitor/PerSeriesResolutionRootCause.js.map +1 -0
  576. package/build/dist/Server/Utils/Monitor/SeriesResourceLabels.js +211 -0
  577. package/build/dist/Server/Utils/Monitor/SeriesResourceLabels.js.map +1 -1
  578. package/build/dist/Server/Utils/Monitor/SeriesResourceLinker.js +82 -10
  579. package/build/dist/Server/Utils/Monitor/SeriesResourceLinker.js.map +1 -1
  580. package/build/dist/Server/Utils/Rules/RuleRun/RuleRunRegistry.js +25 -0
  581. package/build/dist/Server/Utils/Rules/RuleRun/RuleRunRegistry.js.map +1 -1
  582. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js +8 -0
  583. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js.map +1 -1
  584. package/build/dist/Server/Utils/StartServer.js +20 -4
  585. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  586. package/build/dist/Server/Utils/TeamMember/ProjectLeaveResourceCleanup.js +2 -0
  587. package/build/dist/Server/Utils/TeamMember/ProjectLeaveResourceCleanup.js.map +1 -1
  588. package/build/dist/Server/Utils/Telemetry/DatabaseEndpointDiscovery.js +442 -0
  589. package/build/dist/Server/Utils/Telemetry/DatabaseEndpointDiscovery.js.map +1 -0
  590. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +5 -1
  591. package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -1
  592. package/build/dist/Server/Utils/Telemetry/LogExceptionExtractor.js +15 -1
  593. package/build/dist/Server/Utils/Telemetry/LogExceptionExtractor.js.map +1 -1
  594. package/build/dist/Server/Utils/Telemetry/ResourceEntityFilter.js +121 -5
  595. package/build/dist/Server/Utils/Telemetry/ResourceEntityFilter.js.map +1 -1
  596. package/build/dist/Server/Utils/Telemetry/ResourceFacetResolver.js +12 -0
  597. package/build/dist/Server/Utils/Telemetry/ResourceFacetResolver.js.map +1 -1
  598. package/build/dist/Server/Utils/Telemetry/ServiceDependencyDiscovery.js +438 -36
  599. package/build/dist/Server/Utils/Telemetry/ServiceDependencyDiscovery.js.map +1 -1
  600. package/build/dist/Server/Utils/Telemetry/Telemetry.js +12 -0
  601. package/build/dist/Server/Utils/Telemetry/Telemetry.js.map +1 -1
  602. package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js +17 -18
  603. package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js.map +1 -1
  604. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js +16 -10
  605. package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js.map +1 -1
  606. package/build/dist/Types/AI/AIResourceContext.js +7 -0
  607. package/build/dist/Types/AI/AIResourceContext.js.map +1 -1
  608. package/build/dist/Types/Dashboard/DashboardTemplates.js +2 -1
  609. package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
  610. package/build/dist/Types/DatabaseServer/DatabaseConnectionSpan.js +71 -0
  611. package/build/dist/Types/DatabaseServer/DatabaseConnectionSpan.js.map +1 -0
  612. package/build/dist/Types/DatabaseServer/DatabaseContainerClassifier.js +1462 -0
  613. package/build/dist/Types/DatabaseServer/DatabaseContainerClassifier.js.map +1 -0
  614. package/build/dist/Types/DatabaseServer/DatabaseContainerCommand.js +691 -0
  615. package/build/dist/Types/DatabaseServer/DatabaseContainerCommand.js.map +1 -0
  616. package/build/dist/Types/DatabaseServer/DatabaseEndpoint.js +1407 -0
  617. package/build/dist/Types/DatabaseServer/DatabaseEndpoint.js.map +1 -0
  618. package/build/dist/Types/DatabaseServer/DatabaseServerDiscoverySource.js +60 -0
  619. package/build/dist/Types/DatabaseServer/DatabaseServerDiscoverySource.js.map +1 -0
  620. package/build/dist/Types/DatabaseServer/DatabaseServerMetricCatalog.js +804 -0
  621. package/build/dist/Types/DatabaseServer/DatabaseServerMetricCatalog.js.map +1 -0
  622. package/build/dist/Types/DatabaseServer/DatabaseSystem.js +1860 -0
  623. package/build/dist/Types/DatabaseServer/DatabaseSystem.js.map +1 -0
  624. package/build/dist/Types/DatabaseServer/DatabaseTelemetryResolver.js +406 -0
  625. package/build/dist/Types/DatabaseServer/DatabaseTelemetryResolver.js.map +1 -0
  626. package/build/dist/Types/Email/EmailTemplateType.js +1 -0
  627. package/build/dist/Types/Email/EmailTemplateType.js.map +1 -1
  628. package/build/dist/Types/Incident/IncidentAlertLink.js +34 -0
  629. package/build/dist/Types/Incident/IncidentAlertLink.js.map +1 -0
  630. package/build/dist/Types/Monitor/CephAlertTemplates.js +18 -0
  631. package/build/dist/Types/Monitor/CephAlertTemplates.js.map +1 -1
  632. package/build/dist/Types/Monitor/DatabaseAlertTemplates.js +1518 -0
  633. package/build/dist/Types/Monitor/DatabaseAlertTemplates.js.map +1 -0
  634. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js +57 -24
  635. package/build/dist/Types/Monitor/KubernetesAlertTemplates.js.map +1 -1
  636. package/build/dist/Types/Monitor/KubernetesMetricCatalog.js +104 -18
  637. package/build/dist/Types/Monitor/KubernetesMetricCatalog.js.map +1 -1
  638. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js +80 -3
  639. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js.map +1 -1
  640. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js +10 -3
  641. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js.map +1 -1
  642. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js +29 -0
  643. package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js.map +1 -1
  644. package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js +21 -6
  645. package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js.map +1 -1
  646. package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js +25 -0
  647. package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js.map +1 -1
  648. package/build/dist/Types/NetworkDevice/DiscoveredHostNamingStatus.js +136 -0
  649. package/build/dist/Types/NetworkDevice/DiscoveredHostNamingStatus.js.map +1 -0
  650. package/build/dist/Types/Permission.js +276 -0
  651. package/build/dist/Types/Permission.js.map +1 -1
  652. package/build/dist/Types/Rules/RuleCriteriaFieldRegistry.js +10 -0
  653. package/build/dist/Types/Rules/RuleCriteriaFieldRegistry.js.map +1 -1
  654. package/build/dist/Types/Rules/RuleRun.js +4 -0
  655. package/build/dist/Types/Rules/RuleRun.js.map +1 -1
  656. package/build/dist/Types/Rum/WebVitals.js +25 -0
  657. package/build/dist/Types/Rum/WebVitals.js.map +1 -1
  658. package/build/dist/Types/Telemetry/EntityType.js +23 -0
  659. package/build/dist/Types/Telemetry/EntityType.js.map +1 -1
  660. package/build/dist/Types/Telemetry/ResourceFacetCatalog.js +14 -0
  661. package/build/dist/Types/Telemetry/ResourceFacetCatalog.js.map +1 -1
  662. package/build/dist/Types/Telemetry/ServiceType.js +8 -0
  663. package/build/dist/Types/Telemetry/ServiceType.js.map +1 -1
  664. package/build/dist/UI/Components/Banner/Banner.js +1 -1
  665. package/build/dist/UI/Components/Banner/Banner.js.map +1 -1
  666. package/build/dist/UI/Components/Card/Card.js +1 -1
  667. package/build/dist/UI/Components/Card/Card.js.map +1 -1
  668. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js +2 -2
  669. package/build/dist/UI/Components/Charts/ChartGroup/ChartGroup.js.map +1 -1
  670. package/build/dist/UI/Components/Charts/Line/LineChart.js +1 -1
  671. package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
  672. package/build/dist/UI/Components/CommandPalette/CommandPalette.js +1 -1
  673. package/build/dist/UI/Components/CommandPalette/CommandPalette.js.map +1 -1
  674. package/build/dist/UI/Components/Date/StartAndEndDate.js +5 -5
  675. package/build/dist/UI/Components/Date/StartAndEndDate.js.map +1 -1
  676. package/build/dist/UI/Components/Detail/FieldLabel.js +2 -0
  677. package/build/dist/UI/Components/Detail/FieldLabel.js.map +1 -1
  678. package/build/dist/UI/Components/Diagram/HorizontalStepChain.js +1 -1
  679. package/build/dist/UI/Components/Diagram/HorizontalStepChain.js.map +1 -1
  680. package/build/dist/UI/Components/Feed/FeedOptionsButton.js +1 -1
  681. package/build/dist/UI/Components/Feed/FeedOptionsButton.js.map +1 -1
  682. package/build/dist/UI/Components/Forms/BasicForm.js +1 -1
  683. package/build/dist/UI/Components/Forms/BasicForm.js.map +1 -1
  684. package/build/dist/UI/Components/Header/HeaderIconDropdownButton.js +1 -1
  685. package/build/dist/UI/Components/Header/HeaderIconDropdownButton.js.map +1 -1
  686. package/build/dist/UI/Components/HeaderAlert/HeaderAlert.js +1 -1
  687. package/build/dist/UI/Components/HeaderAlert/HeaderAlert.js.map +1 -1
  688. package/build/dist/UI/Components/InfoCard/InfoCard.js +22 -1
  689. package/build/dist/UI/Components/InfoCard/InfoCard.js.map +1 -1
  690. package/build/dist/UI/Components/LogsViewer/components/FacetValueRow.js +1 -1
  691. package/build/dist/UI/Components/LogsViewer/components/FacetValueRow.js.map +1 -1
  692. package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js +1 -1
  693. package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js.map +1 -1
  694. package/build/dist/UI/Components/Modal/ModalFooter.js +1 -1
  695. package/build/dist/UI/Components/Modal/ModalFooter.js.map +1 -1
  696. package/build/dist/UI/Components/ModelDetail/CardModelDetail.js +2 -2
  697. package/build/dist/UI/Components/ModelDetail/CardModelDetail.js.map +1 -1
  698. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +70 -18
  699. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  700. package/build/dist/UI/Components/Navbar/NavBar.js +9 -2
  701. package/build/dist/UI/Components/Navbar/NavBar.js.map +1 -1
  702. package/build/dist/UI/Components/Navbar/NavBarMenuModal.js +2 -2
  703. package/build/dist/UI/Components/Navbar/NavBarMenuModal.js.map +1 -1
  704. package/build/dist/UI/Components/Page/Page.js +1 -1
  705. package/build/dist/UI/Components/Page/Page.js.map +1 -1
  706. package/build/dist/UI/Components/Pagination/Pagination.js +3 -3
  707. package/build/dist/UI/Components/Pagination/Pagination.js.map +1 -1
  708. package/build/dist/UI/Components/ProgressButtons/ProgressButtonItem.js +1 -1
  709. package/build/dist/UI/Components/ProgressButtons/ProgressButtonItem.js.map +1 -1
  710. package/build/dist/UI/Components/SideMenu/SideMenu.js +4 -1
  711. package/build/dist/UI/Components/SideMenu/SideMenu.js.map +1 -1
  712. package/build/dist/UI/Components/StatusPage/ResourceGroupNavigator.js +3 -1
  713. package/build/dist/UI/Components/StatusPage/ResourceGroupNavigator.js.map +1 -1
  714. package/build/dist/UI/Components/StatusPage/ResourceList.js +6 -6
  715. package/build/dist/UI/Components/StatusPage/ResourceList.js.map +1 -1
  716. package/build/dist/UI/Components/Table/TableHeader.js +18 -2
  717. package/build/dist/UI/Components/Table/TableHeader.js.map +1 -1
  718. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.js +1 -1
  719. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.js.map +1 -1
  720. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryFacetValueRow.js +1 -1
  721. package/build/dist/UI/Components/TelemetryViewer/components/TelemetryFacetValueRow.js.map +1 -1
  722. package/build/dist/UI/Components/Tooltip/InfoTooltip.js +28 -0
  723. package/build/dist/UI/Components/Tooltip/InfoTooltip.js.map +1 -0
  724. package/build/dist/UI/Components/Workflow/ColumnEditor/ModelQueryBuilder.js +1 -1
  725. package/build/dist/UI/Components/Workflow/ColumnEditor/ModelQueryBuilder.js.map +1 -1
  726. package/build/dist/UI/Components/Workflow/ComponentsModal.js +2 -2
  727. package/build/dist/UI/Components/Workflow/ComponentsModal.js.map +1 -1
  728. package/build/dist/UI/Components/Workflow/StepTraceViewer.js +1 -1
  729. package/build/dist/UI/Components/Workflow/StepTraceViewer.js.map +1 -1
  730. package/build/dist/UI/Utils/Navigation.js +66 -33
  731. package/build/dist/UI/Utils/Navigation.js.map +1 -1
  732. package/build/dist/UI/Utils/PermissionGate.js +4 -2
  733. package/build/dist/UI/Utils/PermissionGate.js.map +1 -1
  734. package/build/dist/UI/Utils/Telemetry/TelemetryEntityNames.js +7 -0
  735. package/build/dist/UI/Utils/Telemetry/TelemetryEntityNames.js.map +1 -1
  736. package/build/dist/UI/Utils/TelemetryService.js +3 -2
  737. package/build/dist/UI/Utils/TelemetryService.js.map +1 -1
  738. package/build/dist/Utils/Incident/IncidentFromAlerts.js +306 -0
  739. package/build/dist/Utils/Incident/IncidentFromAlerts.js.map +1 -0
  740. package/build/dist/Utils/LabelRuleImportExport.js +2 -0
  741. package/build/dist/Utils/LabelRuleImportExport.js.map +1 -1
  742. package/build/dist/Utils/MetricUnitUtil.js +77 -13
  743. package/build/dist/Utils/MetricUnitUtil.js.map +1 -1
  744. package/build/dist/Utils/Monitor/MetricValueFormatter.js +58 -13
  745. package/build/dist/Utils/Monitor/MetricValueFormatter.js.map +1 -1
  746. package/build/dist/Utils/Monitor/PlatformMetricUnitUtil.js +161 -0
  747. package/build/dist/Utils/Monitor/PlatformMetricUnitUtil.js.map +1 -0
  748. package/build/dist/Utils/Monitor/PlatformResourceIdentity.js +323 -0
  749. package/build/dist/Utils/Monitor/PlatformResourceIdentity.js.map +1 -0
  750. package/build/dist/Utils/NetworkDiscovery/DiscoveredHostNamingDiagnosis.js +270 -0
  751. package/build/dist/Utils/NetworkDiscovery/DiscoveredHostNamingDiagnosis.js.map +1 -0
  752. package/build/dist/Utils/NetworkDiscovery/DiscoveredHostUtil.js +23 -0
  753. package/build/dist/Utils/NetworkDiscovery/DiscoveredHostUtil.js.map +1 -1
  754. package/build/dist/Utils/NetworkDiscovery/NetbiosNameUtil.js +61 -0
  755. package/build/dist/Utils/NetworkDiscovery/NetbiosNameUtil.js.map +1 -1
  756. package/build/dist/Utils/Rum/SessionTraceState.js +154 -0
  757. package/build/dist/Utils/Rum/SessionTraceState.js.map +1 -0
  758. package/build/dist/Utils/Telemetry/DatabaseServerEntityKeys.js +178 -0
  759. package/build/dist/Utils/Telemetry/DatabaseServerEntityKeys.js.map +1 -0
  760. package/build/dist/Utils/Telemetry/EntityKey.js +133 -0
  761. package/build/dist/Utils/Telemetry/EntityKey.js.map +1 -1
  762. package/build/dist/Utils/ValueFormatter.js +15 -0
  763. package/build/dist/Utils/ValueFormatter.js.map +1 -1
  764. package/package.json +1 -1
  765. package/tsconfig.tests.json +7 -5
@@ -709,6 +709,12 @@ enum Permission {
709
709
  EditVMwareVCenterOwnerRule = "EditVMwareVCenterOwnerRule",
710
710
  ReadVMwareVCenterOwnerRule = "ReadVMwareVCenterOwnerRule",
711
711
 
712
+ // Database Owner Rule Permissions
713
+ CreateDatabaseServerOwnerRule = "CreateDatabaseServerOwnerRule",
714
+ DeleteDatabaseServerOwnerRule = "DeleteDatabaseServerOwnerRule",
715
+ EditDatabaseServerOwnerRule = "EditDatabaseServerOwnerRule",
716
+ ReadDatabaseServerOwnerRule = "ReadDatabaseServerOwnerRule",
717
+
712
718
  // Ceph Cluster Label Rule Permissions
713
719
  CreateCephClusterLabelRule = "CreateCephClusterLabelRule",
714
720
  DeleteCephClusterLabelRule = "DeleteCephClusterLabelRule",
@@ -721,6 +727,12 @@ enum Permission {
721
727
  EditVMwareVCenterLabelRule = "EditVMwareVCenterLabelRule",
722
728
  ReadVMwareVCenterLabelRule = "ReadVMwareVCenterLabelRule",
723
729
 
730
+ // Database Label Rule Permissions
731
+ CreateDatabaseServerLabelRule = "CreateDatabaseServerLabelRule",
732
+ DeleteDatabaseServerLabelRule = "DeleteDatabaseServerLabelRule",
733
+ EditDatabaseServerLabelRule = "EditDatabaseServerLabelRule",
734
+ ReadDatabaseServerLabelRule = "ReadDatabaseServerLabelRule",
735
+
724
736
  // Runbook Owner Rule Permissions
725
737
  CreateRunbookOwnerRule = "CreateRunbookOwnerRule",
726
738
  DeleteRunbookOwnerRule = "DeleteRunbookOwnerRule",
@@ -1091,6 +1103,10 @@ enum Permission {
1091
1103
  EditVMwareVCenterFeed = "EditVMwareVCenterFeed",
1092
1104
  ReadVMwareVCenterFeed = "ReadVMwareVCenterFeed",
1093
1105
 
1106
+ CreateDatabaseServerFeed = "CreateDatabaseServerFeed",
1107
+ EditDatabaseServerFeed = "EditDatabaseServerFeed",
1108
+ ReadDatabaseServerFeed = "ReadDatabaseServerFeed",
1109
+
1094
1110
  CreatePodmanHostFeed = "CreatePodmanHostFeed",
1095
1111
  EditPodmanHostFeed = "EditPodmanHostFeed",
1096
1112
  ReadPodmanHostFeed = "ReadPodmanHostFeed",
@@ -1533,6 +1549,11 @@ enum Permission {
1533
1549
  EditVMwareVCenter = "EditVMwareVCenter",
1534
1550
  ReadVMwareVCenter = "ReadVMwareVCenter",
1535
1551
 
1552
+ CreateDatabaseServer = "CreateDatabaseServer",
1553
+ DeleteDatabaseServer = "DeleteDatabaseServer",
1554
+ EditDatabaseServer = "EditDatabaseServer",
1555
+ ReadDatabaseServer = "ReadDatabaseServer",
1556
+
1536
1557
  CreateProxmoxClusterOwnerTeam = "CreateProxmoxClusterOwnerTeam",
1537
1558
  CreateDockerSwarmClusterOwnerTeam = "CreateDockerSwarmClusterOwnerTeam",
1538
1559
  DeleteProxmoxClusterOwnerTeam = "DeleteProxmoxClusterOwnerTeam",
@@ -1571,6 +1592,11 @@ enum Permission {
1571
1592
  EditVMwareVCenterOwnerTeam = "EditVMwareVCenterOwnerTeam",
1572
1593
  ReadVMwareVCenterOwnerTeam = "ReadVMwareVCenterOwnerTeam",
1573
1594
 
1595
+ CreateDatabaseServerOwnerTeam = "CreateDatabaseServerOwnerTeam",
1596
+ DeleteDatabaseServerOwnerTeam = "DeleteDatabaseServerOwnerTeam",
1597
+ EditDatabaseServerOwnerTeam = "EditDatabaseServerOwnerTeam",
1598
+ ReadDatabaseServerOwnerTeam = "ReadDatabaseServerOwnerTeam",
1599
+
1574
1600
  CreateCephClusterOwnerUser = "CreateCephClusterOwnerUser",
1575
1601
  DeleteCephClusterOwnerUser = "DeleteCephClusterOwnerUser",
1576
1602
  EditCephClusterOwnerUser = "EditCephClusterOwnerUser",
@@ -1581,6 +1607,11 @@ enum Permission {
1581
1607
  EditVMwareVCenterOwnerUser = "EditVMwareVCenterOwnerUser",
1582
1608
  ReadVMwareVCenterOwnerUser = "ReadVMwareVCenterOwnerUser",
1583
1609
 
1610
+ CreateDatabaseServerOwnerUser = "CreateDatabaseServerOwnerUser",
1611
+ DeleteDatabaseServerOwnerUser = "DeleteDatabaseServerOwnerUser",
1612
+ EditDatabaseServerOwnerUser = "EditDatabaseServerOwnerUser",
1613
+ ReadDatabaseServerOwnerUser = "ReadDatabaseServerOwnerUser",
1614
+
1584
1615
  CreateHost = "CreateHost",
1585
1616
  DeleteHost = "DeleteHost",
1586
1617
  EditHost = "EditHost",
@@ -1851,6 +1882,12 @@ enum Permission {
1851
1882
  EditIncidentEpisodeMember = "EditIncidentEpisodeMember",
1852
1883
  ReadIncidentEpisodeMember = "ReadIncidentEpisodeMember",
1853
1884
 
1885
+ // Incident Alert (alerts linked to an incident) Permissions
1886
+ CreateIncidentAlert = "CreateIncidentAlert",
1887
+ DeleteIncidentAlert = "DeleteIncidentAlert",
1888
+ EditIncidentAlert = "EditIncidentAlert",
1889
+ ReadIncidentAlert = "ReadIncidentAlert",
1890
+
1854
1891
  // Incident Episode State Timeline Permissions
1855
1892
  CreateIncidentEpisodeStateTimeline = "CreateIncidentEpisodeStateTimeline",
1856
1893
  DeleteIncidentEpisodeStateTimeline = "DeleteIncidentEpisodeStateTimeline",
@@ -3589,6 +3626,37 @@ export class PermissionHelper {
3589
3626
  group: PermissionGroup.Telemetry,
3590
3627
  },
3591
3628
 
3629
+ {
3630
+ permission: Permission.CreateDatabaseServerFeed,
3631
+ title: "Create Database Feed",
3632
+ description:
3633
+ "This permission can create the activity feed of a database in this project.",
3634
+ isAssignableToTenant: true,
3635
+ isAccessControlPermission: false,
3636
+ isRolePermission: false,
3637
+ group: PermissionGroup.Telemetry,
3638
+ },
3639
+ {
3640
+ permission: Permission.EditDatabaseServerFeed,
3641
+ title: "Edit Database Feed",
3642
+ description:
3643
+ "This permission can edit the activity feed of a database in this project.",
3644
+ isAssignableToTenant: true,
3645
+ isAccessControlPermission: false,
3646
+ isRolePermission: false,
3647
+ group: PermissionGroup.Telemetry,
3648
+ },
3649
+ {
3650
+ permission: Permission.ReadDatabaseServerFeed,
3651
+ title: "Read Database Feed",
3652
+ description:
3653
+ "This permission can read the activity feed of a database in this project.",
3654
+ isAssignableToTenant: true,
3655
+ isAccessControlPermission: false,
3656
+ isRolePermission: false,
3657
+ group: PermissionGroup.Telemetry,
3658
+ },
3659
+
3592
3660
  {
3593
3661
  permission: Permission.CreatePodmanHostFeed,
3594
3662
  title: "Create Podman Host Feed",
@@ -9426,6 +9494,45 @@ export class PermissionHelper {
9426
9494
  isRolePermission: false,
9427
9495
  group: PermissionGroup.Telemetry,
9428
9496
  },
9497
+
9498
+ {
9499
+ permission: Permission.CreateDatabaseServer,
9500
+ title: "Create Database",
9501
+ description: "This permission can create databases in this project.",
9502
+ isAssignableToTenant: true,
9503
+ isAccessControlPermission: false,
9504
+ isRolePermission: false,
9505
+ group: PermissionGroup.Telemetry,
9506
+ },
9507
+ {
9508
+ permission: Permission.DeleteDatabaseServer,
9509
+ title: "Delete Database",
9510
+ description: "This permission can delete databases of this project.",
9511
+ isAssignableToTenant: true,
9512
+ isAccessControlPermission: true,
9513
+ isRolePermission: false,
9514
+ group: PermissionGroup.Telemetry,
9515
+ },
9516
+ {
9517
+ permission: Permission.EditDatabaseServer,
9518
+ title: "Edit Database",
9519
+ description:
9520
+ "This permission can edit databases of this project, including their endpoints.",
9521
+ isAssignableToTenant: true,
9522
+ isAccessControlPermission: true,
9523
+ isRolePermission: false,
9524
+ group: PermissionGroup.Telemetry,
9525
+ },
9526
+ {
9527
+ permission: Permission.ReadDatabaseServer,
9528
+ title: "Read Database",
9529
+ description:
9530
+ "This permission can read databases of this project, including their endpoints.",
9531
+ isAssignableToTenant: true,
9532
+ isAccessControlPermission: true,
9533
+ isRolePermission: false,
9534
+ group: PermissionGroup.Telemetry,
9535
+ },
9429
9536
  ];
9430
9537
 
9431
9538
  /*
@@ -10524,6 +10631,47 @@ export class PermissionHelper {
10524
10631
  group: PermissionGroup.Telemetry,
10525
10632
  },
10526
10633
 
10634
+ {
10635
+ permission: Permission.CreateDatabaseServerOwnerTeam,
10636
+ title: "Create Database Team Owner",
10637
+ description:
10638
+ "This permission can create Database Team Owner of this project.",
10639
+ isAssignableToTenant: true,
10640
+ isAccessControlPermission: false,
10641
+ isRolePermission: false,
10642
+ group: PermissionGroup.Telemetry,
10643
+ },
10644
+ {
10645
+ permission: Permission.DeleteDatabaseServerOwnerTeam,
10646
+ title: "Delete Database Team Owner",
10647
+ description:
10648
+ "This permission can delete Database Team Owner of this project.",
10649
+ isAssignableToTenant: true,
10650
+ isAccessControlPermission: false,
10651
+ isRolePermission: false,
10652
+ group: PermissionGroup.Telemetry,
10653
+ },
10654
+ {
10655
+ permission: Permission.EditDatabaseServerOwnerTeam,
10656
+ title: "Edit Database Team Owner",
10657
+ description:
10658
+ "This permission can edit Database Team Owner of this project.",
10659
+ isAssignableToTenant: true,
10660
+ isAccessControlPermission: false,
10661
+ isRolePermission: false,
10662
+ group: PermissionGroup.Telemetry,
10663
+ },
10664
+ {
10665
+ permission: Permission.ReadDatabaseServerOwnerTeam,
10666
+ title: "Read Database Team Owner",
10667
+ description:
10668
+ "This permission can read Database Team Owner of this project.",
10669
+ isAssignableToTenant: true,
10670
+ isAccessControlPermission: false,
10671
+ isRolePermission: false,
10672
+ group: PermissionGroup.Telemetry,
10673
+ },
10674
+
10527
10675
  {
10528
10676
  permission: Permission.CreateCephClusterOwnerUser,
10529
10677
  title: "Create Ceph Cluster User Owner",
@@ -10606,6 +10754,47 @@ export class PermissionHelper {
10606
10754
  group: PermissionGroup.Telemetry,
10607
10755
  },
10608
10756
 
10757
+ {
10758
+ permission: Permission.CreateDatabaseServerOwnerUser,
10759
+ title: "Create Database User Owner",
10760
+ description:
10761
+ "This permission can create Database User Owner of this project.",
10762
+ isAssignableToTenant: true,
10763
+ isAccessControlPermission: false,
10764
+ isRolePermission: false,
10765
+ group: PermissionGroup.Telemetry,
10766
+ },
10767
+ {
10768
+ permission: Permission.DeleteDatabaseServerOwnerUser,
10769
+ title: "Delete Database User Owner",
10770
+ description:
10771
+ "This permission can delete Database User Owner of this project.",
10772
+ isAssignableToTenant: true,
10773
+ isAccessControlPermission: false,
10774
+ isRolePermission: false,
10775
+ group: PermissionGroup.Telemetry,
10776
+ },
10777
+ {
10778
+ permission: Permission.EditDatabaseServerOwnerUser,
10779
+ title: "Edit Database User Owner",
10780
+ description:
10781
+ "This permission can edit Database User Owner of this project.",
10782
+ isAssignableToTenant: true,
10783
+ isAccessControlPermission: false,
10784
+ isRolePermission: false,
10785
+ group: PermissionGroup.Telemetry,
10786
+ },
10787
+ {
10788
+ permission: Permission.ReadDatabaseServerOwnerUser,
10789
+ title: "Read Database User Owner",
10790
+ description:
10791
+ "This permission can read Database User Owner of this project.",
10792
+ isAssignableToTenant: true,
10793
+ isAccessControlPermission: false,
10794
+ isRolePermission: false,
10795
+ group: PermissionGroup.Telemetry,
10796
+ },
10797
+
10609
10798
  {
10610
10799
  permission: Permission.CreateDockerHostOwnerTeam,
10611
10800
  title: "Create Docker Host Team Owner",
@@ -13285,6 +13474,48 @@ export class PermissionHelper {
13285
13474
  group: PermissionGroup.Telemetry,
13286
13475
  },
13287
13476
 
13477
+ // Database Owner Rule Permissions
13478
+ {
13479
+ permission: Permission.CreateDatabaseServerOwnerRule,
13480
+ title: "Create Database Owner Rule",
13481
+ description:
13482
+ "This permission can create Database Owner Rules in this project.",
13483
+ isAssignableToTenant: true,
13484
+ isAccessControlPermission: false,
13485
+ isRolePermission: false,
13486
+ group: PermissionGroup.Telemetry,
13487
+ },
13488
+ {
13489
+ permission: Permission.DeleteDatabaseServerOwnerRule,
13490
+ title: "Delete Database Owner Rule",
13491
+ description:
13492
+ "This permission can delete Database Owner Rules of this project.",
13493
+ isAssignableToTenant: true,
13494
+ isAccessControlPermission: false,
13495
+ isRolePermission: false,
13496
+ group: PermissionGroup.Telemetry,
13497
+ },
13498
+ {
13499
+ permission: Permission.EditDatabaseServerOwnerRule,
13500
+ title: "Edit Database Owner Rule",
13501
+ description:
13502
+ "This permission can edit Database Owner Rules of this project.",
13503
+ isAssignableToTenant: true,
13504
+ isAccessControlPermission: false,
13505
+ isRolePermission: false,
13506
+ group: PermissionGroup.Telemetry,
13507
+ },
13508
+ {
13509
+ permission: Permission.ReadDatabaseServerOwnerRule,
13510
+ title: "Read Database Owner Rule",
13511
+ description:
13512
+ "This permission can read Database Owner Rules of this project.",
13513
+ isAssignableToTenant: true,
13514
+ isAccessControlPermission: false,
13515
+ isRolePermission: false,
13516
+ group: PermissionGroup.Telemetry,
13517
+ },
13518
+
13288
13519
  // Ceph Cluster Label Rule Permissions
13289
13520
  {
13290
13521
  permission: Permission.CreateCephClusterLabelRule,
@@ -13369,6 +13600,48 @@ export class PermissionHelper {
13369
13600
  group: PermissionGroup.Telemetry,
13370
13601
  },
13371
13602
 
13603
+ // Database Label Rule Permissions
13604
+ {
13605
+ permission: Permission.CreateDatabaseServerLabelRule,
13606
+ title: "Create Database Label Rule",
13607
+ description:
13608
+ "This permission can create Database Label Rules in this project.",
13609
+ isAssignableToTenant: true,
13610
+ isAccessControlPermission: false,
13611
+ isRolePermission: false,
13612
+ group: PermissionGroup.Telemetry,
13613
+ },
13614
+ {
13615
+ permission: Permission.DeleteDatabaseServerLabelRule,
13616
+ title: "Delete Database Label Rule",
13617
+ description:
13618
+ "This permission can delete Database Label Rules of this project.",
13619
+ isAssignableToTenant: true,
13620
+ isAccessControlPermission: false,
13621
+ isRolePermission: false,
13622
+ group: PermissionGroup.Telemetry,
13623
+ },
13624
+ {
13625
+ permission: Permission.EditDatabaseServerLabelRule,
13626
+ title: "Edit Database Label Rule",
13627
+ description:
13628
+ "This permission can edit Database Label Rules of this project.",
13629
+ isAssignableToTenant: true,
13630
+ isAccessControlPermission: false,
13631
+ isRolePermission: false,
13632
+ group: PermissionGroup.Telemetry,
13633
+ },
13634
+ {
13635
+ permission: Permission.ReadDatabaseServerLabelRule,
13636
+ title: "Read Database Label Rule",
13637
+ description:
13638
+ "This permission can read Database Label Rules of this project.",
13639
+ isAssignableToTenant: true,
13640
+ isAccessControlPermission: false,
13641
+ isRolePermission: false,
13642
+ group: PermissionGroup.Telemetry,
13643
+ },
13644
+
13372
13645
  // Runbook Owner Rule Permissions
13373
13646
  {
13374
13647
  permission: Permission.CreateRunbookOwnerRule,
@@ -15015,6 +15288,48 @@ export class PermissionHelper {
15015
15288
  group: PermissionGroup.Incident,
15016
15289
  },
15017
15290
 
15291
+ // Incident Alert (alerts linked to an incident) Permissions
15292
+ {
15293
+ permission: Permission.CreateIncidentAlert,
15294
+ title: "Create Incident Alert",
15295
+ description:
15296
+ "This permission can link alerts to incidents in this project.",
15297
+ isAssignableToTenant: true,
15298
+ isAccessControlPermission: false,
15299
+ isRolePermission: false,
15300
+ group: PermissionGroup.Incident,
15301
+ },
15302
+ {
15303
+ permission: Permission.DeleteIncidentAlert,
15304
+ title: "Delete Incident Alert",
15305
+ description:
15306
+ "This permission can unlink alerts from incidents in this project.",
15307
+ isAssignableToTenant: true,
15308
+ isAccessControlPermission: false,
15309
+ isRolePermission: false,
15310
+ group: PermissionGroup.Incident,
15311
+ },
15312
+ {
15313
+ permission: Permission.EditIncidentAlert,
15314
+ title: "Edit Incident Alert",
15315
+ description:
15316
+ "This permission can edit the links between alerts and incidents in this project.",
15317
+ isAssignableToTenant: true,
15318
+ isAccessControlPermission: false,
15319
+ isRolePermission: false,
15320
+ group: PermissionGroup.Incident,
15321
+ },
15322
+ {
15323
+ permission: Permission.ReadIncidentAlert,
15324
+ title: "Read Incident Alert",
15325
+ description:
15326
+ "This permission can read which alerts are linked to which incidents in this project.",
15327
+ isAssignableToTenant: true,
15328
+ isAccessControlPermission: false,
15329
+ isRolePermission: false,
15330
+ group: PermissionGroup.Incident,
15331
+ },
15332
+
15018
15333
  // Incident Episode State Timeline Permissions
15019
15334
  {
15020
15335
  permission: Permission.CreateIncidentEpisodeStateTimeline,
@@ -15,7 +15,15 @@ export interface PerSeriesCriteriaMatch {
15
15
  fingerprint: string;
16
16
  labels: JSONObject;
17
17
  rootCause: string;
18
+ /** The context of the first filter this series matched. */
18
19
  metricContext?: MetricCriteriaContext | undefined;
20
+ /**
21
+ * The context of EVERY filter this series matched, in filter order. Under
22
+ * an "Any" criteria two series can match on different filters; a reader
23
+ * that describes one filter picks that filter's context from here rather
24
+ * than trusting `metricContext` to be about it.
25
+ */
26
+ metricContexts?: Array<MetricCriteriaContext> | undefined;
19
27
  }
20
28
 
21
29
  /**
@@ -122,6 +122,16 @@ export const RULE_CRITERIA_FIELDS_BY_MODEL: Readonly<
122
122
  "dashboardNamePattern",
123
123
  "dashboardDescriptionPattern",
124
124
  ],
125
+ DatabaseServerLabelRule: [
126
+ "databaseServerLabels",
127
+ "databaseServerNamePattern",
128
+ "databaseServerDescriptionPattern",
129
+ ],
130
+ DatabaseServerOwnerRule: [
131
+ "databaseServerLabels",
132
+ "databaseServerNamePattern",
133
+ "databaseServerDescriptionPattern",
134
+ ],
125
135
  DockerHostLabelRule: [
126
136
  "dockerHostLabels",
127
137
  "dockerHostNamePattern",
@@ -53,6 +53,8 @@ export enum RuleRunType {
53
53
  CloudResourceOwnerRule = "CloudResourceOwnerRule",
54
54
  DashboardLabelRule = "DashboardLabelRule",
55
55
  DashboardOwnerRule = "DashboardOwnerRule",
56
+ DatabaseServerLabelRule = "DatabaseServerLabelRule",
57
+ DatabaseServerOwnerRule = "DatabaseServerOwnerRule",
56
58
  DockerHostLabelRule = "DockerHostLabelRule",
57
59
  DockerHostOwnerRule = "DockerHostOwnerRule",
58
60
  DockerSwarmClusterLabelRule = "DockerSwarmClusterLabelRule",
@@ -171,6 +173,16 @@ export const RULE_RUN_TYPE_METADATA: Readonly<
171
173
  ),
172
174
  [RuleRunType.DashboardLabelRule]: metadata(Labels, "dashboard", "dashboards"),
173
175
  [RuleRunType.DashboardOwnerRule]: metadata(Owners, "dashboard", "dashboards"),
176
+ [RuleRunType.DatabaseServerLabelRule]: metadata(
177
+ Labels,
178
+ "database",
179
+ "databases",
180
+ ),
181
+ [RuleRunType.DatabaseServerOwnerRule]: metadata(
182
+ Owners,
183
+ "database",
184
+ "databases",
185
+ ),
174
186
  [RuleRunType.DockerHostLabelRule]: metadata(
175
187
  Labels,
176
188
  "Docker host",
@@ -851,19 +851,38 @@ export interface SessionReplayConfigResponse {
851
851
  */
852
852
 
853
853
  /*
854
- * Origins the recorder may inject a W3C traceparent header into, so a
855
- * recording links to the backend trace of the request that failed —
856
- * with NO OTel browser instrumentation on the customer's page.
854
+ * CROSS-origin APIs the recorder may inject a W3C traceparent header
855
+ * into, so a recording links to the backend trace of the request that
856
+ * failed — with NO OTel browser instrumentation on the customer's page.
857
+ * Listed origins get traceparent only, never the session id. The page's
858
+ * own origin needs no entry: see sameOriginTracePropagation.
857
859
  *
858
- * Empty means never inject, and that default is the safety mechanism:
859
- * adding a request header turns a simple cross-origin request into a
860
- * preflighted one, and an API that does not allow traceparent in
860
+ * Empty means no cross-origin injection, and that default is the safety
861
+ * mechanism: adding a request header turns a simple cross-origin request
862
+ * into a preflighted one, and an API that does not allow traceparent in
861
863
  * Access-Control-Allow-Headers would start failing because a RUM
862
864
  * script was installed. Each listed origin is an explicit statement
863
865
  * that its API accepts the header.
864
866
  */
865
867
  tracePropagationOrigins?: Array<string>;
866
868
 
869
+ /*
870
+ * RumApplication.sessionReplaySameOriginTracePropagation. When true, the
871
+ * recorder adds a traceparent (unless the request or an inner tracing
872
+ * instrumentation already sets one) and a tracestate member carrying the
873
+ * replay session id (`oneuptime=sid:<id>`, see Utils/Rum/SessionTraceState)
874
+ * to fetch/XHR requests to the page's OWN origin, and only while the
875
+ * session is uploading with consent. Span ingest reads the member back,
876
+ * so backend spans link to the recording with no customer code.
877
+ *
878
+ * A same-origin request is never preflighted, so this needs no origin
879
+ * list and defaults on; the switch turns it off per application without
880
+ * a customer redeploy. The server always sends an explicit boolean (false
881
+ * on every disabled response) and the recorder reads anything but `true`
882
+ * as off, so an older server or a cached stub never turns it on.
883
+ */
884
+ sameOriginTracePropagation?: boolean;
885
+
867
886
  /*
868
887
  * Performance capture budgets, milliseconds; 0 disables that trigger.
869
888
  * Exceeding a budget fires the Performance capture trigger, so slow
@@ -1,6 +1,12 @@
1
1
  export interface WebVitalDefinition {
2
2
  key: string;
3
3
  label: string;
4
+ /*
5
+ * What the vital measures, in words a non-specialist can act on. The
6
+ * Good / Poor limits are not repeated here - describeWebVitalThresholds
7
+ * derives them from `thresholds`, so the two cannot disagree.
8
+ */
9
+ description: string;
4
10
  unit: "ms" | "score";
5
11
  thresholds: { warn: number; danger: number };
6
12
  names: Array<string>;
@@ -11,6 +17,8 @@ export const WebVitalDefinitions: Array<WebVitalDefinition> = [
11
17
  {
12
18
  key: "lcp",
13
19
  label: "Largest Contentful Paint",
20
+ description:
21
+ "How long until the biggest image or block of text on screen has rendered - roughly when the page looks loaded to the visitor.",
14
22
  unit: "ms",
15
23
  thresholds: { warn: 2500, danger: 4000 },
16
24
  names: [
@@ -23,6 +31,8 @@ export const WebVitalDefinitions: Array<WebVitalDefinition> = [
23
31
  {
24
32
  key: "inp",
25
33
  label: "Interaction to Next Paint",
34
+ description:
35
+ "How quickly the page reacts to clicks, taps and key presses: the delay before the screen visibly updates, for close to the slowest interaction on the page.",
26
36
  unit: "ms",
27
37
  thresholds: { warn: 200, danger: 500 },
28
38
  names: [
@@ -35,6 +45,8 @@ export const WebVitalDefinitions: Array<WebVitalDefinition> = [
35
45
  {
36
46
  key: "cls",
37
47
  label: "Cumulative Layout Shift",
48
+ description:
49
+ "How much the page jumps around while it loads - content moving under the visitor's cursor or finger. A score, not a time: lower is better and 0 means nothing moved.",
38
50
  unit: "score",
39
51
  thresholds: { warn: 0.1, danger: 0.25 },
40
52
  names: [
@@ -47,6 +59,8 @@ export const WebVitalDefinitions: Array<WebVitalDefinition> = [
47
59
  {
48
60
  key: "fcp",
49
61
  label: "First Contentful Paint",
62
+ description:
63
+ "How long until the first text or image appears, so the visitor can see the page has started loading.",
50
64
  unit: "ms",
51
65
  thresholds: { warn: 1800, danger: 3000 },
52
66
  names: [
@@ -59,6 +73,8 @@ export const WebVitalDefinitions: Array<WebVitalDefinition> = [
59
73
  {
60
74
  key: "ttfb",
61
75
  label: "Time to First Byte",
76
+ description:
77
+ "How long the browser waited for the first byte of the page from your server, including redirects, looking up the address and connecting.",
62
78
  unit: "ms",
63
79
  thresholds: { warn: 800, danger: 1800 },
64
80
  names: [
@@ -69,3 +85,39 @@ export const WebVitalDefinitions: Array<WebVitalDefinition> = [
69
85
  ],
70
86
  },
71
87
  ];
88
+
89
+ // A threshold the way a person would say it: "2.5 s", "800 ms", "0.1".
90
+ export function formatWebVitalThreshold(
91
+ value: number,
92
+ unit: WebVitalDefinition["unit"],
93
+ ): string {
94
+ if (unit === "score") {
95
+ return String(value);
96
+ }
97
+
98
+ if (value < 1000) {
99
+ return `${value} ms`;
100
+ }
101
+
102
+ return `${Number((value / 1000).toFixed(2))} s`;
103
+ }
104
+
105
+ /*
106
+ * The Good / Poor limits in words, matching how the overview rates a value:
107
+ * below `warn` is Good, at or above `danger` is Poor, and anything between
108
+ * needs work.
109
+ */
110
+ export function describeWebVitalThresholds(
111
+ definition: Pick<WebVitalDefinition, "unit" | "thresholds">,
112
+ ): string {
113
+ const warn: string = formatWebVitalThreshold(
114
+ definition.thresholds.warn,
115
+ definition.unit,
116
+ );
117
+ const danger: string = formatWebVitalThreshold(
118
+ definition.thresholds.danger,
119
+ definition.unit,
120
+ );
121
+
122
+ return `Good below ${warn}; poor at ${danger} or more.`;
123
+ }
@@ -86,6 +86,29 @@ enum EntityType {
86
86
  */
87
87
  Database = "database",
88
88
  RemoteService = "remote.service",
89
+ /*
90
+ * A database SERVER — the identity the Databases product (the
91
+ * DatabaseServer table) scopes telemetry by. OneUptime-defined and
92
+ * MEMBERSHIP-ONLY, with two kinds of key:
93
+ *
94
+ * - the ENDPOINT key (host[:port][@cluster],
95
+ * `EntityKey.keyForDatabaseEndpoint`), which ingest appends to the
96
+ * `entityKeys` of every DB CLIENT span, `db.client.*` datapoint and DB
97
+ * receiver batch that names the endpoint;
98
+ * - the ROW key (identity `oneuptime.database.server.id`,
99
+ * `EntityKey.keyForDatabaseServerRow`), which ingest appends to every
100
+ * row of a batch that resolved to a DatabaseServer row — as the
101
+ * primary entity or only through the id stamp — so a linked batch
102
+ * reaches its database whatever address it reports, or none.
103
+ *
104
+ * No resolver ever emits either, and neither is promoted to an
105
+ * InventoryItem row, so neither has a prune TTL. Both are deliberately
106
+ * engine-agnostic (no `db.system.name`), so a CockroachDB that clients
107
+ * reach over the PostgreSQL wire protocol still joins. Distinct from
108
+ * `Database` above, which is a logical database inferred by the
109
+ * dependency cron and keyed by engine + namespace.
110
+ */
111
+ DatabaseServer = "database.server",
89
112
  /*
90
113
  * Inventory-mirrored types. Unlike everything above, these are never
91
114
  * derived from an OTLP resource — the estate they describe is collected
@@ -118,6 +118,20 @@ export const RESOURCE_FACET_CATALOG: ReadonlyArray<ResourceFacetDefinition> = [
118
118
  pluralLabel: "IoT Fleets",
119
119
  icon: IconProp.IoT,
120
120
  },
121
+ /*
122
+ * A DatabaseServer row. Only a DB receiver batch without service.name is
123
+ * primary-keyed on it (so the count is `primaryEntityType =
124
+ * DatabaseServer`); a selection also matches the application CLIENT spans
125
+ * and `db.client.*` datapoints that name one of its endpoints, through
126
+ * the row's entity keys (see ResourceEntityFilter).
127
+ */
128
+ {
129
+ facetKey: "databaseServerId",
130
+ serviceType: ServiceType.DatabaseServer,
131
+ label: "Database",
132
+ pluralLabel: "Databases",
133
+ icon: IconProp.Database,
134
+ },
121
135
  ];
122
136
 
123
137
  // Catalog order — the order the sidebars list resource facets in.
@@ -32,6 +32,14 @@ enum ServiceType {
32
32
  ServerlessFunction = "ServerlessFunction",
33
33
  CloudResource = "CloudResource",
34
34
  RealUserMonitor = "RealUserMonitor",
35
+ /*
36
+ * A DatabaseServer row: telemetry collected from the database itself by an
37
+ * OTel Collector database receiver / the OneUptime Database Agent, when the
38
+ * resource carries no service.name. Application CLIENT spans that merely
39
+ * call the database keep their own service as primary entity and reach the
40
+ * database through its endpoint entity keys instead.
41
+ */
42
+ DatabaseServer = "DatabaseServer",
35
43
  /*
36
44
  * Telemetry that arrived without an OTel service.name and with no
37
45
  * host / docker / k8s resource signal. Instead of synthesising a
@@ -39,7 +39,7 @@ const Banner: FunctionComponent<ComponentProps> = (
39
39
 
40
40
  return (
41
41
  <div
42
- className={`flex border-gray-200 rounded-xl border-2 py-2.5 px-6 sm:px-3.5 mb-5${props.hideOnMobile ? " hidden md:flex" : ""}`}
42
+ className={`flex border-gray-200 rounded-xl border-2 py-2.5 px-6 sm:px-3.5 mb-5${props.hideOnMobile ? " max-md:hidden md:flex" : ""}`}
43
43
  >
44
44
  <p className="text-sm text-gray-400 hover:text-gray-500">
45
45
  {props.link && (