@oneuptime/common 12.0.33 → 12.0.34
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/AnalyticsModels/RumSession.ts +117 -1
- package/Models/AnalyticsModels/RumSessionChunk.ts +13 -0
- package/Models/DatabaseModels/AlertCustomField.ts +77 -3
- package/Models/DatabaseModels/ApiKeyPermission.ts +3 -27
- package/Models/DatabaseModels/IncidentCustomField.ts +77 -3
- package/Models/DatabaseModels/InventoryItemCustomField.ts +77 -3
- package/Models/DatabaseModels/MonitorCustomField.ts +77 -3
- package/Models/DatabaseModels/OnCallDutyPolicyCustomField.ts +77 -3
- package/Models/DatabaseModels/RumApplication.ts +6 -6
- package/Models/DatabaseModels/ScheduledMaintenanceCustomField.ts +77 -3
- package/Models/DatabaseModels/StatusPageCustomField.ts +77 -3
- package/Models/DatabaseModels/TeamCustomField.ts +77 -3
- package/Models/DatabaseModels/TeamMember.ts +0 -9
- package/Models/DatabaseModels/TeamMemberCustomField.ts +77 -3
- package/Models/DatabaseModels/TeamPermission.ts +3 -24
- package/Models/DatabaseModels/TelemetryIngestionKey.ts +260 -0
- package/Models/DatabaseModels/UserTelegram.ts +0 -4
- package/Scripts/benchmark-fanin-capacity.js +181 -0
- package/Server/API/TelemetryAPI.ts +1284 -164
- package/Server/API/UserNotificationSettingAPI.ts +55 -0
- package/Server/API/UserTelegramAPI.ts +48 -4
- package/Server/EnvironmentConfig.ts +35 -2
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.ts +91 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.ts +67 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.ts +139 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.ts +121 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +8 -0
- package/Server/Infrastructure/QueueWorker.ts +20 -14
- package/Server/Infrastructure/Semaphore.ts +2 -0
- package/Server/Middleware/TelemetryIngest.ts +453 -7
- package/Server/Services/AccessTokenService.ts +1 -0
- package/Server/Services/AlertCustomFieldService.ts +98 -0
- package/Server/Services/AlertService.ts +37 -0
- package/Server/Services/ApiKeyPermissionService.ts +461 -29
- package/Server/Services/CustomFieldMappingService.ts +879 -0
- package/Server/Services/GlobalConfigService.ts +194 -0
- package/Server/Services/IncidentCustomFieldService.ts +98 -0
- package/Server/Services/IncidentService.ts +35 -0
- package/Server/Services/MetricService.ts +194 -0
- package/Server/Services/MonitorService.ts +32 -0
- package/Server/Services/NetworkDeviceAutoImportRuleEngineService.ts +78 -25
- package/Server/Services/ProjectService.ts +22 -0
- package/Server/Services/RoutineEmailSettingsService.ts +73 -0
- package/Server/Services/RumSessionReplayViewService.ts +104 -24
- package/Server/Services/ScheduledMaintenanceCustomFieldService.ts +98 -0
- package/Server/Services/ScheduledMaintenanceService.ts +32 -0
- package/Server/Services/TeamMemberService.ts +78 -0
- package/Server/Services/TeamPermissionService.ts +235 -3
- package/Server/Services/TelemetryIngestionKeyService.ts +722 -19
- package/Server/Services/UserNotificationSettingService.ts +34 -6
- package/Server/Services/UserTelegramService.ts +326 -5
- package/Server/Types/Database/QueryHelper.ts +2 -0
- package/Server/Utils/APIKey/AccessPermission.ts +5 -2
- package/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.ts +54 -0
- package/Server/Utils/CustomField/CustomFieldMappingRegistry.ts +415 -0
- package/Server/Utils/CustomField/CustomFieldMappingValidator.ts +335 -0
- package/Server/Utils/DataSource/EgressGuard.ts +177 -8
- package/Server/Utils/EmailRollup/EmailRollupConstants.ts +38 -5
- package/Server/Utils/EmailRollup/EmailRollupFlushRunner.ts +57 -4
- package/Server/Utils/FrontendEnvironment.ts +40 -0
- package/Server/Utils/LogRedaction.ts +20 -0
- package/Server/Utils/Logger.ts +11 -0
- package/Server/Utils/Monitor/Criteria/CompareCriteria.ts +338 -77
- package/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.ts +30 -4
- package/Server/Utils/Monitor/MonitorAlert.ts +29 -6
- package/Server/Utils/Monitor/MonitorCriteriaEvaluator.ts +110 -15
- package/Server/Utils/Monitor/MonitorIncident.ts +22 -6
- package/Server/Utils/Monitor/MonitorTemplateUtil.ts +29 -0
- package/Server/Utils/Monitor/SeriesContextEnricher.ts +304 -0
- package/Server/Utils/SSRFProtection.ts +217 -10
- package/Server/Utils/SessionReplay/SessionReplayGateCache.ts +239 -138
- package/Server/Utils/SessionReplay/SessionReplayHealthCounters.ts +305 -0
- package/Server/Utils/SessionReplay/SessionReplayReadService.ts +1430 -289
- package/Server/Utils/StartServer.ts +2 -17
- package/Server/Utils/TelegramVerificationToken.ts +185 -0
- package/Server/Utils/Telemetry/PinServiceName.ts +197 -0
- package/Server/Utils/Telemetry/TelemetryFanInWriter.ts +38 -16
- package/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.ts +92 -0
- package/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.ts +217 -0
- package/Server/Utils/VM/VMAPI.ts +1 -0
- package/Server/Utils/VM/VMRunner.ts +975 -95
- package/Tests/App/AdminDashboard/AdminHeaderSmallScreens.test.tsx +202 -0
- package/Tests/App/Dashboard/DashboardHeaderSmallScreens.test.tsx +404 -0
- package/Tests/App/Dashboard/DiscoveryScanWizardValidation.test.tsx +468 -0
- package/Tests/App/Dashboard/NotificationEmailPreferences.test.tsx +399 -0
- package/Tests/App/StatusPage/StatusPageLastUpdated.test.tsx +263 -0
- package/Tests/App/StatusPage/StatusPageOverviewLiveAndSearch.test.tsx +753 -0
- package/Tests/App/StatusPage/StatusPageResourceSearchBox.test.tsx +224 -0
- package/Tests/Models/AnalyticsModels/RumSessionReplayColumns.test.ts +262 -0
- package/Tests/Models/CustomFieldMappingColumns.test.ts +166 -0
- package/Tests/Models/DatabaseModels/SessionReplayModels.test.ts +20 -6
- package/Tests/ResponsiveVisibility.test.ts +115 -0
- package/Tests/ResponsiveVisibility.ts +183 -0
- package/Tests/Server/API/SessionReplayAPI.test.ts +1940 -216
- package/Tests/Server/API/UserNotificationSettingAPI.test.ts +186 -0
- package/Tests/Server/API/UserTelegramAPISecurity.test.ts +231 -0
- package/Tests/Server/EnvironmentConfigFrontendSecurity.test.ts +234 -0
- package/Tests/Server/Infrastructure/Postgres/CustomFieldValueMappingMigration.test.ts +202 -0
- package/Tests/Server/Infrastructure/Postgres/InventoryItemArchiveMigration.test.ts +41 -0
- package/Tests/Server/Infrastructure/Postgres/SessionReplayRecordEverySessionByDefaultMigration.test.ts +169 -0
- package/Tests/Server/Infrastructure/QueueWorkerTimeout.test.ts +210 -0
- package/Tests/Server/Infrastructure/TelemetryExporterDeploymentConfig.test.ts +130 -0
- package/Tests/Server/Middleware/ProjectAuthorizationApiKeyMiddleware.test.ts +4 -1
- package/Tests/Server/Middleware/TelemetryIngestBrowserKey.test.ts +1163 -0
- package/Tests/Server/Middleware/TelemetryIngestTokenLog.test.ts +5 -3
- package/Tests/Server/Services/AddTelemetryIngestionKeyTypeMigration.test.ts +555 -0
- package/Tests/Server/Services/ApiKeyPermissionSecurity.test.ts +678 -0
- package/Tests/Server/Services/ApiKeyPermissionService.test.ts +276 -28
- package/Tests/Server/Services/CustomFieldDropdownOptionsColumnWidth.test.ts +431 -0
- package/Tests/Server/Services/CustomFieldMappingService.test.ts +850 -0
- package/Tests/Server/Services/DiscoveryScanClaimHookFreeSafety.test.ts +32 -0
- package/Tests/Server/Services/GlobalConfigService.test.ts +414 -1
- package/Tests/Server/Services/MetricRawEntityKeyPrune.test.ts +592 -0
- package/Tests/Server/Services/NetworkDeviceAutoImportRuleEngineService.test.ts +226 -1
- package/Tests/Server/Services/RoutineEmailSettingsPostgres.test.ts +329 -0
- package/Tests/Server/Services/RumSessionReplayViewService.test.ts +267 -0
- package/Tests/Server/Services/TeamMemberAutoAcceptInvitation.test.ts +9 -0
- package/Tests/Server/Services/TeamMemberInviteRegistrationToken.test.ts +9 -0
- package/Tests/Server/Services/TeamPrivilegeEscalation.test.ts +834 -0
- package/Tests/Server/Services/TelemetryIngestionKeyPolicyResolution.test.ts +814 -0
- package/Tests/Server/Services/TelemetryIngestionKeyValidation.test.ts +998 -0
- package/Tests/Server/Services/UserNotificationSettingRollupRouting.test.ts +141 -0
- package/Tests/Server/Services/UserNotificationSettingWorkspaceChannels.test.ts +18 -10
- package/Tests/Server/Services/UserTelegramVerificationSecurity.test.ts +688 -0
- package/Tests/Server/Utils/AI/SRE/Insights/FixRouting.test.ts +497 -0
- package/Tests/Server/Utils/AI/Toolbox/Serializer.test.ts +383 -0
- package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +7 -3
- package/Tests/Server/Utils/AnalyticsDatabase/ClusterConfig.test.ts +315 -0
- package/Tests/Server/Utils/CustomField/CustomFieldMappingValidator.test.ts +437 -0
- package/Tests/Server/Utils/DataSource/EgressGuard.test.ts +300 -11
- package/Tests/Server/Utils/EmailRollup/EmailRollupBurstWindow.test.ts +83 -0
- package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerBehaviour.test.ts +1 -1
- package/Tests/Server/Utils/EmailRollup/EmailRollupFlushRunnerPreferences.test.ts +362 -0
- package/Tests/Server/Utils/EmailRollup/EmailRollupTestHarness.ts +77 -1
- package/Tests/Server/Utils/FrontendEnvironment.test.ts +190 -0
- package/Tests/Server/Utils/LogRedaction.test.ts +26 -0
- package/Tests/Server/Utils/LoggerCredentialLeak.test.ts +23 -9
- package/Tests/Server/Utils/Monitor/Criteria/CompareCriteriaAggregation.test.ts +584 -0
- package/Tests/Server/Utils/Monitor/Criteria/IncomingRequestHeaderCriteria.test.ts +236 -0
- package/Tests/Server/Utils/Monitor/MonitorCriteriaEvaluator.test.ts +437 -0
- package/Tests/Server/Utils/Monitor/MonitorTemplateUtilSeriesContext.test.ts +176 -0
- package/Tests/Server/Utils/Monitor/SeriesContextEnricher.test.ts +356 -0
- package/Tests/Server/Utils/SSRFProtectionCloudServiceAddresses.test.ts +595 -0
- package/Tests/Server/Utils/SessionReplay/SessionReplayGateCachePolicy.test.ts +198 -1
- package/Tests/Server/Utils/SessionReplay/SessionReplayHealthCounters.test.ts +453 -0
- package/Tests/Server/Utils/SessionReplay/SessionReplayReadServiceQueries.test.ts +1378 -0
- package/Tests/Server/Utils/SessionReplayOriginAllowListRefactor.test.ts +420 -0
- package/Tests/Server/Utils/TelegramVerificationToken.test.ts +253 -0
- package/Tests/Server/Utils/Telemetry/PinServiceName.test.ts +666 -0
- package/Tests/Server/Utils/Telemetry/TelemetryFanInWriterCapacity.test.ts +458 -0
- package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.test.ts +424 -0
- package/Tests/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.test.ts +528 -0
- package/Tests/Server/Utils/TelemetryExporterEnvironment.test.ts +56 -0
- package/Tests/Server/Utils/VM/VMRunnerHostBridgeLatency.test.ts +74 -0
- package/Tests/Server/Utils/VM/VMRunnerPrivateNetworkWiring.test.ts +100 -7
- package/Tests/Server/Utils/VM/VMRunnerSsrf.test.ts +1176 -6
- package/Tests/Types/CustomField/CustomFieldMappingCatalog.test.ts +220 -0
- package/Tests/Types/CustomField/CustomFieldValueMapping.test.ts +348 -0
- package/Tests/Types/JSONFunctions.test.ts +260 -0
- package/Tests/Types/Monitor/CephAlertTemplates.test.ts +422 -53
- package/Tests/Types/Monitor/DockerAlertTemplates.test.ts +495 -15
- package/Tests/Types/Monitor/DockerSwarmAlertTemplates.test.ts +191 -45
- package/Tests/Types/Monitor/HostAlertTemplates.test.ts +370 -42
- package/Tests/Types/Monitor/IotAlertTemplates.test.ts +375 -20
- package/Tests/Types/Monitor/KubernetesAlertTemplates.test.ts +636 -42
- package/Tests/Types/Monitor/KubernetesMetricCatalog.test.ts +189 -0
- package/Tests/Types/Monitor/KubernetesTemplateGroupByKeys.test.ts +95 -14
- package/Tests/Types/Monitor/PodmanAlertTemplates.test.ts +190 -21
- package/Tests/Types/Monitor/ProxmoxAlertTemplates.test.ts +352 -22
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationAlertDebuggability.test.ts +363 -0
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationNotificationMode.test.ts +93 -18
- package/Tests/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.test.ts +259 -0
- package/Tests/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.test.ts +476 -0
- package/Tests/Types/Monitor/RumAlertTemplates.test.ts +136 -0
- package/Tests/Types/Monitor/SeriesContext/SeriesDebugHints.test.ts +661 -0
- package/Tests/Types/Monitor/SeriesContext/SeriesLabelDisplay.test.ts +507 -0
- package/Tests/Types/Monitor/ServiceAlertTemplates.test.ts +270 -0
- package/Tests/Types/Monitor/TemplateGroupByKeys.test.ts +38 -10
- package/Tests/Types/Monitor/Utils/RecommendationCriteriaAssertions.ts +102 -0
- package/Tests/Types/NotificationSetting/RoutineEmailEvents.test.ts +47 -0
- package/Tests/Types/Rum/SessionReplayApiContracts.test.ts +608 -0
- package/Tests/Types/Rum/SessionReplayCustomEvents.test.ts +434 -0
- package/Tests/Types/WebsiteRequest.test.ts +285 -3
- package/Tests/UI/Components/Charts/ChartBucketIdentity.test.ts +16 -3
- package/Tests/UI/Components/Charts/ChartTrailingBucketGap.test.ts +691 -0
- package/Tests/UI/Components/ComponentsModal.test.tsx +12 -4
- package/Tests/UI/Components/ComponentsModalUsability.test.tsx +518 -0
- package/Tests/UI/Components/CustomFields/CustomFieldsDetailMapping.test.tsx +324 -0
- package/Tests/UI/Components/CustomFields/MapFromCustomFieldInput.test.tsx +176 -0
- package/Tests/UI/Components/Graphs/DayUptimeGraph.test.tsx +484 -0
- package/Tests/UI/Components/HeaderRightRail.test.tsx +157 -0
- package/Tests/UI/Components/IconDropdownItem.test.tsx +102 -0
- package/Tests/UI/Components/JSONTablePrototypePollution.test.tsx +117 -0
- package/Tests/UI/Components/KeyboardShortcutsModal.test.tsx +214 -0
- package/Tests/UI/Components/ModelTable/ModelTableWrapContent.test.tsx +561 -0
- package/Tests/UI/Components/MonitorGraphs/UptimeBarDayModal.test.tsx +302 -0
- package/Tests/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.test.ts +28 -12
- package/Tests/UI/Components/ShortcutDialogGuard.test.tsx +74 -0
- package/Tests/UI/Components/StatusPage/ResourceGroupSectionAutoExpand.test.tsx +248 -0
- package/Tests/UI/Components/TableCellWrapping.test.tsx +625 -0
- package/Tests/UI/Components/TableLoadingStates.test.tsx +205 -0
- package/Tests/UI/Components/Workflow/NodePlacement.test.ts +148 -0
- package/Tests/UI/Components/Workflow/Workflow.test.tsx +981 -0
- package/Tests/UI/ConfigBrowserTelemetry.test.ts +70 -0
- package/Tests/UI/Rum/ChunkLoader.test.ts +1036 -2
- package/Tests/UI/Rum/FidelityNotices.test.ts +187 -0
- package/Tests/UI/Rum/InactivityMap.test.ts +341 -0
- package/Tests/UI/Rum/PrivacySummaryCard.test.tsx +259 -0
- package/Tests/UI/Rum/RecordingHealthCard.test.tsx +855 -0
- package/Tests/UI/Rum/RecordingHealthStrip.test.tsx +594 -0
- package/Tests/UI/Rum/ReplayCard.test.tsx +451 -0
- package/Tests/UI/Rum/ReplayCorrelationPanel.test.tsx +536 -0
- package/Tests/UI/Rum/ReplayEngine.test.ts +2503 -0
- package/Tests/UI/Rum/ReplayEngineTypes.test.ts +171 -0
- package/Tests/UI/Rum/ReplayHeader.test.tsx +711 -0
- package/Tests/UI/Rum/ReplayLink.test.tsx +119 -0
- package/Tests/UI/Rum/ReplayPinControl.test.tsx +408 -0
- package/Tests/UI/Rum/ReplayPlaybackIntent.test.ts +152 -0
- package/Tests/UI/Rum/ReplayRail.test.tsx +1296 -0
- package/Tests/UI/Rum/ReplayRailDetail.test.tsx +900 -0
- package/Tests/UI/Rum/ReplayScrubber.test.tsx +763 -147
- package/Tests/UI/Rum/ReplaySignalTypes.test.ts +189 -0
- package/Tests/UI/Rum/ReplaySignals.test.ts +1579 -0
- package/Tests/UI/Rum/ReplayStage.test.tsx +396 -473
- package/Tests/UI/Rum/ReplayStageOverlays.test.tsx +918 -0
- package/Tests/UI/Rum/ReplayTimeline.test.tsx +696 -0
- package/Tests/UI/Rum/SessionReplayEmptyState.test.tsx +499 -0
- package/Tests/UI/Rum/SessionReplaySearchBar.test.tsx +346 -0
- package/Tests/UI/Rum/SessionReplaySetupGuide.test.tsx +545 -0
- package/Tests/UI/Rum/SessionReplayTable.test.tsx +991 -0
- package/Tests/UI/Rum/TargetedCapturePanel.test.tsx +254 -0
- package/Tests/UI/Telemetry/BrowserExporterIsolation.test.ts +71 -0
- package/Tests/UI/Utils/GlobalKeyboardShortcut.test.ts +344 -0
- package/Tests/Utils/API.test.ts +308 -0
- package/Tests/Utils/HTTPResponseBodyReader.test.ts +323 -0
- package/Tests/Utils/NetworkDiscovery/DiscoveryScanStatus.test.ts +117 -0
- package/Tests/Utils/Rum/ChunkMath.test.ts +83 -0
- package/Tests/Utils/Rum/SessionReplayHealthDiagnosis.test.ts +993 -0
- package/Tests/Utils/Rum/SessionReplayStringMap.test.ts +245 -0
- package/Tests/Utils/StatusPage/ResourceSearch.test.ts +631 -0
- package/Tests/Utils/Telemetry/OriginAllowList.test.ts +633 -0
- package/Tests/Utils/Uptime/DayUptimeGraphUtil.test.ts +461 -0
- package/Tests/Utils/ValueFormatter.test.ts +148 -0
- package/Types/CustomField/CustomFieldMappingCatalog.ts +161 -0
- package/Types/CustomField/CustomFieldMappingSourceResource.ts +19 -0
- package/Types/CustomField/CustomFieldValueMapping.ts +288 -0
- package/Types/Icon/IconProp.ts +1 -0
- package/Types/JSONFunctions.ts +189 -43
- package/Types/Monitor/CephAlertTemplates.ts +157 -195
- package/Types/Monitor/DockerAlertTemplates.ts +338 -128
- package/Types/Monitor/DockerSwarmAlertTemplates.ts +95 -112
- package/Types/Monitor/HostAlertTemplates.ts +302 -130
- package/Types/Monitor/IotAlertTemplates.ts +112 -104
- package/Types/Monitor/KubernetesAlertTemplates.ts +415 -224
- package/Types/Monitor/KubernetesMetricCatalog.ts +23 -19
- package/Types/Monitor/PodmanAlertTemplates.ts +116 -163
- package/Types/Monitor/ProxmoxAlertTemplates.ts +217 -99
- package/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.ts +98 -6
- package/Types/Monitor/Recommendation/MonitorRecommendationUtil.ts +44 -7
- package/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.ts +383 -0
- package/Types/Monitor/RumAlertTemplates.ts +46 -7
- package/Types/Monitor/SeriesContext/SeriesDebugHints.ts +596 -0
- package/Types/Monitor/SeriesContext/SeriesLabelDisplay.ts +554 -0
- package/Types/Monitor/ServiceAlertTemplates.ts +98 -11
- package/Types/Monitor/UptimeHistoryLabels.ts +56 -0
- package/Types/NotificationSetting/RoutineEmailEvents.ts +30 -0
- package/Types/Rum/SessionReplay.ts +209 -0
- package/Types/Rum/SessionReplayApi.ts +722 -0
- package/Types/Rum/SessionReplayCaptureTrigger.ts +21 -12
- package/Types/Rum/SessionReplayConsentMode.ts +11 -7
- package/Types/Rum/SessionReplayCustomEvents.ts +549 -0
- package/Types/Rum/SessionReplayHealth.ts +238 -0
- package/Types/Telemetry/TelemetryIngestSurface.ts +95 -0
- package/Types/Telemetry/TelemetryIngestionKeyPolicy.ts +75 -0
- package/Types/Telemetry/TelemetryIngestionKeyType.ts +29 -0
- package/Types/WebsiteRequest.ts +85 -3
- package/UI/Components/Charts/Area/AreaChart.tsx +13 -2
- package/UI/Components/Charts/Bar/BarChart.tsx +6 -2
- package/UI/Components/Charts/Line/LineChart.tsx +13 -2
- package/UI/Components/Charts/Types/XAxis/XAxis.ts +29 -0
- package/UI/Components/Charts/Utils/DataPoint.ts +22 -3
- package/UI/Components/Charts/Utils/TimeAnnotation.ts +76 -9
- package/UI/Components/Charts/Utils/XAxis.ts +217 -0
- package/UI/Components/CustomFields/CustomFieldsDetail.tsx +143 -25
- package/UI/Components/CustomFields/MapFromCustomFieldInput.tsx +216 -0
- package/UI/Components/Graphs/DayUptimeGraph.tsx +173 -8
- package/UI/Components/Graphs/UptimeBarTooltip.tsx +22 -278
- package/UI/Components/Graphs/UptimeDaySummary.tsx +327 -0
- package/UI/Components/Header/Header.tsx +25 -9
- package/UI/Components/Header/IconDropdown/IconDropdownItem.tsx +10 -1
- package/UI/Components/Header/IconDropdown/IconDropdownMenu.tsx +6 -1
- package/UI/Components/Header/ProjectPicker/ProjectPicker.tsx +6 -1
- package/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.tsx +6 -1
- package/UI/Components/Icon/Icon.tsx +11 -0
- package/UI/Components/JSONTable/JSONTable.tsx +2 -2
- package/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.tsx +125 -0
- package/UI/Components/KeyboardShortcut/Screenshots/README.md +19 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-command-palette.png +0 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-dialog-dark.png +0 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-dialog.png +0 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-help-menu.png +0 -0
- package/UI/Components/KeyboardShortcut/Screenshots/keyboard-shortcuts-narrow.png +0 -0
- package/UI/Components/ModelTable/Column.ts +15 -0
- package/UI/Components/Monitor/SeriesDebugCommandsViewer.tsx +64 -0
- package/UI/Components/Monitor/SeriesLabelsViewer.tsx +93 -0
- package/UI/Components/MonitorGraphs/Uptime.tsx +14 -2
- package/UI/Components/MonitorGraphs/UptimeBarDayModal.tsx +63 -10
- package/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.ts +44 -0
- package/UI/Components/StatusPage/ResourceGroupSection.tsx +40 -0
- package/UI/Components/Table/CellClassName.ts +81 -0
- package/UI/Components/Table/TableRow.tsx +20 -14
- package/UI/Components/Table/TableSkeletonRows.tsx +9 -9
- package/UI/Components/Table/Types/Column.ts +36 -0
- package/UI/Components/Tooltip/Tooltip.tsx +11 -1
- package/UI/Components/Workflow/ComponentsModal.tsx +60 -39
- package/UI/Components/Workflow/NodePlacement.ts +57 -0
- package/UI/Components/Workflow/Workflow.tsx +47 -18
- package/UI/Config.ts +15 -33
- package/UI/Utils/GlobalKeyboardShortcut.ts +208 -0
- package/UI/Utils/Telemetry/BrowserTelemetryConfig.ts +28 -0
- package/UI/Utils/Telemetry/Telemetry.ts +10 -8
- package/Utils/API.ts +129 -3
- package/Utils/HTTPResponseBodyReader.ts +221 -0
- package/Utils/NetworkDiscovery/DiscoveryScanStatus.ts +77 -0
- package/Utils/Rum/ChunkMath.ts +106 -0
- package/Utils/Rum/SessionReplayHealth.ts +732 -0
- package/Utils/Rum/SessionReplayStringMap.ts +226 -0
- package/Utils/Schema/ModelSchema.ts +1 -0
- package/Utils/StatusPage/ResourceSearch.ts +290 -0
- package/Utils/Telemetry/OriginAllowList.ts +355 -0
- package/Utils/Uptime/DayUptimeGraphUtil.ts +205 -0
- package/Utils/ValueFormatter.ts +35 -1
- package/build/dist/Models/AnalyticsModels/RumSession.js +102 -19
- package/build/dist/Models/AnalyticsModels/RumSession.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/RumSessionChunk.js +11 -9
- package/build/dist/Models/AnalyticsModels/RumSessionChunk.js.map +1 -1
- package/build/dist/Models/DatabaseModels/AlertCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/AlertCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ApiKeyPermission.js +3 -27
- package/build/dist/Models/DatabaseModels/ApiKeyPermission.js.map +1 -1
- package/build/dist/Models/DatabaseModels/IncidentCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/IncidentCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/InventoryItemCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/InventoryItemCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/MonitorCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/MonitorCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/OnCallDutyPolicyCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/RumApplication.js +6 -6
- package/build/dist/Models/DatabaseModels/RumApplication.js.map +1 -1
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/ScheduledMaintenanceCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/StatusPageCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/StatusPageCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/TeamCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamMember.js +0 -9
- package/build/dist/Models/DatabaseModels/TeamMember.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js +79 -3
- package/build/dist/Models/DatabaseModels/TeamMemberCustomField.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TeamPermission.js +3 -24
- package/build/dist/Models/DatabaseModels/TeamPermission.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js +267 -0
- package/build/dist/Models/DatabaseModels/TelemetryIngestionKey.js.map +1 -1
- package/build/dist/Models/DatabaseModels/UserTelegram.js +0 -4
- package/build/dist/Models/DatabaseModels/UserTelegram.js.map +1 -1
- package/build/dist/Server/API/TelemetryAPI.js +769 -109
- package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
- package/build/dist/Server/API/UserNotificationSettingAPI.js +35 -0
- package/build/dist/Server/API/UserNotificationSettingAPI.js.map +1 -0
- package/build/dist/Server/API/UserTelegramAPI.js +28 -6
- package/build/dist/Server/API/UserTelegramAPI.js.map +1 -1
- package/build/dist/Server/EnvironmentConfig.js +29 -2
- package/build/dist/Server/EnvironmentConfig.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.js +60 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791300000000-AddTelemetryIngestionKeyType.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.js +53 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791400000000-SessionReplayRecordEverySessionByDefault.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.js +82 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791500000000-WidenCustomFieldDropdownOptions.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.js +46 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1791600000000-AddCustomFieldValueMapping.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +8 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
- package/build/dist/Server/Infrastructure/QueueWorker.js +19 -7
- package/build/dist/Server/Infrastructure/QueueWorker.js.map +1 -1
- package/build/dist/Server/Infrastructure/Semaphore.js +1 -0
- package/build/dist/Server/Infrastructure/Semaphore.js.map +1 -1
- package/build/dist/Server/Middleware/TelemetryIngest.js +315 -8
- package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
- package/build/dist/Server/Services/AccessTokenService.js +1 -0
- package/build/dist/Server/Services/AccessTokenService.js.map +1 -1
- package/build/dist/Server/Services/AlertCustomFieldService.js +93 -0
- package/build/dist/Server/Services/AlertCustomFieldService.js.map +1 -1
- package/build/dist/Server/Services/AlertService.js +34 -0
- package/build/dist/Server/Services/AlertService.js.map +1 -1
- package/build/dist/Server/Services/ApiKeyPermissionService.js +331 -28
- package/build/dist/Server/Services/ApiKeyPermissionService.js.map +1 -1
- package/build/dist/Server/Services/CustomFieldMappingService.js +614 -0
- package/build/dist/Server/Services/CustomFieldMappingService.js.map +1 -0
- package/build/dist/Server/Services/GlobalConfigService.js +133 -0
- package/build/dist/Server/Services/GlobalConfigService.js.map +1 -1
- package/build/dist/Server/Services/IncidentCustomFieldService.js +93 -0
- package/build/dist/Server/Services/IncidentCustomFieldService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +32 -0
- package/build/dist/Server/Services/IncidentService.js.map +1 -1
- package/build/dist/Server/Services/MetricService.js +163 -0
- package/build/dist/Server/Services/MetricService.js.map +1 -1
- package/build/dist/Server/Services/MonitorService.js +29 -0
- package/build/dist/Server/Services/MonitorService.js.map +1 -1
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js +79 -27
- package/build/dist/Server/Services/NetworkDeviceAutoImportRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ProjectService.js +22 -0
- package/build/dist/Server/Services/ProjectService.js.map +1 -1
- package/build/dist/Server/Services/RoutineEmailSettingsService.js +69 -0
- package/build/dist/Server/Services/RoutineEmailSettingsService.js.map +1 -0
- package/build/dist/Server/Services/RumSessionReplayViewService.js +86 -24
- package/build/dist/Server/Services/RumSessionReplayViewService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceCustomFieldService.js +93 -0
- package/build/dist/Server/Services/ScheduledMaintenanceCustomFieldService.js.map +1 -1
- package/build/dist/Server/Services/ScheduledMaintenanceService.js +29 -0
- package/build/dist/Server/Services/ScheduledMaintenanceService.js.map +1 -1
- package/build/dist/Server/Services/TeamMemberService.js +62 -2
- package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
- package/build/dist/Server/Services/TeamPermissionService.js +166 -3
- package/build/dist/Server/Services/TeamPermissionService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryIngestionKeyService.js +562 -18
- package/build/dist/Server/Services/TelemetryIngestionKeyService.js.map +1 -1
- package/build/dist/Server/Services/UserNotificationSettingService.js +26 -6
- package/build/dist/Server/Services/UserNotificationSettingService.js.map +1 -1
- package/build/dist/Server/Services/UserTelegramService.js +257 -4
- package/build/dist/Server/Services/UserTelegramService.js.map +1 -1
- package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
- package/build/dist/Server/Utils/APIKey/AccessPermission.js +2 -2
- package/build/dist/Server/Utils/APIKey/AccessPermission.js.map +1 -1
- package/build/dist/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.js +27 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldDefinitionMappingHooks.js.map +1 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldMappingRegistry.js +226 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldMappingRegistry.js.map +1 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldMappingValidator.js +189 -0
- package/build/dist/Server/Utils/CustomField/CustomFieldMappingValidator.js.map +1 -0
- package/build/dist/Server/Utils/DataSource/EgressGuard.js +121 -7
- package/build/dist/Server/Utils/DataSource/EgressGuard.js.map +1 -1
- package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js +38 -5
- package/build/dist/Server/Utils/EmailRollup/EmailRollupConstants.js.map +1 -1
- package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js +44 -2
- package/build/dist/Server/Utils/EmailRollup/EmailRollupFlushRunner.js.map +1 -1
- package/build/dist/Server/Utils/FrontendEnvironment.js +33 -0
- package/build/dist/Server/Utils/FrontendEnvironment.js.map +1 -0
- package/build/dist/Server/Utils/LogRedaction.js +20 -0
- package/build/dist/Server/Utils/LogRedaction.js.map +1 -1
- package/build/dist/Server/Utils/Logger.js +10 -0
- package/build/dist/Server/Utils/Logger.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js +287 -68
- package/build/dist/Server/Utils/Monitor/Criteria/CompareCriteria.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js +20 -4
- package/build/dist/Server/Utils/Monitor/Criteria/IncomingRequestCriteria.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js +29 -6
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js +88 -13
- package/build/dist/Server/Utils/Monitor/MonitorCriteriaEvaluator.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js +22 -6
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js +22 -0
- package/build/dist/Server/Utils/Monitor/MonitorTemplateUtil.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/SeriesContextEnricher.js +237 -0
- package/build/dist/Server/Utils/Monitor/SeriesContextEnricher.js.map +1 -0
- package/build/dist/Server/Utils/SSRFProtection.js +136 -9
- package/build/dist/Server/Utils/SSRFProtection.js.map +1 -1
- package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js +174 -89
- package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCache.js.map +1 -1
- package/build/dist/Server/Utils/SessionReplay/SessionReplayHealthCounters.js +223 -0
- package/build/dist/Server/Utils/SessionReplay/SessionReplayHealthCounters.js.map +1 -0
- package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js +945 -164
- package/build/dist/Server/Utils/SessionReplay/SessionReplayReadService.js.map +1 -1
- package/build/dist/Server/Utils/StartServer.js +3 -14
- package/build/dist/Server/Utils/StartServer.js.map +1 -1
- package/build/dist/Server/Utils/TelegramVerificationToken.js +129 -0
- package/build/dist/Server/Utils/TelegramVerificationToken.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/PinServiceName.js +163 -0
- package/build/dist/Server/Utils/Telemetry/PinServiceName.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js +28 -15
- package/build/dist/Server/Utils/Telemetry/TelemetryFanInWriter.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js +64 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyGuard.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.js +171 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.js.map +1 -0
- package/build/dist/Server/Utils/VM/VMAPI.js.map +1 -1
- package/build/dist/Server/Utils/VM/VMRunner.js +780 -69
- package/build/dist/Server/Utils/VM/VMRunner.js.map +1 -1
- package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js +60 -0
- package/build/dist/Types/CustomField/CustomFieldMappingCatalog.js.map +1 -0
- package/build/dist/Types/CustomField/CustomFieldMappingSourceResource.js +20 -0
- package/build/dist/Types/CustomField/CustomFieldMappingSourceResource.js.map +1 -0
- package/build/dist/Types/CustomField/CustomFieldValueMapping.js +141 -0
- package/build/dist/Types/CustomField/CustomFieldValueMapping.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/JSONFunctions.js +118 -37
- package/build/dist/Types/JSONFunctions.js.map +1 -1
- package/build/dist/Types/Monitor/CephAlertTemplates.js +130 -171
- package/build/dist/Types/Monitor/CephAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/DockerAlertTemplates.js +286 -121
- package/build/dist/Types/Monitor/DockerAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js +84 -105
- package/build/dist/Types/Monitor/DockerSwarmAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/HostAlertTemplates.js +250 -122
- package/build/dist/Types/Monitor/HostAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/IotAlertTemplates.js +81 -81
- package/build/dist/Types/Monitor/IotAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/KubernetesAlertTemplates.js +375 -215
- package/build/dist/Types/Monitor/KubernetesAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/KubernetesMetricCatalog.js +19 -19
- package/build/dist/Types/Monitor/KubernetesMetricCatalog.js.map +1 -1
- package/build/dist/Types/Monitor/PodmanAlertTemplates.js +104 -153
- package/build/dist/Types/Monitor/PodmanAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js +156 -91
- package/build/dist/Types/Monitor/ProxmoxAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js +67 -6
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationSeverityMapper.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js +38 -7
- package/build/dist/Types/Monitor/Recommendation/MonitorRecommendationUtil.js.map +1 -1
- package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js +261 -0
- package/build/dist/Types/Monitor/Recommendation/RecommendationCriteriaBuilder.js.map +1 -0
- package/build/dist/Types/Monitor/RumAlertTemplates.js +46 -7
- package/build/dist/Types/Monitor/RumAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js +422 -0
- package/build/dist/Types/Monitor/SeriesContext/SeriesDebugHints.js.map +1 -0
- package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js +441 -0
- package/build/dist/Types/Monitor/SeriesContext/SeriesLabelDisplay.js.map +1 -0
- package/build/dist/Types/Monitor/ServiceAlertTemplates.js +79 -15
- package/build/dist/Types/Monitor/ServiceAlertTemplates.js.map +1 -1
- package/build/dist/Types/Monitor/UptimeHistoryLabels.js +17 -0
- package/build/dist/Types/Monitor/UptimeHistoryLabels.js.map +1 -0
- package/build/dist/Types/NotificationSetting/RoutineEmailEvents.js +29 -0
- package/build/dist/Types/NotificationSetting/RoutineEmailEvents.js.map +1 -0
- package/build/dist/Types/Rum/SessionReplay.js +117 -0
- package/build/dist/Types/Rum/SessionReplay.js.map +1 -1
- package/build/dist/Types/Rum/SessionReplayApi.js +181 -0
- package/build/dist/Types/Rum/SessionReplayApi.js.map +1 -0
- package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js +21 -12
- package/build/dist/Types/Rum/SessionReplayCaptureTrigger.js.map +1 -1
- package/build/dist/Types/Rum/SessionReplayConsentMode.js +11 -7
- package/build/dist/Types/Rum/SessionReplayConsentMode.js.map +1 -1
- package/build/dist/Types/Rum/SessionReplayCustomEvents.js +172 -0
- package/build/dist/Types/Rum/SessionReplayCustomEvents.js.map +1 -0
- package/build/dist/Types/Rum/SessionReplayHealth.js +37 -0
- package/build/dist/Types/Rum/SessionReplayHealth.js.map +1 -0
- package/build/dist/Types/Telemetry/TelemetryIngestSurface.js +85 -0
- package/build/dist/Types/Telemetry/TelemetryIngestSurface.js.map +1 -0
- package/build/dist/Types/Telemetry/TelemetryIngestionKeyPolicy.js +15 -0
- package/build/dist/Types/Telemetry/TelemetryIngestionKeyPolicy.js.map +1 -0
- package/build/dist/Types/Telemetry/TelemetryIngestionKeyType.js +30 -0
- package/build/dist/Types/Telemetry/TelemetryIngestionKeyType.js.map +1 -0
- package/build/dist/Types/WebsiteRequest.js +55 -3
- package/build/dist/Types/WebsiteRequest.js.map +1 -1
- package/build/dist/UI/Components/Charts/Area/AreaChart.js +13 -2
- package/build/dist/UI/Components/Charts/Area/AreaChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/Bar/BarChart.js +6 -2
- package/build/dist/UI/Components/Charts/Bar/BarChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/Line/LineChart.js +13 -2
- package/build/dist/UI/Components/Charts/Line/LineChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/Types/XAxis/XAxis.js.map +1 -1
- package/build/dist/UI/Components/Charts/Utils/DataPoint.js +15 -3
- package/build/dist/UI/Components/Charts/Utils/DataPoint.js.map +1 -1
- package/build/dist/UI/Components/Charts/Utils/TimeAnnotation.js +40 -9
- package/build/dist/UI/Components/Charts/Utils/TimeAnnotation.js.map +1 -1
- package/build/dist/UI/Components/Charts/Utils/XAxis.js +186 -0
- package/build/dist/UI/Components/Charts/Utils/XAxis.js.map +1 -1
- package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js +80 -6
- package/build/dist/UI/Components/CustomFields/CustomFieldsDetail.js.map +1 -1
- package/build/dist/UI/Components/CustomFields/MapFromCustomFieldInput.js +118 -0
- package/build/dist/UI/Components/CustomFields/MapFromCustomFieldInput.js.map +1 -0
- package/build/dist/UI/Components/Graphs/DayUptimeGraph.js +112 -7
- package/build/dist/UI/Components/Graphs/DayUptimeGraph.js.map +1 -1
- package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js +5 -162
- package/build/dist/UI/Components/Graphs/UptimeBarTooltip.js.map +1 -1
- package/build/dist/UI/Components/Graphs/UptimeDaySummary.js +181 -0
- package/build/dist/UI/Components/Graphs/UptimeDaySummary.js.map +1 -0
- package/build/dist/UI/Components/Header/Header.js +2 -3
- package/build/dist/UI/Components/Header/Header.js.map +1 -1
- package/build/dist/UI/Components/Header/IconDropdown/IconDropdownItem.js +2 -1
- package/build/dist/UI/Components/Header/IconDropdown/IconDropdownItem.js.map +1 -1
- package/build/dist/UI/Components/Header/IconDropdown/IconDropdownMenu.js +7 -1
- package/build/dist/UI/Components/Header/IconDropdown/IconDropdownMenu.js.map +1 -1
- package/build/dist/UI/Components/Header/ProjectPicker/ProjectPicker.js +7 -1
- package/build/dist/UI/Components/Header/ProjectPicker/ProjectPicker.js.map +1 -1
- package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js +7 -1
- package/build/dist/UI/Components/HeaderAlert/NotificationBell/NotificationBellDropdown.js.map +1 -1
- package/build/dist/UI/Components/Icon/Icon.js +5 -0
- package/build/dist/UI/Components/Icon/Icon.js.map +1 -1
- package/build/dist/UI/Components/JSONTable/JSONTable.js +2 -2
- package/build/dist/UI/Components/JSONTable/JSONTable.js.map +1 -1
- package/build/dist/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.js +35 -0
- package/build/dist/UI/Components/KeyboardShortcut/KeyboardShortcutsModal.js.map +1 -0
- package/build/dist/UI/Components/Monitor/SeriesDebugCommandsViewer.js +34 -0
- package/build/dist/UI/Components/Monitor/SeriesDebugCommandsViewer.js.map +1 -0
- package/build/dist/UI/Components/Monitor/SeriesLabelsViewer.js +49 -0
- package/build/dist/UI/Components/Monitor/SeriesLabelsViewer.js.map +1 -0
- package/build/dist/UI/Components/MonitorGraphs/Uptime.js +1 -1
- package/build/dist/UI/Components/MonitorGraphs/Uptime.js.map +1 -1
- package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js +32 -6
- package/build/dist/UI/Components/MonitorGraphs/UptimeBarDayModal.js.map +1 -1
- package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js +38 -0
- package/build/dist/UI/Components/MonitorTemplateVariables/TemplateVariablesCatalog.js.map +1 -1
- package/build/dist/UI/Components/StatusPage/ResourceGroupSection.js +22 -1
- package/build/dist/UI/Components/StatusPage/ResourceGroupSection.js.map +1 -1
- package/build/dist/UI/Components/Table/CellClassName.js +55 -0
- package/build/dist/UI/Components/Table/CellClassName.js.map +1 -0
- package/build/dist/UI/Components/Table/TableRow.js +16 -13
- package/build/dist/UI/Components/Table/TableRow.js.map +1 -1
- package/build/dist/UI/Components/Table/TableSkeletonRows.js +9 -8
- package/build/dist/UI/Components/Table/TableSkeletonRows.js.map +1 -1
- package/build/dist/UI/Components/Tooltip/Tooltip.js +25 -1
- package/build/dist/UI/Components/Tooltip/Tooltip.js.map +1 -1
- package/build/dist/UI/Components/Workflow/ComponentsModal.js +47 -30
- package/build/dist/UI/Components/Workflow/ComponentsModal.js.map +1 -1
- package/build/dist/UI/Components/Workflow/NodePlacement.js +37 -0
- package/build/dist/UI/Components/Workflow/NodePlacement.js.map +1 -0
- package/build/dist/UI/Components/Workflow/Workflow.js +35 -18
- package/build/dist/UI/Components/Workflow/Workflow.js.map +1 -1
- package/build/dist/UI/Config.js +10 -20
- package/build/dist/UI/Config.js.map +1 -1
- package/build/dist/UI/Utils/GlobalKeyboardShortcut.js +138 -0
- package/build/dist/UI/Utils/GlobalKeyboardShortcut.js.map +1 -0
- package/build/dist/UI/Utils/Telemetry/BrowserTelemetryConfig.js +14 -0
- package/build/dist/UI/Utils/Telemetry/BrowserTelemetryConfig.js.map +1 -0
- package/build/dist/UI/Utils/Telemetry/Telemetry.js +7 -5
- package/build/dist/UI/Utils/Telemetry/Telemetry.js.map +1 -1
- package/build/dist/Utils/API.js +67 -5
- package/build/dist/Utils/API.js.map +1 -1
- package/build/dist/Utils/HTTPResponseBodyReader.js +157 -0
- package/build/dist/Utils/HTTPResponseBodyReader.js.map +1 -0
- package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js +69 -0
- package/build/dist/Utils/NetworkDiscovery/DiscoveryScanStatus.js.map +1 -0
- package/build/dist/Utils/Rum/ChunkMath.js +76 -0
- package/build/dist/Utils/Rum/ChunkMath.js.map +1 -1
- package/build/dist/Utils/Rum/SessionReplayHealth.js +534 -0
- package/build/dist/Utils/Rum/SessionReplayHealth.js.map +1 -0
- package/build/dist/Utils/Rum/SessionReplayStringMap.js +165 -0
- package/build/dist/Utils/Rum/SessionReplayStringMap.js.map +1 -0
- package/build/dist/Utils/Schema/ModelSchema.js +1 -0
- package/build/dist/Utils/Schema/ModelSchema.js.map +1 -1
- package/build/dist/Utils/StatusPage/ResourceSearch.js +200 -0
- package/build/dist/Utils/StatusPage/ResourceSearch.js.map +1 -0
- package/build/dist/Utils/Telemetry/OriginAllowList.js +299 -0
- package/build/dist/Utils/Telemetry/OriginAllowList.js.map +1 -0
- package/build/dist/Utils/Uptime/DayUptimeGraphUtil.js +147 -0
- package/build/dist/Utils/Uptime/DayUptimeGraphUtil.js.map +1 -0
- package/build/dist/Utils/ValueFormatter.js +32 -1
- package/build/dist/Utils/ValueFormatter.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TelemetryFanInWriter.js","sourceRoot":"","sources":["../../../../../Server/Utils/Telemetry/TelemetryFanInWriter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"TelemetryFanInWriter.js","sourceRoot":"","sources":["../../../../../Server/Utils/Telemetry/TelemetryFanInWriter.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,KAAK,MAAM,sBAAsB,CAAC;AACzC,OAAO,IAAI,MAAM,qBAAqB,CAAC;AAEvC,OAAO,gBAAgB,EAAE,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,eAAe,EAA2B,MAAM,oBAAoB,CAAC;AAqI9E;;;;;;GAMG;AACH,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAC7C,YAAmB,OAAe;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAED,MAAM,OAAO,gBAAiB,SAAQ,KAAK;IAQzC,YAAmB,IAIlB;QACC,MAAM,YAAY,GAChB,IAAI,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxE,KAAK,CACH,sBAAsB,IAAI,CAAC,SAAS,iBAAiB,IAAI,CAAC,QAAQ,gBAAgB,YAAY,EAAE,CACjG,CAAC;QACF,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;QAC/B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC;QAC7B,IAAI,IAAI,CAAC,KAAK,YAAY,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;YACpD,IAAI,CAAC,KAAK,GAAG,GAAG,IAAI,CAAC,KAAK,gBAAgB,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QAC/D,CAAC;IACH,CAAC;CACF;AA8BD;;;;;;;;;GASG;AACH,MAAM,0BAA0B,GAAgB,IAAI,GAAG,CAAC;IACtD,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;IACL,KAAK;CACN,CAAC,CAAC;AAEH,MAAM,wBAAwB,GAAW,OAAO,CAAC;AAEjD,MAAM,sBAAsB,GAAgB,IAAI,GAAG,CAAC;IAClD,YAAY;IACZ,cAAc;IACd,cAAc;IACd,WAAW;IACX,OAAO;IACP,WAAW;CACZ,CAAC,CAAC;AAEH,MAAM,UAAU,sBAAsB,CAAC,GAAY;IACjD,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;QACnC,OAAO,0BAA0B,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IAED,IAAI,GAAG,YAAY,oBAAoB,EAAE,CAAC;QACxC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,GAAG,YAAY,KAAK,EAAE,CAAC;QACzB,iEAAiE;QACjE,IAAI,GAAG,CAAC,IAAI,KAAK,sBAAsB,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,IAAI,GAAa,GAA6B,CAAC,MAAM,CAAC,CAAC;QAC7D,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC7B,IAAI,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,OAAO,IAAI,CAAC;YACd,CAAC;YACD,wEAAwE;YACxE,IAAI,wBAAwB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxC,OAAO,0BAA0B,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;QACD;;;;;WAKG;QACH,IACE,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC;YACrC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EACtC,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC;AAID,MAAM,eAAe,GAAiB,CACpC,MAAc,EACd,YAAoB,EACZ,EAAE;IACV,MAAM,GAAG,GAAuB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,MAAM,MAAM,GAAW,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACzC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC;AAC9D,CAAC,CAAC;AAEF,MAAM,UAAU,6BAA6B;IAC3C,OAAO;QACL,YAAY,EAAE,eAAe,CAAC,gCAAgC,EAAE,MAAO,CAAC;QACxE;;;;;WAKG;QACH,mBAAmB,EAAE;YACnB,iBAAiB,EAAE,eAAe,CAChC,+CAA+C,EAC/C,IAAI,CACL;SACF;QACD,SAAS,EAAE,eAAe,CAAC,6BAA6B,EAAE,IAAI,CAAC;QAC/D,oBAAoB,EAAE,eAAe,CACnC,wCAAwC,EACxC,CAAC,CACF;QACD;;;;;WAKG;QACH,cAAc,EAAE,eAAe,CAC7B,kCAAkC,EAClC,MAAO,CACR;QACD,gBAAgB,EAAE,eAAe,CAAC,oCAAoC,EAAE,CAAC,CAAC;QAC1E,gBAAgB,EAAE,eAAe,CAC/B,qCAAqC,EACrC,GAAG,CACJ;QACD,eAAe,EAAE,eAAe,CAC9B,oCAAoC,EACpC,KAAM,CACP;KACF,CAAC;AACJ,CAAC;AAED,MAAM,OAAO,oBAAoB;IAkB/B,YAAmB,OAA2B;QAhBtC,YAAO,GAA6B,IAAI,GAAG,EAAE,CAAC;QAC9C,gBAAW,GAAW,CAAC,CAAC;QACxB,oBAAe,GAAwB,IAAI,GAAG,EAAE,CAAC;QACjD,kBAAa,GAAW,CAAC,CAAC;QAC1B,sBAAiB,GAAsB,EAAE,CAAC;QAC1C,uBAAkB,GAAuB,IAAI,GAAG,EAAE,CAAC;QAC3D;;;;;WAKG;QACK,qBAAgB,GAAW,CAAC,CAAC;QAC7B,8BAAyB,GAAY,KAAK,CAAC;QAC3C,oBAAe,GAAgC,IAAI,CAAC;QAG1D,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;;;;OAKG;IACI,kBAAkB,CAAC,SAAsC;QAC9D,IAAI,CAAC,eAAe,GAAG,SAAS,CAAC;IACnC,CAAC;IAEM,kBAAkB;QACvB,OAAO,IAAI,CAAC,eAAe,KAAK,IAAI,CAAC;IACvC,CAAC;IAED,kFAAkF;IAC3E,SAAS,CAAC,OAAoC;QACnD,IAAI,CAAC,OAAO,mCAAQ,IAAI,CAAC,OAAO,GAAK,OAAO,CAAE,CAAC;IACjD,CAAC;IAEM,QAAQ;QAKb,IAAI,YAAY,GAAW,CAAC,CAAC;QAC7B,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;YAC3C,YAAY,IAAI,MAAM,CAAC,QAAQ,CAAC;QAClC,CAAC;QACD,OAAO;YACL,YAAY;YACZ,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,aAAa,EAAE,IAAI,CAAC,aAAa;SAClC,CAAC;IACJ,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,KAAK,CAAC,MAAM,CACjB,MAAyB,EACzB,IAAuB,EACvB,OASC;;QAED,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC/B,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAEnC,MAAM,SAAS,GAAW,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;QAEjD;;;;;;WAMG;QACH,MAAM,UAAU,GACd,MAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,mCAAI,oBAAoB,CAAC,SAAS,CAAC,CAAC;QAEzD,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAExC,IAAI,MAAM,GAA4B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YAClE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,MAAM,GAAG;oBACP,MAAM;oBACN,WAAW,EAAE,EAAE;oBACf,QAAQ,EAAE,CAAC;oBACX,KAAK,EAAE,IAAI;iBACZ,CAAC;gBACF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACtC,CAAC;YAED,IAAI,UAAU,GAAe,GAAG,EAAE,GAAE,CAAC,CAAC;YACtC,IAAI,SAAS,GAAyB,GAAG,EAAE,GAAE,CAAC,CAAC;YAC/C,MAAM,OAAO,GAAkB,IAAI,OAAO,CACxC,CAAC,OAAmB,EAAE,MAA4B,EAAE,EAAE;gBACpD,UAAU,GAAG,OAAO,CAAC;gBACrB,SAAS,GAAG,MAAM,CAAC;YACrB,CAAC,CACF,CAAC;YAEF,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC;gBACtB,IAAI;gBACJ,kBAAkB,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,kBAAkB;gBAC/C,UAAU;gBACV,UAAU;gBACV,SAAS;aACV,CAAC,CAAC;YACH,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC;YAE/B,IAAI,MAAM,CAAC,QAAQ,IAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvD,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACxC,CAAC;iBAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBACzB,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;oBAC7B,MAAM,WAAW,GACf,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;oBAC9B,IAAI,WAAW,EAAE,CAAC;wBAChB,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC;oBAC3B,CAAC;oBACD,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACvC,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBAC3B;;;mBAGG;gBACH,MAAA,MAAA,MAAM,CAAC,KAAK,EAAC,KAAK,kDAAI,CAAC;YACzB,CAAC;YAED,OAAO,EAAE,OAAO,EAAE,CAAC;QACrB,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,oFAAoF;IAC7E,KAAK,CAAC,QAAQ;QACnB;;;;;;;;;;;;;WAaG;QACH,SAAS,CAAC;YACR,KAAK,MAAM,SAAS,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBACxD,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YACvC,CAAC;YAED,IAAI,IAAI,CAAC,kBAAkB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;gBACrC,MAAM,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;gBACvD,SAAS;YACX,CAAC;YAED,IAAI,IAAI,CAAC,gBAAgB,KAAK,CAAC,EAAE,CAAC;gBAChC,OAAO;YACT,CAAC;YAED,MAAM,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1B,CAAC;IACH,CAAC;IAEO,2BAA2B;QACjC,IAAI,IAAI,CAAC,yBAAyB,EAAE,CAAC;YACnC,OAAO;QACT,CAAC;QACD,IAAI,CAAC,yBAAyB,GAAG,IAAI,CAAC;QACtC,gBAAgB,CAAC,eAAe,CAC9B,sBAAsB,EACtB,gBAAgB,CAAC,OAAO,EACxB,KAAK,IAAI,EAAE;YACT,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;QACxB,CAAC,CACF,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,QAAgB;QAC5C;;;;;;WAMG;QACH,IAAI,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;YACnD,IAAI,CAAC,WAAW,IAAI,QAAQ,CAAC;YAC7B,OAAO;QACT,CAAC;QAED,MAAM,IAAI,OAAO,CAAO,CAAC,OAAmB,EAAE,EAAE;YAC9C,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,eAAe;QACrB;;;;;;WAMG;QACH,KAAK,MAAM,MAAM,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1C,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC;gBACpD,MAAM;YACR,CAAC;YACD,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,QAAQ,CAAC;YACpC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpC,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,OAAO,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,OAAO,CAAC,oBAAoB,EAAE,CAAC;YAC/D,MAAM,IAAI,OAAO,CAAO,CAAC,OAAmB,EAAE,EAAE;gBAC9C,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACvC,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAEO,iBAAiB;QACvB,IAAI,CAAC,aAAa,EAAE,CAAC;QACrB,MAAM,IAAI,GAA6B,IAAI,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC;QACtE,IAAI,IAAI,EAAE,CAAC;YACT,IAAI,EAAE,CAAC;QACT,CAAC;IACH,CAAC;IAED;;;;;;;;OAQG;IACH;;;;OAIG;IACK,eAAe,CAAC,SAAiB;;QACvC,MAAM,QAAQ,GACZ,MAAA,IAAI,CAAC,OAAO,CAAC,mBAAmB,0CAAG,SAAS,CAAC,CAAC;QAEhD,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,GAAG,CAAC,EAAE,CAAC;YACjD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;IACnC,CAAC;IAEO,cAAc,CAAC,SAAiB,EAAE,KAAc;QACtD,MAAM,MAAM,GAA4B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QACpE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,MAAM,YAAY,GAAW,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;QAE7D,OAAO,MAAM,CAAC,QAAQ,IAAI,YAAY,IAAI,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,GAAG,CAAC,CAAC,EAAE,CAAC;YACzE,MAAM,KAAK,GAA6B,EAAE,CAAC;YAC3C,IAAI,SAAS,GAAW,CAAC,CAAC;YAE1B,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrC,MAAM,IAAI,GAAsB,MAAM,CAAC,WAAW,CAAC,CAAC,CAAE,CAAC;gBACvD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,YAAY,EAAE,CAAC;oBACpE,MAAM;gBACR,CAAC;gBACD,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,CAAC;gBAC3B,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjB,SAAS,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC;gBAC9B,IAAI,SAAS,IAAI,YAAY,EAAE,CAAC;oBAC9B,MAAM;gBACR,CAAC;YACH,CAAC;YAED,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,MAAM;YACR,CAAC;YAED,MAAM,CAAC,QAAQ,IAAI,SAAS,CAAC;YAE7B,MAAM,QAAQ,GAAkB,IAAI,CAAC,cAAc,CACjD,MAAM,CAAC,MAAM,EACb,SAAS,EACT,KAAK,EACL,SAAS,CACV,CAAC;YACF,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACtC,QAAQ,CAAC,OAAO,CAAC,GAAG,EAAE;gBACpB,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAC3C,CAAC,CAAC,CAAC;QACL,CAAC;QAED,IAAI,MAAM,CAAC,QAAQ,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC1C,YAAY,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC3B,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC;QACtB,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;;;;;;;;;OAoBG;IACK,KAAK,CAAC,cAAc,CAC1B,MAAyB,EACzB,SAAiB,EACjB,KAA+B,EAC/B,SAAiB;QAEjB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAE/B,IAAI,CAAC;YACH,MAAM,SAAS,GAA6B,EAAE,CAAC;YAE/C,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;gBAC/B,IAAI,UAAU,CAAC,UAAU,EAAE,CAAC;oBAC1B,MAAM,IAAI,CAAC,oBAAoB,CAC7B,MAAM,EACN,SAAS,EACT,CAAC,UAAU,CAAC,EACZ,UAAU,CAAC,UAAU,CACtB,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC7B,CAAC;YACH,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,MAAM,IAAI,CAAC,oBAAoB,CAC7B,MAAM,EACN,SAAS,EACT,SAAS,EACT,SAAS,SAAS,IAAI,IAAI,CAAC,mBAAmB,EAAE,EAAE,CACnD,CAAC;YACJ,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,WAAW,IAAI,SAAS,CAAC;YAC9B,IAAI,CAAC,eAAe,EAAE,CAAC;YACvB,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAED;;;;;;;;;OASG;IACK,KAAK,CAAC,oBAAoB,CAChC,MAAyB,EACzB,SAAiB,EACjB,KAA+B,EAC/B,UAAkB;;QAElB,MAAM,IAAI,GAAsB,EAAE,CAAC;QACnC,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;YAC/B,KAAK,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;gBAClC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACjB,CAAC;QACH,CAAC;QAED,MAAM,kBAAkB,GACtB,MAAA,KAAK,CAAC,CAAC,CAAC,0CAAE,kBAAkB,CAAC;QAC/B,MAAM,KAAK,GACT,MAAA,IAAI,CAAC,OAAO,CAAC,KAAK,mCAClB,CAAC,CAAC,EAAU,EAAiB,EAAE;YAC7B,OAAO,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACzB,CAAC,CAAC,CAAC;QAEL,IAAI,SAAS,GAAY,IAAI,CAAC;QAC9B,IAAI,YAAY,GAAW,CAAC,CAAC;QAE7B,KACE,IAAI,OAAO,GAAW,CAAC,EACvB,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,EACxC,OAAO,EAAE,EACT,CAAC;YACD,YAAY,GAAG,OAAO,CAAC;YACvB,IAAI,CAAC;gBACH,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;oBACzB,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE;wBACvC,UAAU;wBACV,kBAAkB;qBACnB,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,MAAM,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE;wBAChC,UAAU;wBACV,kBAAkB;qBACnB,CAAC,CAAC;gBACL,CAAC;gBAED,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;oBAC/B,UAAU,CAAC,UAAU,EAAE,CAAC;gBAC1B,CAAC;gBACD,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;oBAChB,MAAM,CAAC,IAAI,CACT,qCAAqC,SAAS,KAAK,IAAI,CAAC,MAAM,+BAA+B,OAAO,GAAG,CACxG,CAAC;gBACJ,CAAC;gBACD,OAAO;YACT,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,SAAS,GAAG,GAAG,CAAC;gBAEhB,IACE,CAAC,sBAAsB,CAAC,GAAG,CAAC;oBAC5B,OAAO,KAAK,IAAI,CAAC,OAAO,CAAC,gBAAgB,EACzC,CAAC;oBACD,MAAM;gBACR,CAAC;gBAED,MAAM,QAAQ,GAAW,IAAI,CAAC,GAAG,CAC/B,IAAI,CAAC,OAAO,CAAC,eAAe,EAC5B,IAAI,CAAC,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,CACzD,CAAC;gBACF,MAAM,aAAa,GAAW,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,QAAQ,CAAC,CAAC;gBAClE,MAAM,CAAC,IAAI,CACT,qDAAqD,SAAS,KAAK,IAAI,CAAC,MAAM,kBAAkB,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,4CAA4C,aAAa,OAAO,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC3P,CAAC;gBACF,MAAM,KAAK,CAAC,aAAa,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC;QAED,MAAM,UAAU,GAAqB,IAAI,gBAAgB,CAAC;YACxD,SAAS;YACT,QAAQ,EAAE,YAAY;YACtB,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC;QACH,MAAM,CAAC,KAAK,CACV,kDAAkD,SAAS,KAAK,IAAI,CAAC,MAAM,mBAAmB,KAAK,CAAC,MAAM,iBAAiB,CAC5H,CAAC;QACF,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QACzB,KAAK,MAAM,UAAU,IAAI,KAAK,EAAE,CAAC;YAC/B,UAAU,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC;QACnC,CAAC;IACH,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,eAAe,CAC7B,WAAiC,EACjC,OAAsB,EACtB,SAAgC;IAEhC,MAAM,GAAG,GAAkB,OAAO,CAAC,KAAK,CAAC,CAAC,KAAY,EAAE,EAAE;QACxD,MAAM,SAAS,CAAC,KAAK,CAAC,CAAC;IACzB,CAAC,CAAC,CAAC;IACH,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE;QACb,6DAA6D;IAC/D,CAAC,CAAC,CAAC;IACH,WAAW,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED,MAAM,aAAa,GAAyB,IAAI,oBAAoB,CAClE,6BAA6B,EAAE,CAChC,CAAC;AAEF,eAAe,aAAa,CAAC"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
import TelemetryIngestionKeyType from "../../../Types/Telemetry/TelemetryIngestionKeyType";
|
|
2
|
+
import { BROWSER_ALLOWED_INGEST_SURFACES, getIngestSurfaceReadableName, } from "../../../Types/Telemetry/TelemetryIngestSurface";
|
|
3
|
+
/*
|
|
4
|
+
* The three key-state checks that every ingest entry point has to make, in
|
|
5
|
+
* one place.
|
|
6
|
+
*
|
|
7
|
+
* TelemetryIngest (the Express middleware) runs these inline as part of a
|
|
8
|
+
* longer chain that also covers the Origin allowlist and the per-key rate
|
|
9
|
+
* limit, neither of which means anything off HTTP. Everything else that
|
|
10
|
+
* accepts a TelemetryIngestionKey - the gRPC OTLP server, the MQTT broker,
|
|
11
|
+
* and the two key-validation probes - is NOT an Express route and cannot use
|
|
12
|
+
* that middleware, yet must answer these same three questions or a disabled
|
|
13
|
+
* key keeps working on the pipe nobody remembered to update.
|
|
14
|
+
*
|
|
15
|
+
* The refusal SENTENCES are deliberately identical to the middleware's, so a
|
|
16
|
+
* customer who moves the same key between HTTP, gRPC and MQTT reads the same
|
|
17
|
+
* explanation each time rather than three differently-worded versions of one
|
|
18
|
+
* problem. If you change wording here, change it there too.
|
|
19
|
+
*
|
|
20
|
+
* What this deliberately does NOT do is decide the transport-level response.
|
|
21
|
+
* A refusal is a status code on HTTP, a CONNACK return code on MQTT, and a
|
|
22
|
+
* silent success on gRPC (see GrpcServer for why); each caller owns that
|
|
23
|
+
* translation because each transport's retry semantics are its own.
|
|
24
|
+
*/
|
|
25
|
+
export var TelemetryIngestionKeyRefusalReason;
|
|
26
|
+
(function (TelemetryIngestionKeyRefusalReason) {
|
|
27
|
+
TelemetryIngestionKeyRefusalReason["Disabled"] = "disabled";
|
|
28
|
+
TelemetryIngestionKeyRefusalReason["Expired"] = "expired";
|
|
29
|
+
TelemetryIngestionKeyRefusalReason["SurfaceNotAllowedForBrowserKey"] = "surface-not-allowed-for-browser-key";
|
|
30
|
+
})(TelemetryIngestionKeyRefusalReason || (TelemetryIngestionKeyRefusalReason = {}));
|
|
31
|
+
export default class TelemetryIngestionKeyGuard {
|
|
32
|
+
/**
|
|
33
|
+
* Why this key may not write to this surface, or null when it may.
|
|
34
|
+
*
|
|
35
|
+
* Order matters and mirrors the middleware: the kill switch is checked
|
|
36
|
+
* first so that switching a leaked key off is the one action guaranteed to
|
|
37
|
+
* stop it whatever else is true of the key, then expiry, then the
|
|
38
|
+
* browser-key surface rule.
|
|
39
|
+
*/
|
|
40
|
+
static getRefusal(data) {
|
|
41
|
+
const policy = data.policy;
|
|
42
|
+
if (policy.isEnabled === false) {
|
|
43
|
+
return {
|
|
44
|
+
reason: TelemetryIngestionKeyRefusalReason.Disabled,
|
|
45
|
+
message: "This telemetry ingestion key has been disabled.",
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
if (policy.expiresAt && policy.expiresAt.getTime() <= Date.now()) {
|
|
49
|
+
return {
|
|
50
|
+
reason: TelemetryIngestionKeyRefusalReason.Expired,
|
|
51
|
+
message: "This telemetry ingestion key expired.",
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
if (policy.keyType === TelemetryIngestionKeyType.Browser &&
|
|
55
|
+
!BROWSER_ALLOWED_INGEST_SURFACES.has(data.surface)) {
|
|
56
|
+
return {
|
|
57
|
+
reason: TelemetryIngestionKeyRefusalReason.SurfaceNotAllowedForBrowserKey,
|
|
58
|
+
message: `A browser ingestion key cannot be used for ${getIngestSurfaceReadableName(data.surface)}. Use a server ingestion key.`,
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
return null;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=TelemetryIngestionKeyGuard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TelemetryIngestionKeyGuard.js","sourceRoot":"","sources":["../../../../../Server/Utils/Telemetry/TelemetryIngestionKeyGuard.ts"],"names":[],"mappings":"AACA,OAAO,yBAAyB,MAAM,oDAAoD,CAAC;AAC3F,OAA+B,EAC7B,+BAA+B,EAC/B,4BAA4B,GAC7B,MAAM,iDAAiD,CAAC;AAEzD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAN,IAAY,kCAIX;AAJD,WAAY,kCAAkC;IAC5C,2DAAqB,CAAA;IACrB,yDAAmB,CAAA;IACnB,4GAAsE,CAAA;AACxE,CAAC,EAJW,kCAAkC,KAAlC,kCAAkC,QAI7C;AAcD,MAAM,CAAC,OAAO,OAAO,0BAA0B;IAC7C;;;;;;;OAOG;IACI,MAAM,CAAC,UAAU,CAAC,IAGxB;QACC,MAAM,MAAM,GAAgC,IAAI,CAAC,MAAM,CAAC;QAExD,IAAI,MAAM,CAAC,SAAS,KAAK,KAAK,EAAE,CAAC;YAC/B,OAAO;gBACL,MAAM,EAAE,kCAAkC,CAAC,QAAQ;gBACnD,OAAO,EAAE,iDAAiD;aAC3D,CAAC;QACJ,CAAC;QAED,IAAI,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YACjE,OAAO;gBACL,MAAM,EAAE,kCAAkC,CAAC,OAAO;gBAClD,OAAO,EAAE,uCAAuC;aACjD,CAAC;QACJ,CAAC;QAED,IACE,MAAM,CAAC,OAAO,KAAK,yBAAyB,CAAC,OAAO;YACpD,CAAC,+BAA+B,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,EAClD,CAAC;YACD,OAAO;gBACL,MAAM,EACJ,kCAAkC,CAAC,8BAA8B;gBACnE,OAAO,EAAE,8CAA8C,4BAA4B,CACjF,IAAI,CAAC,OAAO,CACb,+BAA+B;aACjC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF"}
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
import Redis from "../../Infrastructure/Redis";
|
|
2
|
+
import logger from "../Logger";
|
|
3
|
+
/*
|
|
4
|
+
* Per-ingestion-key request rate limiting.
|
|
5
|
+
*
|
|
6
|
+
* This exists because a Browser ingestion key is, by design, published in a
|
|
7
|
+
* page: anyone who views source has it. Rotation and the origin allowlist
|
|
8
|
+
* bound WHO can use a scraped key, but neither bounds HOW MUCH a caller who
|
|
9
|
+
* satisfies them can push. Without a per-key ceiling, one scraped key plus a
|
|
10
|
+
* loop is unbounded write volume into a customer's project - poisoned
|
|
11
|
+
* dashboards, forged spans and, on a metered plan, a bill. The ceiling is
|
|
12
|
+
* per key rather than per project so that turning the abuse off (rotate or
|
|
13
|
+
* disable that one key) never takes a customer's server ingest down with it.
|
|
14
|
+
*
|
|
15
|
+
* Built on raw Redis INCR + EXPIRE, mirroring
|
|
16
|
+
* App/FeatureSet/Telemetry/Utils/SessionReplayRateLimiter.ts. The same
|
|
17
|
+
* reasoning applies: a per-process in-memory counter is useless across
|
|
18
|
+
* autoscaled ingest pods, and GlobalCache has no counter primitive at all
|
|
19
|
+
* (only get/set, so a read-modify-write there would lose increments under
|
|
20
|
+
* exactly the concurrency this is meant to bound).
|
|
21
|
+
*
|
|
22
|
+
* ---------------------------------------------------------------------
|
|
23
|
+
* THIS LIMITER FAILS OPEN, AND THAT IS DIFFERENT FROM SESSION REPLAY.
|
|
24
|
+
* ---------------------------------------------------------------------
|
|
25
|
+
* When Redis is unreachable this returns CounterUnavailable, and the CALLER
|
|
26
|
+
* is expected to ADMIT the request anyway. The limit here bounds ABUSE of a
|
|
27
|
+
* key that leaked; it is not a privacy control and it is not a hard billing
|
|
28
|
+
* quota. Weigh the two failure modes during a Redis blip:
|
|
29
|
+
*
|
|
30
|
+
* - fail closed: every paying customer's production telemetry stops for
|
|
31
|
+
* the duration of the outage, and the gap is permanent because dropped
|
|
32
|
+
* spans are not replayed. An infrastructure hiccup becomes a
|
|
33
|
+
* customer-visible data loss incident, and the operator's incident
|
|
34
|
+
* dashboards go dark at the exact moment they are needed.
|
|
35
|
+
*
|
|
36
|
+
* - fail open: for the length of the blip an attacker who already holds a
|
|
37
|
+
* scraped key gets an unbounded window. They already had that window up
|
|
38
|
+
* until this feature shipped, the origin allowlist and enable/disable
|
|
39
|
+
* switch still apply (they are resolved from Postgres, not Redis), and
|
|
40
|
+
* Redis being down is itself alarmed on.
|
|
41
|
+
*
|
|
42
|
+
* The second is plainly the better trade for telemetry. SessionReplayRate-
|
|
43
|
+
* Limiter fails CLOSED because a recording is a video of a real person and a
|
|
44
|
+
* budget that cannot be counted cannot be honoured - accepting an unbounded
|
|
45
|
+
* volume of that is not a recoverable mistake. Same machinery, opposite
|
|
46
|
+
* answer, because the thing being protected is different.
|
|
47
|
+
*/
|
|
48
|
+
const RATE_KEY_PREFIX = "telemetry:ingestkey:rate:";
|
|
49
|
+
/*
|
|
50
|
+
* Two minutes, so the counter for a minute bucket outlives the bucket it
|
|
51
|
+
* belongs to. A request landing right on a boundary cannot then read a key
|
|
52
|
+
* that was already reclaimed mid-window and be handed a fresh allowance.
|
|
53
|
+
*/
|
|
54
|
+
const RATE_TTL_SECONDS = 120;
|
|
55
|
+
const WINDOW_MS = 60000;
|
|
56
|
+
/*
|
|
57
|
+
* A Redis outage puts EVERY request on the unavailable path, so an unguarded
|
|
58
|
+
* log line there is one line per ingested request for as long as the outage
|
|
59
|
+
* lasts - the ingest path is the highest-volume surface in the product, so
|
|
60
|
+
* that buries the very incident it is reporting. One line per interval is
|
|
61
|
+
* enough to make the condition visible. Same idea as the throttle in
|
|
62
|
+
* Common/Server/Middleware/PublicDashboardRateLimit.ts.
|
|
63
|
+
*/
|
|
64
|
+
const COUNTER_UNAVAILABLE_LOG_INTERVAL_MS = 60 * 1000;
|
|
65
|
+
export var TelemetryIngestionKeyLimitOutcome;
|
|
66
|
+
(function (TelemetryIngestionKeyLimitOutcome) {
|
|
67
|
+
/* Within this key's per-minute allowance. */
|
|
68
|
+
TelemetryIngestionKeyLimitOutcome["Allowed"] = "allowed";
|
|
69
|
+
/* Over the allowance. Retryable when the fixed window rolls. */
|
|
70
|
+
TelemetryIngestionKeyLimitOutcome["RateLimited"] = "rate-limited";
|
|
71
|
+
/*
|
|
72
|
+
* Redis is unreachable, so no limit can be honoured either way. The caller
|
|
73
|
+
* admits the request - see the fail-open rationale at the top of the file.
|
|
74
|
+
*/
|
|
75
|
+
TelemetryIngestionKeyLimitOutcome["CounterUnavailable"] = "counter-unavailable";
|
|
76
|
+
})(TelemetryIngestionKeyLimitOutcome || (TelemetryIngestionKeyLimitOutcome = {}));
|
|
77
|
+
class TelemetryIngestionKeyRateLimiter {
|
|
78
|
+
/*
|
|
79
|
+
* Consume one request from this key's per-minute allowance.
|
|
80
|
+
*
|
|
81
|
+
* Fixed window keyed on the minute bucket, deliberately not a sliding
|
|
82
|
+
* window: the sliding version needs a sorted set per key and a read of it
|
|
83
|
+
* per request, and this runs in front of every OTLP payload the product
|
|
84
|
+
* accepts. A fixed window admits at most 2x the limit across an unlucky
|
|
85
|
+
* boundary pair, which is an entirely acceptable overshoot for an
|
|
86
|
+
* abuse ceiling and costs one INCR.
|
|
87
|
+
*
|
|
88
|
+
* The counter is incremented on rejected requests too. That is standard
|
|
89
|
+
* fixed-window behaviour and it is the point: a client hammering a scraped
|
|
90
|
+
* key keeps its own window pinned rather than being handed a fresh
|
|
91
|
+
* allowance for free by virtue of having been refused.
|
|
92
|
+
*/
|
|
93
|
+
static async consume(data) {
|
|
94
|
+
/*
|
|
95
|
+
* A non-positive or non-finite limit means "no limit" rather than "block
|
|
96
|
+
* everything", and short-circuits before Redis is touched.
|
|
97
|
+
*
|
|
98
|
+
* The column behind this is nullable and the caller resolves NULL to the
|
|
99
|
+
* shipped browser default (or to unlimited for a Server key), so a zero
|
|
100
|
+
* or garbage value reaching here is a bug or a bad row, not a customer
|
|
101
|
+
* asking for a total block. Reading it as a block would silently black
|
|
102
|
+
* out that key's ingest, and this file's whole posture (above) is that a
|
|
103
|
+
* malfunction in the limiter must not stop real telemetry.
|
|
104
|
+
*/
|
|
105
|
+
if (!Number.isFinite(data.limitPerMinute) || data.limitPerMinute <= 0) {
|
|
106
|
+
return { outcome: TelemetryIngestionKeyLimitOutcome.Allowed };
|
|
107
|
+
}
|
|
108
|
+
const client = Redis.getClient();
|
|
109
|
+
if (!client || !Redis.isConnected()) {
|
|
110
|
+
return { outcome: TelemetryIngestionKeyLimitOutcome.CounterUnavailable };
|
|
111
|
+
}
|
|
112
|
+
const minuteBucket = Math.floor(Date.now() / WINDOW_MS);
|
|
113
|
+
const key = `${RATE_KEY_PREFIX}${data.ingestionKeyId.toString()}:${minuteBucket}`;
|
|
114
|
+
try {
|
|
115
|
+
const total = await client.incr(key);
|
|
116
|
+
/*
|
|
117
|
+
* Set the expiry only on the write that CREATED the key. Re-issuing
|
|
118
|
+
* EXPIRE on every increment would slide the window forward for as long
|
|
119
|
+
* as the load continues, so the counter would never reset and a key
|
|
120
|
+
* that tripped its limit once under sustained traffic could never
|
|
121
|
+
* recover - which is precisely the state an attacker's loop produces.
|
|
122
|
+
*/
|
|
123
|
+
if (total === 1) {
|
|
124
|
+
await client.expire(key, RATE_TTL_SECONDS);
|
|
125
|
+
}
|
|
126
|
+
if (total > data.limitPerMinute) {
|
|
127
|
+
return {
|
|
128
|
+
outcome: TelemetryIngestionKeyLimitOutcome.RateLimited,
|
|
129
|
+
retryAfterSeconds: TelemetryIngestionKeyRateLimiter.getSecondsUntilWindowEnd(),
|
|
130
|
+
/*
|
|
131
|
+
* total is monotonic within the window, so the request that took
|
|
132
|
+
* it to limit + 1 is the unique first rejection.
|
|
133
|
+
*/
|
|
134
|
+
isFirstRejectionInWindow: total === data.limitPerMinute + 1,
|
|
135
|
+
};
|
|
136
|
+
}
|
|
137
|
+
return { outcome: TelemetryIngestionKeyLimitOutcome.Allowed };
|
|
138
|
+
}
|
|
139
|
+
catch (err) {
|
|
140
|
+
if (TelemetryIngestionKeyRateLimiter.shouldLogCounterUnavailable()) {
|
|
141
|
+
logger.warn(`TelemetryIngestionKeyRateLimiter: counter failed for ingestion key ${data.ingestionKeyId.toString()}, admitting request unthrottled`);
|
|
142
|
+
logger.warn(err);
|
|
143
|
+
}
|
|
144
|
+
return { outcome: TelemetryIngestionKeyLimitOutcome.CounterUnavailable };
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
/*
|
|
148
|
+
* Remaining whole seconds in the current fixed window, floored at 1.
|
|
149
|
+
*
|
|
150
|
+
* Every rejected client is told to come back exactly when the window rolls
|
|
151
|
+
* rather than all backing off by the same constant - a constant makes every
|
|
152
|
+
* refused caller retry in lockstep and re-collide, which is a
|
|
153
|
+
* self-inflicted thundering herd on top of the burst being limited.
|
|
154
|
+
*/
|
|
155
|
+
static getSecondsUntilWindowEnd() {
|
|
156
|
+
const msIntoWindow = Date.now() % WINDOW_MS;
|
|
157
|
+
return Math.max(1, Math.ceil((WINDOW_MS - msIntoWindow) / 1000));
|
|
158
|
+
}
|
|
159
|
+
static shouldLogCounterUnavailable() {
|
|
160
|
+
const now = Date.now();
|
|
161
|
+
if (now - TelemetryIngestionKeyRateLimiter.counterUnavailableLastLoggedAt <
|
|
162
|
+
COUNTER_UNAVAILABLE_LOG_INTERVAL_MS) {
|
|
163
|
+
return false;
|
|
164
|
+
}
|
|
165
|
+
TelemetryIngestionKeyRateLimiter.counterUnavailableLastLoggedAt = now;
|
|
166
|
+
return true;
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
TelemetryIngestionKeyRateLimiter.counterUnavailableLastLoggedAt = 0;
|
|
170
|
+
export default TelemetryIngestionKeyRateLimiter;
|
|
171
|
+
//# sourceMappingURL=TelemetryIngestionKeyRateLimiter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TelemetryIngestionKeyRateLimiter.js","sourceRoot":"","sources":["../../../../../Server/Utils/Telemetry/TelemetryIngestionKeyRateLimiter.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VMAPI.js","sourceRoot":"","sources":["../../../../../Server/Utils/VM/VMAPI.ts"],"names":[],"mappings":";;;;;;;;;AAEA,OAAO,MAAM,MAAM,WAAW,CAAC;AAC/B,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,MAAM,CAAC,OAAO,OAAO,MAAM;IAEL,AAAb,MAAM,CAAC,KAAK,CAAC,gBAAgB,CAAC,
|
|
1
|
+
{"version":3,"file":"VMAPI.js","sourceRoot":"","sources":["../../../../../Server/Utils/VM/VMAPI.ts"],"names":[],"mappings":"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"}
|