@oneuptime/common 12.0.34 → 13.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Models/DatabaseModels/Alert.ts +55 -0
- package/Models/DatabaseModels/CloudResource.ts +45 -7
- package/Models/DatabaseModels/CodeRepository.ts +85 -0
- package/Models/DatabaseModels/GlobalConfig.ts +12 -12
- package/Models/DatabaseModels/GoogleSecOpsConnection.ts +57 -7
- package/Models/DatabaseModels/GoogleSecOpsConnectionRun.ts +263 -0
- package/Models/DatabaseModels/Incident.ts +55 -0
- package/Models/DatabaseModels/Index.ts +16 -0
- package/Models/DatabaseModels/InventoryItem.ts +44 -1
- package/Models/DatabaseModels/NetworkDevice.ts +126 -0
- package/Models/DatabaseModels/ScheduledMaintenance.ts +55 -0
- package/Models/DatabaseModels/User.ts +51 -2
- package/Models/DatabaseModels/UserNotificationEmailRollupItem.ts +43 -2
- package/Models/DatabaseModels/UserWebAuthn.ts +17 -0
- package/Models/DatabaseModels/VMwareResource.ts +1149 -0
- package/Models/DatabaseModels/VMwareVCenter.ts +1122 -0
- package/Models/DatabaseModels/VMwareVCenterFeed.ts +625 -0
- package/Models/DatabaseModels/VMwareVCenterLabelRule.ts +514 -0
- package/Models/DatabaseModels/VMwareVCenterOwnerRule.ts +596 -0
- package/Models/DatabaseModels/VMwareVCenterOwnerTeam.ts +485 -0
- package/Models/DatabaseModels/VMwareVCenterOwnerUser.ts +484 -0
- package/Models/DatabaseModels/WorkflowVariable.ts +22 -1
- package/Server/API/AIAgentDataAPI.ts +79 -4
- package/Server/API/AIAgentGitHubAPI.ts +523 -0
- package/Server/API/AIChatAPI.ts +20 -1
- package/Server/API/BillingAPI.ts +33 -0
- package/Server/API/DashboardAPI.ts +10 -0
- package/Server/API/GitHubAPI.ts +47 -5
- package/Server/API/GoogleSecOpsConnectionAPI.ts +79 -0
- package/Server/API/UserWebAuthnAPI.ts +21 -1
- package/Server/API/VMwareResourceAPI.ts +143 -0
- package/Server/EnvironmentConfig.ts +47 -16
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791700000000-AddMacAddressToNetworkDevice.ts +25 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791800000000-SplitWebAuthnChallengeByPurpose.ts +68 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791900000000-AddSeverityAndStateToNotificationEmailRollup.ts +26 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1792000000000-AddVMwareTables.ts +636 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1792100000000-AddGitHubCommandSettingsToCodeRepository.ts +47 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1792200000000-AddUserWebAuthnPurpose.ts +17 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1792300000000-AddGoogleSecOpsDiagnostics.ts +83 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +14 -0
- package/Server/Infrastructure/Redis.ts +8 -8
- package/Server/Infrastructure/Status.ts +10 -4
- package/Server/Middleware/IdentityRateLimit.ts +101 -0
- package/Server/Services/AIRunService.ts +13 -0
- package/Server/Services/BillingPaymentMethodService.ts +99 -28
- package/Server/Services/BillingService.ts +287 -20
- package/Server/Services/CloudResourceInstanceService.ts +70 -0
- package/Server/Services/DatabaseService.ts +65 -13
- package/Server/Services/ExceptionAggregationService.ts +1 -0
- package/Server/Services/GoogleSecOpsConnectionRunService.ts +10 -0
- package/Server/Services/GoogleSecOpsConnectionService.ts +12 -0
- package/Server/Services/Index.ts +16 -0
- package/Server/Services/InventoryItemService.ts +31 -1
- package/Server/Services/LogAggregationService.ts +1 -0
- package/Server/Services/MetricAggregationService.ts +1 -0
- package/Server/Services/MobilePasskeyLoginService.ts +216 -0
- package/Server/Services/MonitorService.ts +51 -1
- package/Server/Services/MonitorTemplateService.ts +218 -35
- package/Server/Services/NetworkDeviceAutoImportRuleEngineService.ts +481 -42
- package/Server/Services/NetworkDeviceAutoImportRuleService.ts +176 -2
- package/Server/Services/NetworkDeviceDiscoveryScanService.ts +87 -2
- package/Server/Services/NetworkDeviceService.ts +69 -0
- package/Server/Services/OpenTelemetryIngestService.ts +17 -0
- package/Server/Services/PayAsYouGoBillingService.ts +446 -0
- package/Server/Services/ProjectService.ts +46 -2
- package/Server/Services/ServerlessFunctionInstanceService.ts +71 -0
- package/Server/Services/TeamMemberService.ts +96 -36
- package/Server/Services/TelemetryIngestionKeyService.ts +80 -10
- package/Server/Services/TelemetryUsageBillingService.ts +95 -5
- package/Server/Services/TraceAggregationService.ts +5 -4
- package/Server/Services/UserNotificationRuleService.ts +76 -25
- package/Server/Services/UserWebAuthnService.ts +592 -133
- package/Server/Services/VMwareResourceService.ts +648 -0
- package/Server/Services/VMwareVCenterFeedService.ts +99 -0
- package/Server/Services/VMwareVCenterLabelRuleEngineService.ts +240 -0
- package/Server/Services/VMwareVCenterLabelRuleService.ts +14 -0
- package/Server/Services/VMwareVCenterOwnerRuleEngineService.ts +252 -0
- package/Server/Services/VMwareVCenterOwnerRuleService.ts +14 -0
- package/Server/Services/VMwareVCenterOwnerTeamService.ts +139 -0
- package/Server/Services/VMwareVCenterOwnerUserService.ts +133 -0
- package/Server/Services/VMwareVCenterService.ts +629 -0
- package/Server/Services/WorkflowVariableService.ts +203 -0
- package/Server/Types/Billing/MeteredPlan/ActiveMonitoringMeteredPlan.ts +17 -0
- package/Server/Types/Billing/MeteredPlan/TelemetryMeteredPlan.ts +31 -1
- package/Server/Types/Database/Permissions/ReadPermission.ts +45 -5
- package/Server/Types/Database/QueryUtil.ts +56 -0
- package/Server/Types/Markdown.ts +93 -1
- package/Server/Utils/CodeRepository/GitHub/GitHub.ts +7 -0
- package/Server/Utils/CodeRepository/GitHub/GitHubAgentTaskTrigger.ts +341 -0
- package/Server/Utils/CodeRepository/GitHub/GitHubCommandAuthorizer.ts +274 -0
- package/Server/Utils/CodeRepository/GitHub/GitHubCommandParser.ts +375 -0
- package/Server/Utils/CodeRepository/GitHub/GitHubConversation.ts +846 -0
- package/Server/Utils/CodeRepository/GitHub/GitHubReplyComposer.ts +360 -0
- package/Server/Utils/CodeRepository/GitHub/GitHubRunReply.ts +421 -0
- package/Server/Utils/CodeRepository/GitHub/GitHubWebhookEvents.ts +140 -0
- package/Server/Utils/CodeRepository/GitHub/GitHubWebhookHandler.ts +906 -0
- package/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.ts +225 -17
- package/Server/Utils/DataSource/EgressGuard.ts +160 -15
- package/Server/Utils/Database/TruncateColumnValue.ts +1 -1
- package/Server/Utils/EmailRollup/EmailRollupFlushRunner.ts +12 -1
- package/Server/Utils/EmailRollup/EmailRollupRenderer.ts +35 -2
- package/Server/Utils/EmailRollup/EmailRollupWriter.ts +44 -0
- package/Server/Utils/LogRedaction.ts +2 -1
- package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +82 -35
- package/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.ts +31 -5
- package/Server/Utils/Monitor/MonitorAlert.ts +1 -1
- package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +502 -38
- package/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.ts +82 -9
- package/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.ts +16 -7
- package/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.ts +29 -17
- package/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.ts +107 -48
- package/Server/Utils/Monitor/MonitorMaintenanceSuppression.ts +26 -4
- package/Server/Utils/Monitor/MonitorResourceContext.ts +5 -3
- package/Server/Utils/Monitor/MonitorStepResourceIdentity.ts +14 -0
- package/Server/Utils/Monitor/MonitorTemplateUtil.ts +1 -0
- package/Server/Utils/Monitor/NetworkDeviceMacLearningUtil.ts +158 -0
- package/Server/Utils/Monitor/NetworkInventoryUtil.ts +27 -0
- package/Server/Utils/Monitor/SeriesResourceLabels.ts +26 -0
- package/Server/Utils/Monitor/SeriesResourceLinker.ts +28 -5
- package/Server/Utils/ResourceFeed/ResourceFeedUtil.ts +3 -3
- package/Server/Utils/SecurityEvent/ConnectorErrorMessage.ts +14 -9
- package/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsClient.ts +116 -84
- package/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsPoller.ts +594 -195
- package/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsRunExecutor.ts +466 -0
- package/Server/Utils/Telemetry/EntityRegistry.ts +16 -1
- package/Server/Utils/Telemetry/ResourceHeartbeat.ts +2 -1
- package/Server/Utils/Telemetry/TelemetryEntity.ts +264 -10
- package/Server/Utils/Telemetry/VMwareSnapshotScan.ts +1352 -0
- package/Tests/App/Accounts/LoginPasskey.test.tsx +529 -0
- package/Tests/App/Accounts/MobilePasskey.test.tsx +620 -0
- package/Tests/App/Accounts/PasswordRequirements.test.tsx +254 -0
- package/Tests/App/Accounts/RegisterPassword.test.tsx +553 -0
- package/Tests/App/Dashboard/AddNeighborToMonitoringModal.test.tsx +32 -0
- package/Tests/App/Dashboard/AdoptedDeviceDrawer.test.tsx +374 -0
- package/Tests/App/Dashboard/AskAiAvailability.test.ts +224 -0
- package/Tests/App/Dashboard/AskAiDisabled.test.tsx +432 -0
- package/Tests/App/Dashboard/BackupCodes.test.tsx +414 -0
- package/Tests/App/Dashboard/BillingPaidUsageFlow.test.tsx +530 -0
- package/Tests/App/Dashboard/BillingPaymentMethodForm.test.tsx +195 -0
- package/Tests/App/Dashboard/BreadcrumbCoverage.test.tsx +199 -0
- package/Tests/App/Dashboard/CloudDocumentationCard.test.tsx +198 -0
- package/Tests/App/Dashboard/CloudDocumentationMarkdown.test.ts +215 -0
- package/Tests/App/Dashboard/CloudFleetSummary.test.ts +183 -0
- package/Tests/App/Dashboard/CloudFleetSummaryComponent.test.tsx +248 -0
- package/Tests/App/Dashboard/CloudResourceTelemetryScope.test.ts +215 -0
- package/Tests/App/Dashboard/CriteriaFilterDefaults.test.ts +3 -0
- package/Tests/App/Dashboard/DashboardHeaderRequests.test.tsx +441 -0
- package/Tests/App/Dashboard/DashboardLabelVariables.test.tsx +580 -0
- package/Tests/App/Dashboard/DashboardLazyPages.test.tsx +458 -0
- package/Tests/App/Dashboard/DashboardMonitorLabelVariable.test.tsx +438 -0
- package/Tests/App/Dashboard/DashboardToolbarPopupLayering.test.tsx +566 -0
- package/Tests/App/Dashboard/DashboardVariableAllContract.test.tsx +5 -2
- package/Tests/App/Dashboard/DeviceAttachmentCard.test.tsx +273 -0
- package/Tests/App/Dashboard/DiscoveryReviewInventoryRefresh.test.tsx +505 -0
- package/Tests/App/Dashboard/DiscoveryScanLivePage.test.tsx +376 -0
- package/Tests/App/Dashboard/DiscoveryScanLiveUpdates.test.tsx +642 -0
- package/Tests/App/Dashboard/DiscoveryScanProgress.test.tsx +267 -0
- package/Tests/App/Dashboard/DiscoveryScanWizardValidation.test.tsx +69 -231
- package/Tests/App/Dashboard/EntityDetailPanel.test.tsx +163 -0
- package/Tests/App/Dashboard/GoogleSecOpsConnectionsErrors.test.tsx +244 -0
- package/Tests/App/Dashboard/GoogleSecOpsDiagnostics.test.tsx +724 -0
- package/Tests/App/Dashboard/InfrastructureExplorer.test.tsx +401 -0
- package/Tests/App/Dashboard/InfrastructureGraph.test.tsx +232 -0
- package/Tests/App/Dashboard/InventoryItems.test.tsx +201 -0
- package/Tests/App/Dashboard/InventoryTypeAndStatusFacets.test.tsx +798 -0
- package/Tests/App/Dashboard/MonitorTemplateSyncFields.test.tsx +539 -0
- package/Tests/App/Dashboard/NetworkTopologyLiveView.test.tsx +320 -0
- package/Tests/App/Dashboard/NetworkTopologyToolbar.test.tsx +275 -0
- package/Tests/App/Dashboard/OnCallCalendarFeedEmptyState.test.tsx +975 -0
- package/Tests/App/Dashboard/OnCallCalendarFeedPlanGate.test.tsx +63 -0
- package/Tests/App/Dashboard/OnCallLayerCardOverrides.test.tsx +24 -7
- package/Tests/App/Dashboard/OnCallOverridePresentation.test.ts +496 -0
- package/Tests/App/Dashboard/OnCallScheduleOverrideClarity.test.tsx +677 -0
- package/Tests/App/Dashboard/OnCallSchedulePreviewOverrides.test.tsx +31 -3
- package/Tests/App/Dashboard/PaidUsageConsent.test.tsx +180 -0
- package/Tests/App/Dashboard/PasskeySettings.test.tsx +1220 -0
- package/Tests/App/Dashboard/PayAsYouGoConsentGate.test.tsx +176 -275
- package/Tests/App/Dashboard/PayAsYouGoNotices.test.tsx +380 -233
- package/Tests/App/Dashboard/ProductMenuBreadcrumbs.test.tsx +3 -23
- package/Tests/App/Dashboard/ResourceFeed.test.tsx +1 -0
- package/Tests/App/Dashboard/ResourceFeedPageWiring.test.ts +8 -1
- package/Tests/App/Dashboard/ServiceMapGraph.test.tsx +626 -0
- package/Tests/App/Dashboard/TopologyDataLoading.test.tsx +348 -0
- package/Tests/App/Dashboard/TopologyPageNavigation.test.tsx +331 -0
- package/Tests/App/Dashboard/TwoFactorStatus.test.tsx +260 -0
- package/Tests/App/Dashboard/UserSettingsEmailPreferences.test.tsx +603 -0
- package/Tests/App/Dashboard/UserSettingsNotificationSettings.test.tsx +324 -0
- package/Tests/App/Dashboard/VMwareDashboardWidgets.test.ts +573 -0
- package/Tests/App/Dashboard/WidgetCatalog.test.ts +2 -0
- package/Tests/App/Dashboard/WorkflowVariablesTable.test.tsx +768 -0
- package/Tests/App/PublicDashboard/DashboardVariableSelector.test.tsx +13 -4
- package/Tests/App/StatusPage/StatusPageOidcOrigin.test.tsx +223 -0
- package/Tests/App/StatusPage/StatusPageOverviewLiveAndSearch.test.tsx +532 -40
- package/Tests/App/StatusPage/StatusPageResourceSearchBox.test.tsx +19 -2
- package/Tests/Fixtures/MobilePasskeyUser.json +8 -0
- package/Tests/Models/DatabaseModels/ResourceFeedModels.test.ts +25 -6
- package/Tests/Models/DatabaseModels/VMwareModels.test.ts +1134 -0
- package/Tests/Models/InventoryItemStatus.test.ts +147 -0
- package/Tests/Models/NetworkDeviceMacAddressColumn.test.ts +294 -0
- package/Tests/Models/RunnerVersionLabel.test.ts +4 -2
- package/Tests/Server/API/AIChatProvidersAIEnabled.test.ts +259 -0
- package/Tests/Server/API/AIChatRouteAuthorization.test.ts +31 -2
- package/Tests/Server/API/BillingPayAsYouGoStatus.test.ts +116 -0
- package/Tests/Server/API/DashboardPublicResourceListAPI.test.ts +158 -1
- package/Tests/Server/API/EnterpriseLicenseReportUserCount.test.ts +13 -2
- package/Tests/Server/API/GitHubWebhookSignature.test.ts +368 -0
- package/Tests/Server/API/GoogleSecOpsConnectionAPI.test.ts +248 -0
- package/Tests/Server/API/UserWebAuthnAuthenticationOptionsRoute.test.ts +330 -0
- package/Tests/Server/API/UserWebAuthnPasskeyAPI.test.ts +172 -0
- package/Tests/Server/API/VMwareResourceAPI.test.ts +546 -0
- package/Tests/Server/EnvironmentConfigValkey.test.ts +227 -0
- package/Tests/Server/Infrastructure/Postgres/AddMacAddressToNetworkDeviceMigration.test.ts +365 -0
- package/Tests/Server/Infrastructure/Postgres/CustomFieldValueMappingMigration.test.ts +62 -23
- package/Tests/Server/Infrastructure/Postgres/UserNotificationEmailRollupMetadataMigration.test.ts +85 -0
- package/Tests/Server/Infrastructure/Postgres/UserNotificationEmailRollupTableMigration.test.ts +34 -3
- package/Tests/Server/Infrastructure/ValkeyDeploymentConfig.test.ts +265 -0
- package/Tests/Server/Middleware/HttpMetricsMiddleware.test.ts +382 -0
- package/Tests/Server/Middleware/PasskeyRateLimit.test.ts +141 -0
- package/Tests/Server/Middleware/SCIMAuthorization.test.ts +525 -0
- package/Tests/Server/Services/AutoImportRuleRearmRecentScans.test.ts +343 -0
- package/Tests/Server/Services/AutoImportRuleWriteRearmsScans.test.ts +381 -0
- package/Tests/Server/Services/BillingPaymentMethodServiceSync.test.ts +175 -0
- package/Tests/Server/Services/BillingService.test.ts +26 -11
- package/Tests/Server/Services/BillingServiceMeteredPaymentAuthorization.test.ts +245 -0
- package/Tests/Server/Services/BillingServicePaymentMethodReads.test.ts +362 -0
- package/Tests/Server/Services/CloudResourceInstanceStalePrune.test.ts +188 -0
- package/Tests/Server/Services/DatabaseServiceAggregateBy.test.ts +291 -56
- package/Tests/Server/Services/DatabaseServiceSortTiebreaker.test.ts +151 -0
- package/Tests/Server/Services/DiscoveryScanClaimHookFreeSafety.test.ts +16 -2
- package/Tests/Server/Services/GoogleSecOpsDiagnosticsModel.test.ts +153 -0
- package/Tests/Server/Services/HookFreeWriteLengthClamp.test.ts +13 -0
- package/Tests/Server/Services/InventoryItemManualCreate.test.ts +105 -0
- package/Tests/Server/Services/InventoryItemPromotionGate.test.ts +183 -0
- package/Tests/Server/Services/InventoryUpsertSchemaParity.test.ts +36 -0
- package/Tests/Server/Services/InventoryUpsertTruncationGuard.test.ts +151 -0
- package/Tests/Server/Services/MobilePasskeyLoginIntegration.test.ts +231 -0
- package/Tests/Server/Services/MobilePasskeyLoginService.test.ts +315 -0
- package/Tests/Server/Services/MonitorPayAsYouGoBilling.test.ts +302 -0
- package/Tests/Server/Services/MonitorTemplateServiceCustomFieldSync.test.ts +502 -0
- package/Tests/Server/Services/MonitorTemplateServiceFieldSync.test.ts +994 -0
- package/Tests/Server/Services/NetworkDeviceAutoImportRuleEngineService.test.ts +1133 -81
- package/Tests/Server/Services/NetworkDeviceAutoImportRuleService.test.ts +22 -0
- package/Tests/Server/Services/NetworkDeviceDiscoveryScanRegistration.test.ts +520 -0
- package/Tests/Server/Services/NetworkDeviceMacAddressNormalization.test.ts +572 -0
- package/Tests/Server/Services/OpenTelemetryResourceRetentionMemo.test.ts +7 -1
- package/Tests/Server/Services/PayAsYouGoBillingService.test.ts +857 -0
- package/Tests/Server/Services/PayAsYouGoStripeRateLimitBudget.test.ts +379 -0
- package/Tests/Server/Services/ProjectServiceExtendTrial.test.ts +99 -1
- package/Tests/Server/Services/ProjectServiceSubscriptionSeats.test.ts +134 -0
- package/Tests/Server/Services/ResourceFeedServices.test.ts +3 -2
- package/Tests/Server/Services/ResourceUpdateLastSeenLivenessFallback.test.ts +32 -6
- package/Tests/Server/Services/SecurityEventLastErrorColumnWidth.test.ts +363 -175
- package/Tests/Server/Services/ServerlessFunctionInstanceStalePrune.test.ts +200 -0
- package/Tests/Server/Services/TeamMemberAutoAcceptInvitation.test.ts +3 -0
- package/Tests/Server/Services/TeamMemberBillingSeatSync.test.ts +762 -0
- package/Tests/Server/Services/TeamMemberInviteRegistrationToken.test.ts +3 -0
- package/Tests/Server/Services/TelemetryIngestionKeyPolicyResolution.test.ts +72 -0
- package/Tests/Server/Services/TelemetryIngestionKeyValidation.test.ts +17 -4
- package/Tests/Server/Services/TelemetryPayAsYouGoBilling.test.ts +355 -0
- package/Tests/Server/Services/TraceAnalyticsResourceDisplayNames.test.ts +41 -4
- package/Tests/Server/Services/UserNotificationEmailRollupModels.test.ts +37 -0
- package/Tests/Server/Services/UserWebAuthnPasskeyIntegration.test.ts +401 -0
- package/Tests/Server/Services/UserWebAuthnPasskeyService.test.ts +769 -0
- package/Tests/Server/Services/UserWebAuthnUserVerification.test.ts +649 -0
- package/Tests/Server/Services/VMwareResourceService.test.ts +945 -0
- package/Tests/Server/Services/VMwareVCenterService.test.ts +722 -0
- package/Tests/Server/Services/WorkflowVariableRenameUniqueness.test.ts +842 -0
- package/Tests/Server/TestingUtils/PasskeyHttpIntegration.ts +102 -0
- package/Tests/Server/TestingUtils/SecurityKey.ts +464 -0
- package/Tests/Server/TestingUtils/WebAuthnServiceMocks.ts +60 -0
- package/Tests/Server/Types/Billing/PayAsYouGoMeteredAuthorization.test.ts +573 -0
- package/Tests/Server/Types/Database/InventoryStatusPostgres.test.ts +368 -0
- package/Tests/Server/Types/Database/Permissions/ProjectCustomerSupportAccessColumn.test.ts +261 -0
- package/Tests/Server/Types/Database/Permissions/ReadBlockPermission.test.ts +261 -14
- package/Tests/Server/Types/Database/Permissions/WorkflowVariableColumnPermission.test.ts +95 -0
- package/Tests/Server/Types/Database/QueryUtilIncludesAnyOfGroups.test.ts +169 -0
- package/Tests/Server/Types/Database/QueryUtilIncludesAnyOfGroupsPostgres.test.ts +297 -0
- package/Tests/Server/Types/Markdown.test.ts +194 -1
- package/Tests/Server/Types/Workflow/Components/IncomingWebhookUtils.test.ts +279 -0
- package/Tests/Server/Types/Workflow/Components/TextToJson.test.ts +212 -0
- package/Tests/Server/Utils/CodeRepository/GitHubAgentTaskTrigger.test.ts +2101 -0
- package/Tests/Server/Utils/CodeRepository/GitHubCommandAuthorizer.test.ts +883 -0
- package/Tests/Server/Utils/CodeRepository/GitHubCommandParser.test.ts +1474 -0
- package/Tests/Server/Utils/CodeRepository/GitHubConversation.test.ts +1526 -0
- package/Tests/Server/Utils/CodeRepository/GitHubReplyComposer.test.ts +1389 -0
- package/Tests/Server/Utils/CodeRepository/GitHubRunReply.test.ts +1707 -0
- package/Tests/Server/Utils/CodeRepository/GitHubWebhookHandler.test.ts +2202 -0
- package/Tests/Server/Utils/CustomField/CustomFieldMappingRegistry.test.ts +436 -0
- package/Tests/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.test.ts +559 -0
- package/Tests/Server/Utils/DataSource/EgressGuard.test.ts +896 -0
- package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerBehaviour.test.ts +1 -1
- package/Tests/Server/Utils/EmailRollup/EmailRollupMetadataIntegration.test.ts +246 -0
- package/Tests/Server/Utils/EmailRollup/EmailRollupRenderer.test.ts +309 -4
- package/Tests/Server/Utils/EmailRollup/EmailRollupTestHarness.ts +6 -0
- package/Tests/Server/Utils/EmailRollup/EmailRollupWriter.test.ts +185 -0
- package/Tests/Server/Utils/EventLoop.test.ts +359 -0
- package/Tests/Server/Utils/JsonWebToken.test.ts +30 -0
- package/Tests/Server/Utils/LogRedaction.test.ts +33 -0
- package/Tests/Server/Utils/Monitor/CapturedMetricAttributeUtil.test.ts +2 -1
- package/Tests/Server/Utils/Monitor/Criteria/CompareCriteria.test.ts +242 -0
- package/Tests/Server/Utils/Monitor/Criteria/CompareCriteriaAggregation.test.ts +13 -7
- package/Tests/Server/Utils/Monitor/Criteria/DatabaseMonitorCriteria.test.ts +29 -0
- package/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.test.ts +30 -6
- package/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteriaAnomalyUnits.test.ts +246 -0
- package/Tests/Server/Utils/Monitor/Criteria/TelemetryStepMetricAlias.test.ts +10 -0
- package/Tests/Server/Utils/Monitor/MonitorAlertResourceLinking.test.ts +66 -1
- package/Tests/Server/Utils/Monitor/MonitorCriteriaEmailEvalLogAgreement.test.ts +280 -0
- package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluator.test.ts +586 -10
- package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluatorMetricUnits.test.ts +570 -0
- package/Tests/Server/Utils/Monitor/MonitorCriteriaExpectationBuilderUnits.test.ts +30 -5
- package/Tests/Server/Utils/Monitor/MonitorCriteriaMessageBuilderUnits.test.ts +68 -21
- package/Tests/Server/Utils/Monitor/MonitorCriteriaObservationBuilderUnits.test.ts +36 -19
- package/Tests/Server/Utils/Monitor/MonitorDependencySuppressionCreatorSkip.test.ts +1 -0
- package/Tests/Server/Utils/Monitor/MonitorIncidentResourceLinking.test.ts +60 -1
- package/Tests/Server/Utils/Monitor/MonitorMaintenanceSuppression.test.ts +60 -0
- package/Tests/Server/Utils/Monitor/MonitorRootCauseTargetResolution.test.ts +423 -0
- package/Tests/Server/Utils/Monitor/MonitorStepResourceIdentity.test.ts +6 -0
- package/Tests/Server/Utils/Monitor/MonitorSummaryPersistence.test.ts +1 -0
- package/Tests/Server/Utils/Monitor/NetworkDeviceMacLearningUtil.test.ts +573 -0
- package/Tests/Server/Utils/Monitor/NetworkInventoryUtil.test.ts +317 -0
- package/Tests/Server/Utils/Monitor/PerSeriesSecondEntityAlerting.test.ts +1 -0
- package/Tests/Server/Utils/Monitor/SeriesResourceLinker.test.ts +46 -2
- package/Tests/Server/Utils/SecurityEvent/ConnectorErrorMessage.test.ts +81 -45
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsRunExecutor.test.ts +711 -0
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsClickhouseIntegration.test.ts +223 -0
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsClient.test.ts +69 -1
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsDiagnostics.test.ts +838 -0
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsErrorHandling.test.ts +241 -28
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsHttpIntegration.test.ts +651 -0
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsPoller.test.ts +11 -0
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsPollerFailureTaxonomy.test.ts +13 -12
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsPollerHardening.test.ts +112 -127
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsRequestContract.test.ts +12 -18
- package/Tests/Server/Utils/SecurityEvent/GoogleSecOpsResponseParsing.test.ts +43 -0
- package/Tests/Server/Utils/Telemetry/ContextSpanProcessor.test.ts +281 -0
- package/Tests/Server/Utils/Telemetry/InventoryDuplicateIdentity.test.ts +316 -0
- package/Tests/Server/Utils/Telemetry/TelemetryEntity.test.ts +691 -8
- package/Tests/Server/Utils/Telemetry/VMwareSnapshotScan.test.ts +1748 -0
- package/Tests/Types/Cloud/CloudPlatform.test.ts +574 -0
- package/Tests/Types/Database/IncludesAnyOfGroups.test.ts +106 -0
- package/Tests/Types/JSONFunctions.test.ts +40 -0
- package/Tests/Types/Monitor/MetricAndProfileDefaultCriteria.test.ts +2 -0
- package/Tests/Types/Monitor/MonitorCriteriaMetricVariables.test.ts +9 -0
- package/Tests/Types/Monitor/MonitorStepDefaultTelemetryConfig.test.ts +1 -0
- package/Tests/Types/Monitor/MonitorStepInfraMonitorUtils.test.ts +53 -8
- package/Tests/Types/Monitor/MonitorStepInfrastructureMonitors.test.ts +97 -0
- package/Tests/Types/Monitor/MonitorStepMetricViewConfigUtil.test.ts +1 -0
- package/Tests/Types/Monitor/MonitorStepTemplateSyncFields.test.ts +107 -0
- package/Tests/Types/Monitor/MonitorTemplateSyncField.test.ts +172 -0
- package/Tests/Types/Monitor/MonitorType.test.ts +1 -0
- package/Tests/Types/Monitor/MonitorTypeKeywords.test.ts +2 -0
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationAlertDebuggability.test.ts +1 -0
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCatalog.test.ts +9 -0
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationCoverage.test.ts +1 -1
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +1 -1
- package/Tests/Types/Monitor/SeriesContext/SeriesDebugHints.test.ts +131 -0
- package/Tests/Types/Monitor/SeriesContext/SeriesLabelDisplay.test.ts +10 -0
- package/Tests/Types/Monitor/VMwareAlertTemplates.test.ts +1608 -0
- package/Tests/Types/Monitor/VMwareMetricCatalog.test.ts +488 -0
- package/Tests/Types/NetworkAutomation/AutoImportRunMerge.test.ts +235 -0
- package/Tests/Types/NetworkAutomation/RuleRunResult.test.ts +66 -0
- package/Tests/Types/NetworkAutomation/RuleRunResultDescribe.test.ts +309 -1
- package/Tests/Types/OnCallDutyPolicy/OverrideProvenance.test.ts +295 -0
- package/Tests/Types/Runner/RunnerLiveStatus.test.ts +2 -2
- package/Tests/Types/SignupPassword.test.ts +205 -0
- package/Tests/Types/StatusPage/StatusPageLanguage.test.ts +44 -0
- package/Tests/Types/SupportedLanguages.test.ts +119 -0
- package/Tests/Types/Telemetry/EntityTypeGroups.test.ts +19 -0
- package/Tests/Types/Telemetry/InventoryLiveness.test.ts +99 -0
- package/Tests/UI/ColorPickerBuild.test.ts +86 -0
- package/Tests/UI/Components/Breadcrumbs.test.tsx +32 -0
- package/Tests/UI/Components/CustomFields/CustomFieldsDetail.test.tsx +160 -0
- package/Tests/UI/Components/Forms/ModelFormPreservesUserInput.test.tsx +937 -0
- package/Tests/UI/Components/Forms/ModelFormWriteOnlyColumnSelect.test.tsx +230 -0
- package/Tests/UI/Components/Forms/ValidationFormSteps.test.ts +3 -4
- package/Tests/UI/Components/LabelRuleImportExport.test.tsx +907 -0
- package/Tests/UI/Components/ModelTable/ModelTableCreateAfterEdit.test.tsx +514 -0
- package/Tests/UI/Components/MonitorGraphs/Uptime.test.tsx +301 -0
- package/Tests/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.test.ts +2 -1
- package/Tests/UI/Components/TooltipLazyContent.test.tsx +373 -0
- package/Tests/UI/MicrosoftTeams/MicrosoftTeamsMessagingEndpointGuidance.test.tsx +43 -12
- package/Tests/UI/ReactDomBuild.test.ts +104 -0
- package/Tests/UI/ReactRouterSingletonBuild.test.ts +143 -0
- package/Tests/UI/Rum/ReplayHeader.test.tsx +10 -2
- package/Tests/UI/Rum/ReplayPlayerChrome.test.tsx +514 -0
- package/Tests/UI/Rum/ReplayTimeFormat.test.ts +94 -0
- package/Tests/UI/Rum/ReplayUi.test.tsx +559 -0
- package/Tests/UI/Utils/Breadcrumb/fixtures/RealBreadcrumbTrails.ts +153 -0
- package/Tests/UI/Utils/Breadcrumb/fixtures/RealRoutePatterns.ts +30 -0
- package/Tests/UI/Utils/DashboardStackingLayers.test.ts +197 -0
- package/Tests/UI/Utils/LabelRuleImportExport.test.ts +546 -0
- package/Tests/UI/Utils/ModelAPITenantHeader.test.ts +109 -2
- package/Tests/UI/Utils/UseDashboardGridDnd.test.tsx +7 -2
- package/Tests/UI/Utils/UserEmailRegistrationStatus.test.tsx +295 -0
- package/Tests/UI/Utils/WebAuthn.test.ts +265 -0
- package/Tests/Utils/Dashboard/Components/DashboardComponentDefaults.test.ts +5 -0
- package/Tests/Utils/Dashboard/Components/DashboardMonitorListComponent.test.ts +11 -1
- package/Tests/Utils/Dashboard/Components/DashboardVMwareListComponents.test.ts +548 -0
- package/Tests/Utils/Dashboard/DashboardResourceListSharedArgs.test.ts +17 -3
- package/Tests/Utils/Dashboard/LabelVariable.test.ts +257 -0
- package/Tests/Utils/Dashboard/VariableUrlState.test.ts +144 -14
- package/Tests/Utils/LabelRuleImportExport.test.ts +583 -0
- package/Tests/Utils/MetricUnitUtil.test.ts +81 -0
- package/Tests/Utils/Monitor/DeviceMacLearningUtil.test.ts +497 -0
- package/Tests/Utils/Monitor/MetricValueFormatter.test.ts +546 -0
- package/Tests/Utils/Monitor/MonitorSummarySnapshotUtil.test.ts +1 -0
- package/Tests/Utils/Monitor/MonitorTemplateCustomFieldUtil.test.ts +218 -0
- package/Tests/Utils/Monitor/MonitorTemplateSyncUtil.test.ts +590 -0
- package/Tests/Utils/Monitor/NetworkTopologyEndpointAdoption.test.ts +1755 -0
- package/Tests/Utils/NetworkAutomation/AutoImportRunChain.test.ts +320 -0
- package/Tests/Utils/RequestFailedDetails.test.ts +325 -0
- package/Tests/Utils/Telemetry/CloudInstanceIdentity.test.ts +255 -0
- package/Tests/Utils/Telemetry/EntityRelationship.test.ts +167 -0
- package/Tests/Utils/WebAuthnTestUtil.ts +79 -0
- package/Tests/__mocks__/simplewebauthn.js +33 -4
- package/Types/AI/CodeFixTaskContext.ts +122 -0
- package/Types/AI/CodeFixTaskType.ts +62 -0
- package/Types/Accounts/AccountsLanguage.ts +1 -0
- package/Types/AdminDashboard/AdminDashboardLanguage.ts +1 -0
- package/Types/BaseDatabase/IncludesAnyOfGroups.ts +77 -0
- package/Types/Calendar/CalendarEvent.ts +16 -0
- package/Types/Cloud/CloudPlatform.ts +372 -0
- package/Types/CodeRepository/GitHubCommand.ts +69 -0
- package/Types/Dashboard/DashboardComponentType.ts +2 -0
- package/Types/Dashboard/DashboardComponents/ComponentArgument.ts +2 -0
- package/Types/Dashboard/DashboardComponents/DashboardMonitorListComponent.ts +1 -0
- package/Types/Dashboard/DashboardComponents/DashboardVMwareHostListComponent.ts +23 -0
- package/Types/Dashboard/DashboardComponents/DashboardVMwareVirtualMachineListComponent.ts +30 -0
- package/Types/Dashboard/DashboardLanguage.ts +1 -0
- package/Types/Dashboard/DashboardTemplates.ts +314 -0
- package/Types/Dashboard/DashboardVariable.ts +8 -0
- package/Types/Docs/DocsLanguage.ts +1 -0
- package/Types/Exception/EgressGuardException.ts +65 -0
- package/Types/Icon/IconProp.ts +1 -0
- package/Types/JSON.ts +4 -0
- package/Types/JSONFunctions.ts +16 -0
- package/Types/Monitor/MetricMonitor/MetricMonitorResponse.ts +36 -0
- package/Types/Monitor/MonitorCriteriaInstance.ts +1 -0
- package/Types/Monitor/MonitorStep.ts +78 -17
- package/Types/Monitor/MonitorStepMetricViewConfigUtil.ts +1 -0
- package/Types/Monitor/MonitorStepVMwareMonitor.ts +127 -0
- package/Types/Monitor/MonitorTemplateSyncField.ts +291 -0
- package/Types/Monitor/MonitorType.ts +24 -0
- package/Types/Monitor/Recommendation/MonitorRecommendationCatalog.ts +33 -0
- package/Types/Monitor/Recommendation/MonitorRecommendationTypes.ts +2 -0
- package/Types/Monitor/Recommendation/MonitorRecommendationUtil.ts +3 -0
- package/Types/Monitor/SeriesContext/SeriesDebugHints.ts +158 -0
- package/Types/Monitor/SeriesContext/SeriesLabelDisplay.ts +61 -0
- package/Types/Monitor/SnmpMonitor/NetworkTopology.ts +13 -0
- package/Types/Monitor/VMwareAlertTemplates.ts +1070 -0
- package/Types/Monitor/VMwareMetricCatalog.ts +914 -0
- package/Types/NetworkAutomation/RuleRunResult.ts +402 -13
- package/Types/OnCallDutyPolicy/ScheduleShiftUtil.ts +29 -0
- package/Types/OnCallDutyPolicy/UserOverrideUtil.ts +16 -0
- package/Types/Password.ts +84 -5
- package/Types/Permission.ts +265 -0
- package/Types/Probe/RequestFailedDetails.ts +7 -0
- package/Types/Runner/RunnerLiveStatus.ts +1 -1
- package/Types/SecurityEvent/GoogleSecOpsDiagnostics.ts +56 -0
- package/Types/SerializableObjectDictionary.ts +4 -0
- package/Types/StatusPage/StatusPageLanguage.ts +1 -0
- package/Types/Telemetry/EntityType.ts +21 -0
- package/Types/Telemetry/InventoryLiveness.ts +56 -0
- package/Types/Telemetry/ServiceType.ts +1 -0
- package/Typings/Index.d.ts +63 -0
- package/UI/Components/Breadcrumbs/Breadcrumbs.tsx +2 -2
- package/UI/Components/CSVFileUpload/CSVFileUpload.tsx +9 -2
- package/UI/Components/Calendar/Calendar.css +78 -0
- package/UI/Components/Calendar/Calendar.tsx +28 -3
- package/UI/Components/CustomFields/CustomFieldsDetail.tsx +46 -21
- package/UI/Components/Dashboard/DashboardVariableControl.tsx +285 -0
- package/UI/Components/Forms/BasicForm.tsx +44 -2
- package/UI/Components/Forms/Fields/ColorPicker.tsx +2 -1
- package/UI/Components/Forms/Fields/FormField.tsx +16 -3
- package/UI/Components/Forms/ModelForm.tsx +159 -5
- package/UI/Components/Forms/Types/Field.ts +8 -1
- package/UI/Components/Graphs/DayUptimeGraph.tsx +8 -10
- package/UI/Components/Icon/Icon.tsx +16 -0
- package/UI/Components/Input/Input.tsx +42 -7
- package/UI/Components/LabelRule/ImportLabelRulesModal.tsx +441 -0
- package/UI/Components/LabelRule/LabelRuleTable.tsx +142 -0
- package/UI/Components/ModelTable/BaseModelTable.tsx +22 -5
- package/UI/Components/ModelTable/ModelTable.tsx +14 -6
- package/UI/Components/MonitorGraphs/Uptime.tsx +17 -27
- package/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.ts +3 -1
- package/UI/Components/Tooltip/Tooltip.tsx +52 -6
- package/UI/Utils/DashboardStackingLayers.ts +85 -0
- package/UI/Utils/LabelRuleImportExport.ts +310 -0
- package/UI/Utils/ModelAPI/ModelAPI.ts +4 -3
- package/UI/Utils/TelemetryService.ts +4 -3
- package/UI/Utils/UseDashboardGridDnd.ts +4 -1
- package/UI/Utils/UserEmailRegistrationStatus.ts +33 -5
- package/UI/Utils/WebAuthn.ts +220 -0
- package/UI/esbuild-config.js +10 -0
- package/Utils/API.ts +34 -0
- package/Utils/Dashboard/Components/DashboardMonitorListComponent.ts +12 -1
- package/Utils/Dashboard/Components/DashboardVMwareHostListComponent.ts +38 -0
- package/Utils/Dashboard/Components/DashboardVMwareResourceListShared.ts +70 -0
- package/Utils/Dashboard/Components/DashboardVMwareVirtualMachineListComponent.ts +76 -0
- package/Utils/Dashboard/Components/Index.ts +16 -0
- package/Utils/Dashboard/LabelVariable.ts +152 -0
- package/Utils/Dashboard/VariableUrlState.ts +27 -5
- package/Utils/LabelRuleImportExport.ts +496 -0
- package/Utils/MetricUnitUtil.ts +34 -0
- package/Utils/Monitor/DeviceMacLearningUtil.ts +177 -0
- package/Utils/Monitor/MetricValueFormatter.ts +342 -0
- package/Utils/Monitor/MonitorTemplateCustomFieldUtil.ts +124 -0
- package/Utils/Monitor/MonitorTemplateSyncUtil.ts +164 -0
- package/Utils/Monitor/NetworkDeviceMonitorTemplateUtil.ts +7 -2
- package/Utils/Monitor/NetworkTopologyUtil.ts +693 -0
- package/Utils/NetworkAutomation/AutoImportRunChain.ts +138 -0
- package/Utils/NetworkDiscovery/DiscoveryScanStatus.ts +8 -0
- package/Utils/Telemetry/CloudInstanceIdentity.ts +94 -0
- package/Utils/Telemetry/EntityKey.ts +19 -0
- package/Utils/Telemetry/EntityRelationship.ts +19 -0
- package/build/dist/Models/DatabaseModels/Alert.js +54 -0
- package/build/dist/Models/DatabaseModels/Alert.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CloudResource.js +44 -7
- package/build/dist/Models/DatabaseModels/CloudResource.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CodeRepository.js +87 -0
- package/build/dist/Models/DatabaseModels/CodeRepository.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GlobalConfig.js +12 -12
- package/build/dist/Models/DatabaseModels/GlobalConfig.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GoogleSecOpsConnection.js +60 -7
- package/build/dist/Models/DatabaseModels/GoogleSecOpsConnection.js.map +1 -1
- package/build/dist/Models/DatabaseModels/GoogleSecOpsConnectionRun.js +287 -0
- package/build/dist/Models/DatabaseModels/GoogleSecOpsConnectionRun.js.map +1 -0
- package/build/dist/Models/DatabaseModels/Incident.js +54 -0
- package/build/dist/Models/DatabaseModels/Incident.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Index.js +16 -0
- package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
- package/build/dist/Models/DatabaseModels/InventoryItem.js +34 -1
- package/build/dist/Models/DatabaseModels/InventoryItem.js.map +1 -1
- package/build/dist/Models/DatabaseModels/NetworkDevice.js +128 -0
- package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js +54 -0
- package/build/dist/Models/DatabaseModels/ScheduledMaintenance.js.map +1 -1
- package/build/dist/Models/DatabaseModels/User.js +57 -4
- package/build/dist/Models/DatabaseModels/User.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupItem.js +47 -2
- package/build/dist/Models/DatabaseModels/UserNotificationEmailRollupItem.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserWebAuthn.js +18 -0
- package/build/dist/Models/DatabaseModels/UserWebAuthn.js.map +1 -1
- package/build/dist/Models/DatabaseModels/VMwareResource.js +1201 -0
- package/build/dist/Models/DatabaseModels/VMwareResource.js.map +1 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenter.js +1149 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenter.js.map +1 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterFeed.js +648 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterFeed.js.map +1 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterLabelRule.js +522 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterLabelRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterOwnerRule.js +603 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterOwnerRule.js.map +1 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterOwnerTeam.js +503 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterOwnerTeam.js.map +1 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterOwnerUser.js +502 -0
- package/build/dist/Models/DatabaseModels/VMwareVCenterOwnerUser.js.map +1 -0
- package/build/dist/Models/DatabaseModels/WorkflowVariable.js +22 -1
- package/build/dist/Models/DatabaseModels/WorkflowVariable.js.map +1 -1
- package/build/dist/Server/API/AIAgentDataAPI.js +63 -3
- package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
- package/build/dist/Server/API/AIAgentGitHubAPI.js +363 -0
- package/build/dist/Server/API/AIAgentGitHubAPI.js.map +1 -0
- package/build/dist/Server/API/AIChatAPI.js +19 -1
- package/build/dist/Server/API/AIChatAPI.js.map +1 -1
- package/build/dist/Server/API/BillingAPI.js +22 -0
- package/build/dist/Server/API/BillingAPI.js.map +1 -1
- package/build/dist/Server/API/DashboardAPI.js +10 -0
- package/build/dist/Server/API/DashboardAPI.js.map +1 -1
- package/build/dist/Server/API/GitHubAPI.js +33 -5
- package/build/dist/Server/API/GitHubAPI.js.map +1 -1
- package/build/dist/Server/API/GoogleSecOpsConnectionAPI.js +56 -0
- package/build/dist/Server/API/GoogleSecOpsConnectionAPI.js.map +1 -0
- package/build/dist/Server/API/UserWebAuthnAPI.js +17 -1
- package/build/dist/Server/API/UserWebAuthnAPI.js.map +1 -1
- package/build/dist/Server/API/VMwareResourceAPI.js +106 -0
- package/build/dist/Server/API/VMwareResourceAPI.js.map +1 -0
- package/build/dist/Server/EnvironmentConfig.js +44 -12
- package/build/dist/Server/EnvironmentConfig.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791700000000-AddMacAddressToNetworkDevice.js +14 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791700000000-AddMacAddressToNetworkDevice.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791800000000-SplitWebAuthnChallengeByPurpose.js +41 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791800000000-SplitWebAuthnChallengeByPurpose.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791900000000-AddSeverityAndStateToNotificationEmailRollup.js +14 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791900000000-AddSeverityAndStateToNotificationEmailRollup.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792000000000-AddVMwareTables.js +241 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792000000000-AddVMwareTables.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792100000000-AddGitHubCommandSettingsToCodeRepository.js +36 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792100000000-AddGitHubCommandSettingsToCodeRepository.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792200000000-AddUserWebAuthnPurpose.js +12 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792200000000-AddUserWebAuthnPurpose.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792300000000-AddGoogleSecOpsDiagnostics.js +34 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1792300000000-AddGoogleSecOpsDiagnostics.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +14 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Infrastructure/Redis.js +8 -8
- package/build/dist/Server/Infrastructure/Redis.js.map +1 -1
- package/build/dist/Server/Infrastructure/Status.js +10 -4
- package/build/dist/Server/Infrastructure/Status.js.map +1 -1
- package/build/dist/Server/Middleware/IdentityRateLimit.js +80 -0
- package/build/dist/Server/Middleware/IdentityRateLimit.js.map +1 -1
- package/build/dist/Server/Services/AIRunService.js +14 -1
- package/build/dist/Server/Services/AIRunService.js.map +1 -1
- package/build/dist/Server/Services/BillingPaymentMethodService.js +71 -21
- package/build/dist/Server/Services/BillingPaymentMethodService.js.map +1 -1
- package/build/dist/Server/Services/BillingService.js +210 -22
- package/build/dist/Server/Services/BillingService.js.map +1 -1
- package/build/dist/Server/Services/CloudResourceInstanceService.js +66 -0
- package/build/dist/Server/Services/CloudResourceInstanceService.js.map +1 -1
- package/build/dist/Server/Services/DatabaseService.js +58 -13
- package/build/dist/Server/Services/DatabaseService.js.map +1 -1
- package/build/dist/Server/Services/ExceptionAggregationService.js +1 -0
- package/build/dist/Server/Services/ExceptionAggregationService.js.map +1 -1
- package/build/dist/Server/Services/GoogleSecOpsConnectionRunService.js +9 -0
- package/build/dist/Server/Services/GoogleSecOpsConnectionRunService.js.map +1 -0
- package/build/dist/Server/Services/GoogleSecOpsConnectionService.js +7 -0
- package/build/dist/Server/Services/GoogleSecOpsConnectionService.js.map +1 -1
- package/build/dist/Server/Services/Index.js +16 -0
- package/build/dist/Server/Services/Index.js.map +1 -1
- package/build/dist/Server/Services/InventoryItemService.js +28 -1
- package/build/dist/Server/Services/InventoryItemService.js.map +1 -1
- package/build/dist/Server/Services/LogAggregationService.js +1 -0
- package/build/dist/Server/Services/LogAggregationService.js.map +1 -1
- package/build/dist/Server/Services/MetricAggregationService.js +1 -0
- package/build/dist/Server/Services/MetricAggregationService.js.map +1 -1
- package/build/dist/Server/Services/MobilePasskeyLoginService.js +137 -0
- package/build/dist/Server/Services/MobilePasskeyLoginService.js.map +1 -0
- package/build/dist/Server/Services/MonitorService.js +34 -1
- package/build/dist/Server/Services/MonitorService.js.map +1 -1
- package/build/dist/Server/Services/MonitorTemplateService.js +167 -30
- package/build/dist/Server/Services/MonitorTemplateService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js +394 -38
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js +142 -2
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceDiscoveryScanService.js +65 -0
- package/build/dist/Server/Services/NetworkDeviceDiscoveryScanService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceService.js +54 -0
- package/build/dist/Server/Services/NetworkDeviceService.js.map +1 -1
- package/build/dist/Server/Services/OpenTelemetryIngestService.js +28 -13
- package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
- package/build/dist/Server/Services/PayAsYouGoBillingService.js +297 -0
- package/build/dist/Server/Services/PayAsYouGoBillingService.js.map +1 -0
- package/build/dist/Server/Services/ProjectService.js +38 -2
- package/build/dist/Server/Services/ProjectService.js.map +1 -1
- package/build/dist/Server/Services/ServerlessFunctionInstanceService.js +66 -0
- package/build/dist/Server/Services/ServerlessFunctionInstanceService.js.map +1 -1
- package/build/dist/Server/Services/TeamMemberService.js +85 -28
- package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryIngestionKeyService.js +61 -10
- package/build/dist/Server/Services/TelemetryIngestionKeyService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryUsageBillingService.js +62 -5
- package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
- package/build/dist/Server/Services/TraceAggregationService.js +5 -4
- package/build/dist/Server/Services/TraceAggregationService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationRuleService.js +60 -25
- package/build/dist/Server/Services/UserNotificationRuleService.js.map +1 -1
- package/build/dist/Server/Services/UserWebAuthnService.js +345 -113
- package/build/dist/Server/Services/UserWebAuthnService.js.map +1 -1
- package/build/dist/Server/Services/VMwareResourceService.js +395 -0
- package/build/dist/Server/Services/VMwareResourceService.js.map +1 -0
- package/build/dist/Server/Services/VMwareVCenterFeedService.js +89 -0
- package/build/dist/Server/Services/VMwareVCenterFeedService.js.map +1 -0
- package/build/dist/Server/Services/VMwareVCenterLabelRuleEngineService.js +197 -0
- package/build/dist/Server/Services/VMwareVCenterLabelRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/VMwareVCenterLabelRuleService.js +13 -0
- package/build/dist/Server/Services/VMwareVCenterLabelRuleService.js.map +1 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerRuleEngineService.js +214 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerRuleEngineService.js.map +1 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerRuleService.js +13 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerRuleService.js.map +1 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerTeamService.js +129 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerTeamService.js.map +1 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerUserService.js +122 -0
- package/build/dist/Server/Services/VMwareVCenterOwnerUserService.js.map +1 -0
- package/build/dist/Server/Services/VMwareVCenterService.js +533 -0
- package/build/dist/Server/Services/VMwareVCenterService.js.map +1 -0
- package/build/dist/Server/Services/WorkflowVariableService.js +169 -0
- package/build/dist/Server/Services/WorkflowVariableService.js.map +1 -1
- package/build/dist/Server/Types/Billing/MeteredPlan/ActiveMonitoringMeteredPlan.js +12 -1
- package/build/dist/Server/Types/Billing/MeteredPlan/ActiveMonitoringMeteredPlan.js.map +1 -1
- package/build/dist/Server/Types/Billing/MeteredPlan/TelemetryMeteredPlan.js +25 -2
- package/build/dist/Server/Types/Billing/MeteredPlan/TelemetryMeteredPlan.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/ReadPermission.js +29 -4
- package/build/dist/Server/Types/Database/Permissions/ReadPermission.js.map +1 -1
- package/build/dist/Server/Types/Database/QueryUtil.js +36 -0
- package/build/dist/Server/Types/Database/QueryUtil.js.map +1 -1
- package/build/dist/Server/Types/Markdown.js +75 -0
- package/build/dist/Server/Types/Markdown.js.map +1 -1
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHub.js.map +1 -1
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubAgentTaskTrigger.js +275 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubAgentTaskTrigger.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubCommandAuthorizer.js +226 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubCommandAuthorizer.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubCommandParser.js +297 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubCommandParser.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubConversation.js +582 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubConversation.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubReplyComposer.js +275 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubReplyComposer.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubRunReply.js +365 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubRunReply.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubWebhookEvents.js +103 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubWebhookEvents.js.map +1 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubWebhookHandler.js +661 -0
- package/build/dist/Server/Utils/CodeRepository/GitHub/GitHubWebhookHandler.js.map +1 -0
- package/build/dist/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.js +166 -18
- package/build/dist/Server/Utils/Dashboard/PublicDashboardResourceListPolicy.js.map +1 -1
- package/build/dist/Server/Utils/DataSource/EgressGuard.js +99 -15
- package/build/dist/Server/Utils/DataSource/EgressGuard.js.map +1 -1
- package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js +12 -1
- package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js.map +1 -1
- package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js +20 -2
- package/build/dist/Server/Utils/EmailRollup/EmailRollupRenderer.js.map +1 -1
- package/build/dist/Server/Utils/EmailRollup/EmailRollupWriter.js +31 -2
- package/build/dist/Server/Utils/EmailRollup/EmailRollupWriter.js.map +1 -1
- package/build/dist/Server/Utils/LogRedaction.js +2 -1
- package/build/dist/Server/Utils/LogRedaction.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +58 -35
- package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js +29 -5
- package/build/dist/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +382 -36
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.js +58 -9
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaExpectationBuilder.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.js +9 -3
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageBuilder.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.js +26 -12
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaMessageFormatter.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js +74 -33
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaObservationBuilder.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorMaintenanceSuppression.js +12 -4
- package/build/dist/Server/Utils/Monitor/MonitorMaintenanceSuppression.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorResourceContext.js +5 -3
- package/build/dist/Server/Utils/Monitor/MonitorResourceContext.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorStepResourceIdentity.js +22 -9
- package/build/dist/Server/Utils/Monitor/MonitorStepResourceIdentity.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +1 -0
- package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/NetworkDeviceMacLearningUtil.js +114 -0
- package/build/dist/Server/Utils/Monitor/NetworkDeviceMacLearningUtil.js.map +1 -0
- package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js +25 -0
- package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/SeriesResourceLabels.js +21 -0
- package/build/dist/Server/Utils/Monitor/SeriesResourceLabels.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/SeriesResourceLinker.js +21 -6
- package/build/dist/Server/Utils/Monitor/SeriesResourceLinker.js.map +1 -1
- package/build/dist/Server/Utils/ResourceFeed/ResourceFeedUtil.js +3 -3
- package/build/dist/Server/Utils/SecurityEvent/ConnectorErrorMessage.js +9 -9
- package/build/dist/Server/Utils/SecurityEvent/ConnectorErrorMessage.js.map +1 -1
- package/build/dist/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsClient.js +92 -71
- package/build/dist/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsClient.js.map +1 -1
- package/build/dist/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsPoller.js +428 -143
- package/build/dist/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsPoller.js.map +1 -1
- package/build/dist/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsRunExecutor.js +376 -0
- package/build/dist/Server/Utils/SecurityEvent/GoogleSecOps/GoogleSecOpsRunExecutor.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +14 -1
- package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/ResourceHeartbeat.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js +206 -14
- package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/VMwareSnapshotScan.js +933 -0
- package/build/dist/Server/Utils/Telemetry/VMwareSnapshotScan.js.map +1 -0
- package/build/dist/Types/AI/CodeFixTaskContext.js +40 -0
- package/build/dist/Types/AI/CodeFixTaskContext.js.map +1 -1
- package/build/dist/Types/AI/CodeFixTaskType.js +57 -0
- package/build/dist/Types/AI/CodeFixTaskType.js.map +1 -1
- package/build/dist/Types/Accounts/AccountsLanguage.js +1 -0
- package/build/dist/Types/Accounts/AccountsLanguage.js.map +1 -1
- package/build/dist/Types/AdminDashboard/AdminDashboardLanguage.js +1 -0
- package/build/dist/Types/AdminDashboard/AdminDashboardLanguage.js.map +1 -1
- package/build/dist/Types/BaseDatabase/IncludesAnyOfGroups.js +54 -0
- package/build/dist/Types/BaseDatabase/IncludesAnyOfGroups.js.map +1 -0
- package/build/dist/Types/Cloud/CloudPlatform.js +277 -0
- package/build/dist/Types/Cloud/CloudPlatform.js.map +1 -0
- package/build/dist/Types/CodeRepository/GitHubCommand.js +52 -0
- package/build/dist/Types/CodeRepository/GitHubCommand.js.map +1 -0
- package/build/dist/Types/Dashboard/DashboardComponentType.js +2 -0
- package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js +2 -0
- package/build/dist/Types/Dashboard/DashboardComponents/ComponentArgument.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardComponents/DashboardVMwareHostListComponent.js +2 -0
- package/build/dist/Types/Dashboard/DashboardComponents/DashboardVMwareHostListComponent.js.map +1 -0
- package/build/dist/Types/Dashboard/DashboardComponents/DashboardVMwareVirtualMachineListComponent.js +2 -0
- package/build/dist/Types/Dashboard/DashboardComponents/DashboardVMwareVirtualMachineListComponent.js.map +1 -0
- package/build/dist/Types/Dashboard/DashboardLanguage.js +1 -0
- package/build/dist/Types/Dashboard/DashboardLanguage.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardTemplates.js +286 -0
- package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardVariable.js +1 -0
- package/build/dist/Types/Dashboard/DashboardVariable.js.map +1 -1
- package/build/dist/Types/Docs/DocsLanguage.js +1 -0
- package/build/dist/Types/Docs/DocsLanguage.js.map +1 -1
- package/build/dist/Types/Exception/EgressGuardException.js +59 -0
- package/build/dist/Types/Exception/EgressGuardException.js.map +1 -0
- package/build/dist/Types/Icon/IconProp.js +1 -0
- package/build/dist/Types/Icon/IconProp.js.map +1 -1
- package/build/dist/Types/JSON.js +1 -0
- package/build/dist/Types/JSON.js.map +1 -1
- package/build/dist/Types/JSONFunctions.js +13 -0
- package/build/dist/Types/JSONFunctions.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorCriteriaInstance.js +1 -0
- package/build/dist/Types/Monitor/MonitorCriteriaInstance.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStep.js +61 -18
- package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepMetricViewConfigUtil.js +1 -0
- package/build/dist/Types/Monitor/MonitorStepMetricViewConfigUtil.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepVMwareMonitor.js +71 -0
- package/build/dist/Types/Monitor/MonitorStepVMwareMonitor.js.map +1 -0
- package/build/dist/Types/Monitor/MonitorTemplateSyncField.js +211 -0
- package/build/dist/Types/Monitor/MonitorTemplateSyncField.js.map +1 -0
- package/build/dist/Types/Monitor/MonitorType.js +23 -0
- package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js +28 -0
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationCatalog.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js +1 -0
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationTypes.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js +2 -0
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js.map +1 -1
- package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js +120 -0
- package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js.map +1 -1
- package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js +60 -0
- package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js.map +1 -1
- package/build/dist/Types/Monitor/VMwareAlertTemplates.js +775 -0
- package/build/dist/Types/Monitor/VMwareAlertTemplates.js.map +1 -0
- package/build/dist/Types/Monitor/VMwareMetricCatalog.js +799 -0
- package/build/dist/Types/Monitor/VMwareMetricCatalog.js.map +1 -0
- package/build/dist/Types/NetworkAutomation/RuleRunResult.js +291 -6
- package/build/dist/Types/NetworkAutomation/RuleRunResult.js.map +1 -1
- package/build/dist/Types/OnCallDutyPolicy/ScheduleShiftUtil.js +25 -0
- package/build/dist/Types/OnCallDutyPolicy/ScheduleShiftUtil.js.map +1 -1
- package/build/dist/Types/OnCallDutyPolicy/UserOverrideUtil.js +5 -0
- package/build/dist/Types/OnCallDutyPolicy/UserOverrideUtil.js.map +1 -1
- package/build/dist/Types/Password.js +63 -5
- package/build/dist/Types/Password.js.map +1 -1
- package/build/dist/Types/Permission.js +234 -0
- package/build/dist/Types/Permission.js.map +1 -1
- package/build/dist/Types/Probe/RequestFailedDetails.js +7 -0
- package/build/dist/Types/Probe/RequestFailedDetails.js.map +1 -1
- package/build/dist/Types/SecurityEvent/GoogleSecOpsDiagnostics.js +2 -0
- package/build/dist/Types/SecurityEvent/GoogleSecOpsDiagnostics.js.map +1 -0
- package/build/dist/Types/SerializableObjectDictionary.js +4 -0
- package/build/dist/Types/SerializableObjectDictionary.js.map +1 -1
- package/build/dist/Types/StatusPage/StatusPageLanguage.js +1 -0
- package/build/dist/Types/StatusPage/StatusPageLanguage.js.map +1 -1
- package/build/dist/Types/Telemetry/EntityType.js +21 -0
- package/build/dist/Types/Telemetry/EntityType.js.map +1 -1
- package/build/dist/Types/Telemetry/InventoryLiveness.js +37 -0
- package/build/dist/Types/Telemetry/InventoryLiveness.js.map +1 -0
- package/build/dist/Types/Telemetry/ServiceType.js +1 -0
- package/build/dist/Types/Telemetry/ServiceType.js.map +1 -1
- package/build/dist/UI/Components/Breadcrumbs/Breadcrumbs.js +2 -2
- package/build/dist/UI/Components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/build/dist/UI/Components/CSVFileUpload/CSVFileUpload.js +7 -0
- package/build/dist/UI/Components/CSVFileUpload/CSVFileUpload.js.map +1 -1
- package/build/dist/UI/Components/Calendar/Calendar.js +24 -4
- package/build/dist/UI/Components/Calendar/Calendar.js.map +1 -1
- package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +9 -2
- package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
- package/build/dist/UI/Components/Dashboard/DashboardVariableControl.js +137 -0
- package/build/dist/UI/Components/Dashboard/DashboardVariableControl.js.map +1 -0
- package/build/dist/UI/Components/Forms/BasicForm.js +28 -3
- package/build/dist/UI/Components/Forms/BasicForm.js.map +1 -1
- package/build/dist/UI/Components/Forms/Fields/ColorPicker.js +1 -1
- package/build/dist/UI/Components/Forms/Fields/ColorPicker.js.map +1 -1
- package/build/dist/UI/Components/Forms/Fields/FormField.js +10 -3
- package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
- package/build/dist/UI/Components/Forms/ModelForm.js +89 -6
- package/build/dist/UI/Components/Forms/ModelForm.js.map +1 -1
- package/build/dist/UI/Components/Graphs/DayUptimeGraph.js +5 -6
- package/build/dist/UI/Components/Graphs/DayUptimeGraph.js.map +1 -1
- package/build/dist/UI/Components/Icon/Icon.js +14 -0
- package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
- package/build/dist/UI/Components/Input/Input.js +37 -8
- package/build/dist/UI/Components/Input/Input.js.map +1 -1
- package/build/dist/UI/Components/LabelRule/ImportLabelRulesModal.js +228 -0
- package/build/dist/UI/Components/LabelRule/ImportLabelRulesModal.js.map +1 -0
- package/build/dist/UI/Components/LabelRule/LabelRuleTable.js +102 -0
- package/build/dist/UI/Components/LabelRule/LabelRuleTable.js.map +1 -0
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js +15 -2
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
- package/build/dist/UI/Components/ModelTable/ModelTable.js +13 -5
- package/build/dist/UI/Components/ModelTable/ModelTable.js.map +1 -1
- package/build/dist/UI/Components/MonitorGraphs/Uptime.js +14 -15
- package/build/dist/UI/Components/MonitorGraphs/Uptime.js.map +1 -1
- package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js +2 -0
- package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js.map +1 -1
- package/build/dist/UI/Components/Tooltip/Tooltip.js +33 -4
- package/build/dist/UI/Components/Tooltip/Tooltip.js.map +1 -1
- package/build/dist/UI/Utils/DashboardStackingLayers.js +44 -0
- package/build/dist/UI/Utils/DashboardStackingLayers.js.map +1 -0
- package/build/dist/UI/Utils/LabelRuleImportExport.js +195 -0
- package/build/dist/UI/Utils/LabelRuleImportExport.js.map +1 -0
- package/build/dist/UI/Utils/ModelAPI/ModelAPI.js +4 -4
- package/build/dist/UI/Utils/ModelAPI/ModelAPI.js.map +1 -1
- package/build/dist/UI/Utils/TelemetryService.js +3 -2
- package/build/dist/UI/Utils/TelemetryService.js.map +1 -1
- package/build/dist/UI/Utils/UseDashboardGridDnd.js +2 -1
- package/build/dist/UI/Utils/UseDashboardGridDnd.js.map +1 -1
- package/build/dist/UI/Utils/UserEmailRegistrationStatus.js +21 -4
- package/build/dist/UI/Utils/UserEmailRegistrationStatus.js.map +1 -1
- package/build/dist/UI/Utils/WebAuthn.js +121 -0
- package/build/dist/UI/Utils/WebAuthn.js.map +1 -0
- package/build/dist/Utils/API.js +29 -0
- package/build/dist/Utils/API.js.map +1 -1
- package/build/dist/Utils/Dashboard/Components/DashboardMonitorListComponent.js +9 -1
- package/build/dist/Utils/Dashboard/Components/DashboardMonitorListComponent.js.map +1 -1
- package/build/dist/Utils/Dashboard/Components/DashboardVMwareHostListComponent.js +33 -0
- package/build/dist/Utils/Dashboard/Components/DashboardVMwareHostListComponent.js.map +1 -0
- package/build/dist/Utils/Dashboard/Components/DashboardVMwareResourceListShared.js +54 -0
- package/build/dist/Utils/Dashboard/Components/DashboardVMwareResourceListShared.js.map +1 -0
- package/build/dist/Utils/Dashboard/Components/DashboardVMwareVirtualMachineListComponent.js +60 -0
- package/build/dist/Utils/Dashboard/Components/DashboardVMwareVirtualMachineListComponent.js.map +1 -0
- package/build/dist/Utils/Dashboard/Components/Index.js +8 -0
- package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
- package/build/dist/Utils/Dashboard/LabelVariable.js +96 -0
- package/build/dist/Utils/Dashboard/LabelVariable.js.map +1 -0
- package/build/dist/Utils/Dashboard/VariableUrlState.js +19 -4
- package/build/dist/Utils/Dashboard/VariableUrlState.js.map +1 -1
- package/build/dist/Utils/LabelRuleImportExport.js +356 -0
- package/build/dist/Utils/LabelRuleImportExport.js.map +1 -0
- package/build/dist/Utils/MetricUnitUtil.js +26 -0
- package/build/dist/Utils/MetricUnitUtil.js.map +1 -1
- package/build/dist/Utils/Monitor/DeviceMacLearningUtil.js +112 -0
- package/build/dist/Utils/Monitor/DeviceMacLearningUtil.js.map +1 -0
- package/build/dist/Utils/Monitor/MetricValueFormatter.js +276 -0
- package/build/dist/Utils/Monitor/MetricValueFormatter.js.map +1 -0
- package/build/dist/Utils/Monitor/MonitorTemplateCustomFieldUtil.js +101 -0
- package/build/dist/Utils/Monitor/MonitorTemplateCustomFieldUtil.js.map +1 -0
- package/build/dist/Utils/Monitor/MonitorTemplateSyncUtil.js +110 -0
- package/build/dist/Utils/Monitor/MonitorTemplateSyncUtil.js.map +1 -0
- package/build/dist/Utils/Monitor/NetworkDeviceMonitorTemplateUtil.js +7 -2
- package/build/dist/Utils/Monitor/NetworkDeviceMonitorTemplateUtil.js.map +1 -1
- package/build/dist/Utils/Monitor/NetworkTopologyUtil.js +484 -0
- package/build/dist/Utils/Monitor/NetworkTopologyUtil.js.map +1 -1
- package/build/dist/Utils/NetworkAutomation/AutoImportRunChain.js +59 -0
- package/build/dist/Utils/NetworkAutomation/AutoImportRunChain.js.map +1 -0
- package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js +6 -0
- package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js.map +1 -1
- package/build/dist/Utils/Telemetry/CloudInstanceIdentity.js +88 -0
- package/build/dist/Utils/Telemetry/CloudInstanceIdentity.js.map +1 -0
- package/build/dist/Utils/Telemetry/EntityKey.js +15 -0
- package/build/dist/Utils/Telemetry/EntityKey.js.map +1 -1
- package/build/dist/Utils/Telemetry/EntityRelationship.js +13 -0
- package/build/dist/Utils/Telemetry/EntityRelationship.js.map +1 -1
- package/jest.config.json +2 -0
- package/package.json +1 -1
- package/test-setup.sh +9 -9
- package/tsconfig.json +51 -11
- package/Tests/App/Dashboard/NotificationEmailPreferences.test.tsx +0 -399
|
@@ -2,10 +2,21 @@ import {
|
|
|
2
2
|
CriteriaFilter,
|
|
3
3
|
FilterType,
|
|
4
4
|
} from "../../../Types/Monitor/CriteriaFilter";
|
|
5
|
+
import MetricValueFormatter from "../../../Utils/Monitor/MetricValueFormatter";
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* How a criteria's values are displayed: the unit, and the metric name
|
|
9
|
+
* the formatter's fraction / epoch rules are keyed on.
|
|
10
|
+
*/
|
|
11
|
+
export interface CriteriaDisplayOptions {
|
|
12
|
+
unit?: string | undefined;
|
|
13
|
+
metricName?: string | undefined;
|
|
14
|
+
}
|
|
5
15
|
|
|
6
16
|
export default class MonitorCriteriaExpectationBuilder {
|
|
7
17
|
public static getCriteriaFilterDescription(
|
|
8
18
|
criteriaFilter: CriteriaFilter,
|
|
19
|
+
options?: CriteriaDisplayOptions,
|
|
9
20
|
): string {
|
|
10
21
|
const parts: Array<string> = [criteriaFilter.checkOn];
|
|
11
22
|
|
|
@@ -14,15 +25,51 @@ export default class MonitorCriteriaExpectationBuilder {
|
|
|
14
25
|
}
|
|
15
26
|
|
|
16
27
|
if (criteriaFilter.value !== undefined && criteriaFilter.value !== null) {
|
|
17
|
-
|
|
28
|
+
const formatted: string | number =
|
|
29
|
+
MonitorCriteriaExpectationBuilder.formatThreshold(
|
|
30
|
+
criteriaFilter.value,
|
|
31
|
+
options,
|
|
32
|
+
) ?? criteriaFilter.value;
|
|
33
|
+
|
|
34
|
+
parts.push(String(formatted));
|
|
18
35
|
}
|
|
19
36
|
|
|
20
37
|
return parts.join(" ").trim();
|
|
21
38
|
}
|
|
22
39
|
|
|
40
|
+
/*
|
|
41
|
+
* The threshold, rendered exactly as an observed value would be — or
|
|
42
|
+
* returned untouched when it cannot be.
|
|
43
|
+
*
|
|
44
|
+
* Untouched covers three cases, and each matters: no unit was resolved
|
|
45
|
+
* (every non-metric checkOn, whose unit lives in its CheckOn label), the
|
|
46
|
+
* threshold is a string (the Contains / StartsWith family, which must
|
|
47
|
+
* quote what the user typed), or it is not a finite number.
|
|
48
|
+
*/
|
|
49
|
+
private static formatThreshold(
|
|
50
|
+
value: string | number | undefined,
|
|
51
|
+
options?: CriteriaDisplayOptions,
|
|
52
|
+
): string | number | undefined {
|
|
53
|
+
if (!options?.unit) {
|
|
54
|
+
return value;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
const numeric: number = Number(value);
|
|
58
|
+
|
|
59
|
+
if (typeof value === "boolean" || !Number.isFinite(numeric)) {
|
|
60
|
+
return value;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return MetricValueFormatter.format({
|
|
64
|
+
value: numeric,
|
|
65
|
+
unit: options.unit,
|
|
66
|
+
metricName: options.metricName,
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
|
|
23
70
|
public static describeCriteriaExpectation(
|
|
24
71
|
criteriaFilter: CriteriaFilter,
|
|
25
|
-
options?:
|
|
72
|
+
options?: CriteriaDisplayOptions,
|
|
26
73
|
): string | null {
|
|
27
74
|
if (!criteriaFilter.filterType) {
|
|
28
75
|
return null;
|
|
@@ -30,35 +77,61 @@ export default class MonitorCriteriaExpectationBuilder {
|
|
|
30
77
|
|
|
31
78
|
let expectation: string;
|
|
32
79
|
|
|
80
|
+
/*
|
|
81
|
+
* Render the threshold the way the observed value is rendered, so the
|
|
82
|
+
* two halves of one sentence cannot describe one quantity differently.
|
|
83
|
+
* Reformatting only the observation produced "recorded latest 1.07 GB
|
|
84
|
+
* (expected to be greater than 1000000000 By)".
|
|
85
|
+
*
|
|
86
|
+
* A NON-numeric threshold falls back to the previous text verbatim —
|
|
87
|
+
* `criteriaFilter.value` is `string | number | undefined`, and the
|
|
88
|
+
* string filter types below must keep quoting exactly what the user
|
|
89
|
+
* typed. So must a threshold with no unit: `formatThreshold` is only
|
|
90
|
+
* installed when a unit was resolved, which happens for the two metric
|
|
91
|
+
* checkOns and nothing else.
|
|
92
|
+
*/
|
|
33
93
|
const value: string | number | undefined = criteriaFilter.value;
|
|
34
94
|
|
|
95
|
+
/*
|
|
96
|
+
* The threshold as the six value-comparison cases below should print
|
|
97
|
+
* it, unit included. Only those six get it: the string comparisons
|
|
98
|
+
* quote what the user typed, and the heartbeat windows carry their own
|
|
99
|
+
* "minutes" — formatting their value produced "within 5 sec minutes".
|
|
100
|
+
*/
|
|
101
|
+
const comparedValue: string | number | undefined =
|
|
102
|
+
MonitorCriteriaExpectationBuilder.formatThreshold(value, options);
|
|
103
|
+
|
|
35
104
|
/*
|
|
36
105
|
* Suffix numeric-threshold comparisons with the metric's display unit
|
|
37
106
|
* (e.g. "greater than 5 sec") so the threshold reads in the same unit
|
|
38
107
|
* as the observed value. Only the value-comparison filter types below
|
|
39
108
|
* carry a numeric threshold — the others (empty, boolean, heartbeat
|
|
40
109
|
* windows, …) supply their own wording and get no suffix.
|
|
110
|
+
*
|
|
111
|
+
* When the value was formatted above it already carries its unit, so
|
|
112
|
+
* this suffix collapses to empty and the unit is not printed twice.
|
|
41
113
|
*/
|
|
42
|
-
const unitSuffix: string =
|
|
114
|
+
const unitSuffix: string =
|
|
115
|
+
options?.unit && comparedValue === value ? ` ${options.unit}` : "";
|
|
43
116
|
|
|
44
117
|
switch (criteriaFilter.filterType) {
|
|
45
118
|
case FilterType.GreaterThan:
|
|
46
|
-
expectation = `to be greater than ${
|
|
119
|
+
expectation = `to be greater than ${comparedValue}${unitSuffix}`;
|
|
47
120
|
break;
|
|
48
121
|
case FilterType.GreaterThanOrEqualTo:
|
|
49
|
-
expectation = `to be greater than or equal to ${
|
|
122
|
+
expectation = `to be greater than or equal to ${comparedValue}${unitSuffix}`;
|
|
50
123
|
break;
|
|
51
124
|
case FilterType.LessThan:
|
|
52
|
-
expectation = `to be less than ${
|
|
125
|
+
expectation = `to be less than ${comparedValue}${unitSuffix}`;
|
|
53
126
|
break;
|
|
54
127
|
case FilterType.LessThanOrEqualTo:
|
|
55
|
-
expectation = `to be less than or equal to ${
|
|
128
|
+
expectation = `to be less than or equal to ${comparedValue}${unitSuffix}`;
|
|
56
129
|
break;
|
|
57
130
|
case FilterType.EqualTo:
|
|
58
|
-
expectation = `to equal ${
|
|
131
|
+
expectation = `to equal ${comparedValue}${unitSuffix}`;
|
|
59
132
|
break;
|
|
60
133
|
case FilterType.NotEqualTo:
|
|
61
|
-
expectation = `to not equal ${
|
|
134
|
+
expectation = `to not equal ${comparedValue}${unitSuffix}`;
|
|
62
135
|
break;
|
|
63
136
|
case FilterType.Contains:
|
|
64
137
|
expectation = `to contain ${value}`;
|
|
@@ -59,17 +59,19 @@ export default class MonitorCriteriaMessageBuilder {
|
|
|
59
59
|
* the observed value — "recorded latest 0.06 sec (expected to be greater
|
|
60
60
|
* than 5 sec)" rather than the unitless "0.06 (expected ... 5)".
|
|
61
61
|
*/
|
|
62
|
-
const
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
62
|
+
const metricDisplay: {
|
|
63
|
+
unit: string | undefined;
|
|
64
|
+
metricName: string | undefined;
|
|
65
|
+
} = MonitorCriteriaObservationBuilder.getMetricValueDisplayContext({
|
|
66
|
+
criteriaFilter: input.criteriaFilter,
|
|
67
|
+
dataToProcess: input.dataToProcess,
|
|
68
|
+
monitorStep: input.monitorStep,
|
|
69
|
+
});
|
|
68
70
|
|
|
69
71
|
const expectation: string | null =
|
|
70
72
|
MonitorCriteriaExpectationBuilder.describeCriteriaExpectation(
|
|
71
73
|
input.criteriaFilter,
|
|
72
|
-
|
|
74
|
+
metricDisplay,
|
|
73
75
|
);
|
|
74
76
|
|
|
75
77
|
const observation: string | null =
|
|
@@ -89,9 +91,16 @@ export default class MonitorCriteriaMessageBuilder {
|
|
|
89
91
|
}
|
|
90
92
|
|
|
91
93
|
if (expectation) {
|
|
94
|
+
/*
|
|
95
|
+
* Both halves of this sentence quote the same threshold, so both
|
|
96
|
+
* must render it the same way — otherwise it reads "Metric Value
|
|
97
|
+
* greater than 1000000000 did not satisfy the configured condition
|
|
98
|
+
* (expected to be greater than 1 GB)".
|
|
99
|
+
*/
|
|
92
100
|
const description: string =
|
|
93
101
|
MonitorCriteriaExpectationBuilder.getCriteriaFilterDescription(
|
|
94
102
|
input.criteriaFilter,
|
|
103
|
+
metricDisplay,
|
|
95
104
|
);
|
|
96
105
|
|
|
97
106
|
return `${description} did not satisfy the configured condition (${expectation}).`;
|
|
@@ -136,9 +136,24 @@ export default class MonitorCriteriaMessageFormatter {
|
|
|
136
136
|
return null;
|
|
137
137
|
}
|
|
138
138
|
|
|
139
|
+
/**
|
|
140
|
+
* "latest 1.07 GB (min 900 KB, max 1.07 GB) across 3 data points".
|
|
141
|
+
*
|
|
142
|
+
* `format`, when supplied, renders ONE value — unit included — and is
|
|
143
|
+
* applied to latest, min and max independently. That independence is the
|
|
144
|
+
* point: auto-scaling can land min and max on different rungs of the
|
|
145
|
+
* ladder, which a single trailing unit suffix cannot express. It is the
|
|
146
|
+
* same reason CompareCriteria puts the unit on each number rather than on
|
|
147
|
+
* the sentence, and using the same callback in both places is what stops
|
|
148
|
+
* the evaluation log and the alert email describing one sample two ways.
|
|
149
|
+
*
|
|
150
|
+
* Without it the `unit` string is appended as before, so the caller that
|
|
151
|
+
* passes no unit at all (execution time) stays byte-identical.
|
|
152
|
+
*/
|
|
139
153
|
public static summarizeNumericSeries(
|
|
140
154
|
values: Array<number>,
|
|
141
155
|
unit?: string | undefined,
|
|
156
|
+
format?: ((value: number) => string) | undefined,
|
|
142
157
|
): string | null {
|
|
143
158
|
if (!values.length) {
|
|
144
159
|
return null;
|
|
@@ -156,29 +171,26 @@ export default class MonitorCriteriaMessageFormatter {
|
|
|
156
171
|
*/
|
|
157
172
|
const unitSuffix: string = unit ? ` ${unit}` : "";
|
|
158
173
|
|
|
159
|
-
const
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
}
|
|
174
|
+
const renderValue: (value: number) => string = (value: number): string => {
|
|
175
|
+
if (format) {
|
|
176
|
+
return format(value);
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
const formatted: string | null =
|
|
180
|
+
MonitorCriteriaMessageFormatter.formatNumber(value, {
|
|
181
|
+
maximumFractionDigits: 2,
|
|
182
|
+
});
|
|
183
|
+
|
|
184
|
+
return `${formatted ?? value}${unitSuffix}`;
|
|
185
|
+
};
|
|
163
186
|
|
|
164
|
-
let summary: string = `latest ${
|
|
187
|
+
let summary: string = `latest ${renderValue(latest)}`;
|
|
165
188
|
|
|
166
189
|
if (values.length > 1) {
|
|
167
190
|
const min: number = Math.min(...values);
|
|
168
191
|
const max: number = Math.max(...values);
|
|
169
192
|
|
|
170
|
-
|
|
171
|
-
MonitorCriteriaMessageFormatter.formatNumber(min, {
|
|
172
|
-
maximumFractionDigits: 2,
|
|
173
|
-
});
|
|
174
|
-
const maxFormatted: string | null =
|
|
175
|
-
MonitorCriteriaMessageFormatter.formatNumber(max, {
|
|
176
|
-
maximumFractionDigits: 2,
|
|
177
|
-
});
|
|
178
|
-
|
|
179
|
-
summary += ` (min ${minFormatted ?? min}${unitSuffix}, max ${
|
|
180
|
-
maxFormatted ?? max
|
|
181
|
-
}${unitSuffix})`;
|
|
193
|
+
summary += ` (min ${renderValue(min)}, max ${renderValue(max)})`;
|
|
182
194
|
}
|
|
183
195
|
|
|
184
196
|
summary += ` across ${values.length} data point${
|
|
@@ -41,6 +41,7 @@ import MetricQueryConfigData from "../../../Types/Metrics/MetricQueryConfigData"
|
|
|
41
41
|
import MetricFormulaConfigData from "../../../Types/Metrics/MetricFormulaConfigData";
|
|
42
42
|
import MetricsViewConfig from "../../../Types/Metrics/MetricsViewConfig";
|
|
43
43
|
import MetricUnitUtil from "../../../Utils/MetricUnitUtil";
|
|
44
|
+
import MetricValueFormatter from "../../../Utils/Monitor/MetricValueFormatter";
|
|
44
45
|
|
|
45
46
|
export default class MonitorCriteriaObservationBuilder {
|
|
46
47
|
public static describeFilterObservation(input: {
|
|
@@ -1220,18 +1221,33 @@ export default class MonitorCriteriaObservationBuilder {
|
|
|
1220
1221
|
* that unit alongside the numbers so the message reads "latest 0.06 sec"
|
|
1221
1222
|
* instead of the unitless "latest 0.06".
|
|
1222
1223
|
*/
|
|
1223
|
-
const
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
|
|
1229
|
-
|
|
1224
|
+
const resolvedUnits: {
|
|
1225
|
+
displayUnit: string | undefined;
|
|
1226
|
+
metricName: string | undefined;
|
|
1227
|
+
} = MonitorCriteriaObservationBuilder.resolveMetricUnits({
|
|
1228
|
+
criteriaFilter: input.criteriaFilter,
|
|
1229
|
+
dataToProcess: input.dataToProcess,
|
|
1230
|
+
monitorStep: input.monitorStep,
|
|
1231
|
+
alias: metricValues.alias,
|
|
1232
|
+
});
|
|
1230
1233
|
|
|
1234
|
+
/*
|
|
1235
|
+
* The same renderer the fired-alert email uses. Before this, a breach
|
|
1236
|
+
* that CompareCriteria wrote into the email as "1.07 GB" appeared in
|
|
1237
|
+
* the monitor's own evaluation log as "1073741824.00 By" — one sample,
|
|
1238
|
+
* two descriptions, on two screens a reader compares.
|
|
1239
|
+
*/
|
|
1231
1240
|
const summary: string | null =
|
|
1232
1241
|
MonitorCriteriaMessageFormatter.summarizeNumericSeries(
|
|
1233
1242
|
displayValues,
|
|
1234
|
-
displayUnit,
|
|
1243
|
+
resolvedUnits.displayUnit,
|
|
1244
|
+
(value: number): string => {
|
|
1245
|
+
return MetricValueFormatter.format({
|
|
1246
|
+
value: value,
|
|
1247
|
+
unit: resolvedUnits.displayUnit,
|
|
1248
|
+
metricName: resolvedUnits.metricName,
|
|
1249
|
+
});
|
|
1250
|
+
},
|
|
1235
1251
|
);
|
|
1236
1252
|
|
|
1237
1253
|
if (!summary) {
|
|
@@ -1304,6 +1320,18 @@ export default class MonitorCriteriaObservationBuilder {
|
|
|
1304
1320
|
sampleUnit: string | undefined;
|
|
1305
1321
|
thresholdUnit: string | undefined;
|
|
1306
1322
|
displayUnit: string | undefined;
|
|
1323
|
+
/**
|
|
1324
|
+
* The metric NAME, for the two decisions MetricValueFormatter cannot
|
|
1325
|
+
* make from a unit alone: whether a "1"-unit value is a fraction to
|
|
1326
|
+
* render as a percent, and whether a "seconds"-unit value is really an
|
|
1327
|
+
* epoch that must skip the duration ladder.
|
|
1328
|
+
*
|
|
1329
|
+
* Undefined for a formula. A formula's "name" is its expression, and an
|
|
1330
|
+
* expression ending in `_ratio` would trip the fraction heuristic into
|
|
1331
|
+
* reporting every value at 100x — the same guard
|
|
1332
|
+
* MonitorCriteriaEvaluator.metricNameForUnitHeuristics applies.
|
|
1333
|
+
*/
|
|
1334
|
+
metricName: string | undefined;
|
|
1307
1335
|
} {
|
|
1308
1336
|
const thresholdUnit: string | undefined =
|
|
1309
1337
|
input.criteriaFilter.metricMonitorOptions?.thresholdUnit || undefined;
|
|
@@ -1317,6 +1345,7 @@ export default class MonitorCriteriaObservationBuilder {
|
|
|
1317
1345
|
sampleUnit: undefined,
|
|
1318
1346
|
thresholdUnit,
|
|
1319
1347
|
displayUnit: thresholdUnit,
|
|
1348
|
+
metricName: undefined,
|
|
1320
1349
|
};
|
|
1321
1350
|
}
|
|
1322
1351
|
|
|
@@ -1355,35 +1384,42 @@ export default class MonitorCriteriaObservationBuilder {
|
|
|
1355
1384
|
nativeUnitFromMap ||
|
|
1356
1385
|
undefined;
|
|
1357
1386
|
|
|
1387
|
+
const displayUnit: string | undefined = thresholdUnit || sampleUnit;
|
|
1388
|
+
|
|
1358
1389
|
return {
|
|
1359
1390
|
sampleUnit,
|
|
1360
1391
|
thresholdUnit,
|
|
1361
1392
|
displayUnit: MonitorCriteriaObservationBuilder.normalizeDisplayUnit(
|
|
1362
|
-
|
|
1393
|
+
displayUnit,
|
|
1394
|
+
rawMetricName,
|
|
1363
1395
|
),
|
|
1396
|
+
metricName: rawMetricName,
|
|
1364
1397
|
};
|
|
1365
1398
|
}
|
|
1366
1399
|
|
|
1367
1400
|
/*
|
|
1368
|
-
* Suppress units that
|
|
1369
|
-
*
|
|
1370
|
-
*
|
|
1371
|
-
*
|
|
1372
|
-
*
|
|
1373
|
-
*
|
|
1401
|
+
* Suppress units that name no dimension, so they never reach a reader
|
|
1402
|
+
* next to a number.
|
|
1403
|
+
*
|
|
1404
|
+
* This used to be a hand-rolled rule that dropped only the literal "1",
|
|
1405
|
+
* and it drifted from the one CompareCriteria applies to the very same
|
|
1406
|
+
* sample: a ratio metric's evaluation log read a bare "latest 0.06"
|
|
1407
|
+
* while the alert email for the identical value said "6.00%". It also
|
|
1408
|
+
* let UCUM's "{restarts}" and the platform catalogs' "count" / "ratio"
|
|
1409
|
+
* through, none of which mean anything to a reader.
|
|
1410
|
+
*
|
|
1411
|
+
* MetricValueFormatter owns that rule now. Note it is name-AWARE where
|
|
1412
|
+
* the old one was not: "1" on a `.utilization` metric is a real
|
|
1413
|
+
* dimension (a fraction to be shown as a percent), so it survives here
|
|
1414
|
+
* and the formatter turns it into "%".
|
|
1374
1415
|
*/
|
|
1375
1416
|
private static normalizeDisplayUnit(
|
|
1376
1417
|
unit: string | undefined,
|
|
1418
|
+
metricName?: string | undefined,
|
|
1377
1419
|
): string | undefined {
|
|
1378
|
-
|
|
1379
|
-
|
|
1380
|
-
|
|
1381
|
-
|
|
1382
|
-
if (unit.trim() === "1") {
|
|
1383
|
-
return undefined;
|
|
1384
|
-
}
|
|
1385
|
-
|
|
1386
|
-
return unit;
|
|
1420
|
+
return MetricValueFormatter.hasDisplayableUnit(unit, metricName)
|
|
1421
|
+
? unit
|
|
1422
|
+
: undefined;
|
|
1387
1423
|
}
|
|
1388
1424
|
|
|
1389
1425
|
/*
|
|
@@ -1399,6 +1435,24 @@ export default class MonitorCriteriaObservationBuilder {
|
|
|
1399
1435
|
dataToProcess: DataToProcess;
|
|
1400
1436
|
monitorStep: MonitorStep;
|
|
1401
1437
|
}): string | undefined {
|
|
1438
|
+
return MonitorCriteriaObservationBuilder.getMetricValueDisplayContext(input)
|
|
1439
|
+
.unit;
|
|
1440
|
+
}
|
|
1441
|
+
|
|
1442
|
+
/**
|
|
1443
|
+
* The unit AND the metric name a criteria's values are displayed in.
|
|
1444
|
+
*
|
|
1445
|
+
* The expectation clause needs both, not just the unit: it renders the
|
|
1446
|
+
* threshold through the same MetricValueFormatter as the observation, and
|
|
1447
|
+
* the formatter's fraction and epoch-timestamp rules are keyed on the
|
|
1448
|
+
* name. Without it, "recorded latest 6.00%" would be followed by
|
|
1449
|
+
* "(expected to be greater than 0.9)".
|
|
1450
|
+
*/
|
|
1451
|
+
public static getMetricValueDisplayContext(input: {
|
|
1452
|
+
criteriaFilter: CriteriaFilter;
|
|
1453
|
+
dataToProcess: DataToProcess;
|
|
1454
|
+
monitorStep: MonitorStep;
|
|
1455
|
+
}): { unit: string | undefined; metricName: string | undefined } {
|
|
1402
1456
|
/*
|
|
1403
1457
|
* Database Health thresholds are typed in the metric's own unit, which
|
|
1404
1458
|
* only the catalog knows - without this the expectation clause reads
|
|
@@ -1412,13 +1466,17 @@ export default class MonitorCriteriaObservationBuilder {
|
|
|
1412
1466
|
? getDatabaseMetricByMetricType(metricType)
|
|
1413
1467
|
: null;
|
|
1414
1468
|
|
|
1415
|
-
return
|
|
1416
|
-
|
|
1417
|
-
|
|
1469
|
+
return {
|
|
1470
|
+
unit: MonitorCriteriaObservationBuilder.normalizeDisplayUnit(
|
|
1471
|
+
definition?.unit,
|
|
1472
|
+
),
|
|
1473
|
+
// Catalog units are explicit; no name-based heuristic is wanted.
|
|
1474
|
+
metricName: undefined,
|
|
1475
|
+
};
|
|
1418
1476
|
}
|
|
1419
1477
|
|
|
1420
1478
|
if (input.criteriaFilter.checkOn !== CheckOn.MetricValue) {
|
|
1421
|
-
return undefined;
|
|
1479
|
+
return { unit: undefined, metricName: undefined };
|
|
1422
1480
|
}
|
|
1423
1481
|
|
|
1424
1482
|
const metricValues: {
|
|
@@ -1430,12 +1488,17 @@ export default class MonitorCriteriaObservationBuilder {
|
|
|
1430
1488
|
monitorStep: input.monitorStep,
|
|
1431
1489
|
});
|
|
1432
1490
|
|
|
1433
|
-
|
|
1491
|
+
const resolved: {
|
|
1492
|
+
displayUnit: string | undefined;
|
|
1493
|
+
metricName: string | undefined;
|
|
1494
|
+
} = MonitorCriteriaObservationBuilder.resolveMetricUnits({
|
|
1434
1495
|
criteriaFilter: input.criteriaFilter,
|
|
1435
1496
|
dataToProcess: input.dataToProcess,
|
|
1436
1497
|
monitorStep: input.monitorStep,
|
|
1437
1498
|
alias: metricValues?.alias ?? null,
|
|
1438
|
-
})
|
|
1499
|
+
});
|
|
1500
|
+
|
|
1501
|
+
return { unit: resolved.displayUnit, metricName: resolved.metricName };
|
|
1439
1502
|
}
|
|
1440
1503
|
|
|
1441
1504
|
private static getSnmpResponse(input: {
|
|
@@ -1743,28 +1806,24 @@ export default class MonitorCriteriaObservationBuilder {
|
|
|
1743
1806
|
}
|
|
1744
1807
|
}
|
|
1745
1808
|
|
|
1809
|
+
/*
|
|
1810
|
+
* A Database Health metric carries an explicit catalog unit, and
|
|
1811
|
+
* DatabaseMonitorCriteria already hands that same unit to CompareCriteria
|
|
1812
|
+
* for the fired-alert email. Rendering it here through anything else made
|
|
1813
|
+
* one byte count read three ways in one product: the email said
|
|
1814
|
+
* "1.07 GB" (decimal, via MetricValueFormatter), this observation said
|
|
1815
|
+
* "1.00 GB" (formatBytes divides by 1024 but labels the rungs SI), and
|
|
1816
|
+
* the expectation clause beside it said "1000000000 bytes".
|
|
1817
|
+
*
|
|
1818
|
+
* formatBytes stays for the server-monitor memory and disk observations,
|
|
1819
|
+
* where the values come from BasicMetrics with no unit metadata at all
|
|
1820
|
+
* and 1024 is the right convention for RAM and volumes.
|
|
1821
|
+
*/
|
|
1746
1822
|
private static formatDatabaseMetricValue(
|
|
1747
1823
|
value: number,
|
|
1748
1824
|
unit: string,
|
|
1749
1825
|
): string {
|
|
1750
|
-
|
|
1751
|
-
return (
|
|
1752
|
-
MonitorCriteriaMessageFormatter.formatPercentage(value) ?? String(value)
|
|
1753
|
-
);
|
|
1754
|
-
}
|
|
1755
|
-
|
|
1756
|
-
if (unit === "bytes") {
|
|
1757
|
-
return (
|
|
1758
|
-
MonitorCriteriaMessageFormatter.formatBytes(value) ?? String(value)
|
|
1759
|
-
);
|
|
1760
|
-
}
|
|
1761
|
-
|
|
1762
|
-
const formatted: string =
|
|
1763
|
-
MonitorCriteriaMessageFormatter.formatNumber(value, {
|
|
1764
|
-
maximumFractionDigits: 2,
|
|
1765
|
-
}) ?? String(value);
|
|
1766
|
-
|
|
1767
|
-
return unit ? `${formatted} ${unit}` : formatted;
|
|
1826
|
+
return MetricValueFormatter.format({ value: value, unit: unit });
|
|
1768
1827
|
}
|
|
1769
1828
|
|
|
1770
1829
|
private static describeDatabaseCollectionErrorObservation(input: {
|
|
@@ -30,6 +30,13 @@ export interface MaintainedResourceKeys {
|
|
|
30
30
|
* the name set is ever matched; the id set exists for shape parity.
|
|
31
31
|
*/
|
|
32
32
|
proxmoxClusters: ResourceKeySet;
|
|
33
|
+
/*
|
|
34
|
+
* vCenters, like Proxmox/Ceph clusters, have no `oneuptime.*.id`
|
|
35
|
+
* label stamp (the VMware Agent stamps `vmware.vcenter.name` only),
|
|
36
|
+
* so only the name set is ever matched; the id set exists for shape
|
|
37
|
+
* parity.
|
|
38
|
+
*/
|
|
39
|
+
vmwareVCenters: ResourceKeySet;
|
|
33
40
|
cephClusters: ResourceKeySet;
|
|
34
41
|
/*
|
|
35
42
|
* Docker Swarm clusters, like Proxmox/Ceph clusters, have no
|
|
@@ -64,8 +71,8 @@ export interface MaintainedResourceKeys {
|
|
|
64
71
|
* incident/alert creation loops can skip exactly those series while the
|
|
65
72
|
* other 90 hosts keep alerting. It covers every resource type a
|
|
66
73
|
* maintenance event can attach to AND a series can identify: Host,
|
|
67
|
-
* DockerHost, KubernetesCluster, ProxmoxCluster,
|
|
68
|
-
* Service.
|
|
74
|
+
* DockerHost, KubernetesCluster, ProxmoxCluster, VMwareVCenter,
|
|
75
|
+
* CephCluster, and Service.
|
|
69
76
|
*/
|
|
70
77
|
export default class MonitorMaintenanceSuppression {
|
|
71
78
|
/*
|
|
@@ -142,6 +149,10 @@ export default class MonitorMaintenanceSuppression {
|
|
|
142
149
|
refs.proxmoxClusterNames,
|
|
143
150
|
input.maintained.proxmoxClusters.names,
|
|
144
151
|
) ||
|
|
152
|
+
this.intersects(
|
|
153
|
+
refs.vmwareVCenterNames,
|
|
154
|
+
input.maintained.vmwareVCenters.names,
|
|
155
|
+
) ||
|
|
145
156
|
this.intersects(
|
|
146
157
|
refs.cephClusterNames,
|
|
147
158
|
input.maintained.cephClusters.names,
|
|
@@ -185,6 +196,8 @@ export default class MonitorMaintenanceSuppression {
|
|
|
185
196
|
maintained.kubernetesClusters.names.size > 0 ||
|
|
186
197
|
maintained.proxmoxClusters.ids.size > 0 ||
|
|
187
198
|
maintained.proxmoxClusters.names.size > 0 ||
|
|
199
|
+
maintained.vmwareVCenters.ids.size > 0 ||
|
|
200
|
+
maintained.vmwareVCenters.names.size > 0 ||
|
|
188
201
|
maintained.cephClusters.ids.size > 0 ||
|
|
189
202
|
maintained.cephClusters.names.size > 0 ||
|
|
190
203
|
maintained.dockerSwarmClusters.ids.size > 0 ||
|
|
@@ -198,8 +211,8 @@ export default class MonitorMaintenanceSuppression {
|
|
|
198
211
|
|
|
199
212
|
/*
|
|
200
213
|
* Collect the ids + identifiers of every Host / DockerHost /
|
|
201
|
-
* PodmanHost / KubernetesCluster / ProxmoxCluster /
|
|
202
|
-
* DockerSwarmCluster / IoTFleet / Service attached to an ongoing
|
|
214
|
+
* PodmanHost / KubernetesCluster / ProxmoxCluster / VMwareVCenter /
|
|
215
|
+
* CephCluster / DockerSwarmCluster / IoTFleet / Service attached to an ongoing
|
|
203
216
|
* maintenance event in this project. Monitors attached
|
|
204
217
|
* to the event are intentionally not collected here — those are
|
|
205
218
|
* already handled upstream by the whole-monitor disable flag, which
|
|
@@ -214,6 +227,7 @@ export default class MonitorMaintenanceSuppression {
|
|
|
214
227
|
podmanHosts: { ids: new Set<string>(), names: new Set<string>() },
|
|
215
228
|
kubernetesClusters: { ids: new Set<string>(), names: new Set<string>() },
|
|
216
229
|
proxmoxClusters: { ids: new Set<string>(), names: new Set<string>() },
|
|
230
|
+
vmwareVCenters: { ids: new Set<string>(), names: new Set<string>() },
|
|
217
231
|
cephClusters: { ids: new Set<string>(), names: new Set<string>() },
|
|
218
232
|
dockerSwarmClusters: {
|
|
219
233
|
ids: new Set<string>(),
|
|
@@ -238,6 +252,7 @@ export default class MonitorMaintenanceSuppression {
|
|
|
238
252
|
podmanHosts: { _id: true, hostIdentifier: true },
|
|
239
253
|
kubernetesClusters: { _id: true, clusterIdentifier: true },
|
|
240
254
|
proxmoxClusters: { _id: true, name: true },
|
|
255
|
+
vmwareVCenters: { _id: true, name: true },
|
|
241
256
|
cephClusters: { _id: true, name: true },
|
|
242
257
|
dockerSwarmClusters: { _id: true, name: true },
|
|
243
258
|
iotFleets: { _id: true, name: true },
|
|
@@ -282,6 +297,13 @@ export default class MonitorMaintenanceSuppression {
|
|
|
282
297
|
proxmoxCluster.name,
|
|
283
298
|
);
|
|
284
299
|
}
|
|
300
|
+
for (const vmwareVCenter of event.vmwareVCenters || []) {
|
|
301
|
+
this.addKey(
|
|
302
|
+
maintained.vmwareVCenters,
|
|
303
|
+
vmwareVCenter._id,
|
|
304
|
+
vmwareVCenter.name,
|
|
305
|
+
);
|
|
306
|
+
}
|
|
285
307
|
for (const cephCluster of event.cephClusters || []) {
|
|
286
308
|
this.addKey(maintained.cephClusters, cephCluster._id, cephCluster.name);
|
|
287
309
|
}
|
|
@@ -25,9 +25,10 @@ import SeriesResourceLinker, {
|
|
|
25
25
|
*
|
|
26
26
|
* The deterministic source is the monitor's own step config, which
|
|
27
27
|
* always carries whatever the user picked when they built the monitor:
|
|
28
|
-
* a hostIdentifier, a clusterIdentifier, a
|
|
29
|
-
* telemetryServiceIds, or a metric attribute
|
|
30
|
-
* it once per evaluation and resolves it to
|
|
28
|
+
* a hostIdentifier, a clusterIdentifier, a vcenterIdentifier, a
|
|
29
|
+
* fleetIdentifier, a set of telemetryServiceIds, or a metric attribute
|
|
30
|
+
* filter. This module reads it once per evaluation and resolves it to
|
|
31
|
+
* real rows.
|
|
31
32
|
*
|
|
32
33
|
* This supersedes the old MonitorClusterContext, which did the same
|
|
33
34
|
* thing for exactly four cluster types (Proxmox / Ceph / Docker Swarm /
|
|
@@ -99,6 +100,7 @@ export default class MonitorResourceContextUtil {
|
|
|
99
100
|
kubernetesClusterIds: [],
|
|
100
101
|
serviceIds: [],
|
|
101
102
|
proxmoxClusterIds: [],
|
|
103
|
+
vmwareVCenterIds: [],
|
|
102
104
|
cephClusterIds: [],
|
|
103
105
|
dockerSwarmClusterIds: [],
|
|
104
106
|
iotFleetIds: [],
|
|
@@ -48,6 +48,7 @@ type NameRefKey = keyof Pick<
|
|
|
48
48
|
| "podmanHostNames"
|
|
49
49
|
| "kubernetesClusterNames"
|
|
50
50
|
| "proxmoxClusterNames"
|
|
51
|
+
| "vmwareVCenterNames"
|
|
51
52
|
| "cephClusterNames"
|
|
52
53
|
| "dockerSwarmClusterNames"
|
|
53
54
|
| "iotFleetNames"
|
|
@@ -183,6 +184,17 @@ export default class MonitorStepResourceIdentity {
|
|
|
183
184
|
key: "proxmoxClusterNames",
|
|
184
185
|
value: stepData.proxmoxMonitor?.clusterIdentifier,
|
|
185
186
|
};
|
|
187
|
+
case MonitorType.VMware:
|
|
188
|
+
/*
|
|
189
|
+
* The `vmware.vcenter.name` the VMware Agent stamps. Returned
|
|
190
|
+
* untrimmed and untyped on purpose: the caller's `typeof`
|
|
191
|
+
* guard is what keeps a numeric or object identifier written by
|
|
192
|
+
* the API from throwing out of alert/incident creation.
|
|
193
|
+
*/
|
|
194
|
+
return {
|
|
195
|
+
key: "vmwareVCenterNames",
|
|
196
|
+
value: stepData.vmwareMonitor?.vcenterIdentifier,
|
|
197
|
+
};
|
|
186
198
|
case MonitorType.Ceph:
|
|
187
199
|
return {
|
|
188
200
|
key: "cephClusterNames",
|
|
@@ -327,6 +339,7 @@ export default class MonitorStepResourceIdentity {
|
|
|
327
339
|
stepData.dockerMonitor?.metricViewConfig,
|
|
328
340
|
stepData.podmanMonitor?.metricViewConfig,
|
|
329
341
|
stepData.proxmoxMonitor?.metricViewConfig,
|
|
342
|
+
stepData.vmwareMonitor?.metricViewConfig,
|
|
330
343
|
stepData.cephMonitor?.metricViewConfig,
|
|
331
344
|
stepData.dockerSwarmMonitor?.metricViewConfig,
|
|
332
345
|
stepData.iotMonitor?.metricViewConfig,
|
|
@@ -421,6 +434,7 @@ export default class MonitorStepResourceIdentity {
|
|
|
421
434
|
kubernetesClusterNames: [],
|
|
422
435
|
dockerSwarmClusterNames: [],
|
|
423
436
|
proxmoxClusterNames: [],
|
|
437
|
+
vmwareVCenterNames: [],
|
|
424
438
|
cephClusterNames: [],
|
|
425
439
|
iotFleetNames: [],
|
|
426
440
|
serviceIds: [],
|
|
@@ -517,6 +517,7 @@ export default class MonitorTemplateUtil {
|
|
|
517
517
|
data.monitorType === MonitorType.Podman ||
|
|
518
518
|
data.monitorType === MonitorType.DockerSwarm ||
|
|
519
519
|
data.monitorType === MonitorType.Proxmox ||
|
|
520
|
+
data.monitorType === MonitorType.VMware ||
|
|
520
521
|
data.monitorType === MonitorType.Ceph
|
|
521
522
|
) {
|
|
522
523
|
const metricResponse: MetricMonitorResponse =
|