@oneuptime/common 10.8.1 → 11.0.0
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/AnalyticsBaseModel/AnalyticsBaseModel.ts +16 -18
- package/Models/AnalyticsModels/AuditLog.ts +3 -1
- package/Models/AnalyticsModels/ExceptionInstance.ts +200 -82
- package/Models/AnalyticsModels/Index.ts +7 -2
- package/Models/AnalyticsModels/Log.ts +197 -81
- package/Models/AnalyticsModels/Metric.ts +199 -86
- package/Models/AnalyticsModels/MetricBaselineHourly.ts +44 -25
- package/Models/AnalyticsModels/MetricItemAggMV1m.ts +23 -20
- package/Models/AnalyticsModels/{MetricItemAggMV1mByHost.ts → MetricItemAggMV1mByHostV2.ts} +58 -47
- package/Models/AnalyticsModels/MonitorLog.ts +5 -1
- package/Models/AnalyticsModels/Profile.ts +206 -85
- package/Models/AnalyticsModels/ProfileSample.ts +196 -83
- package/Models/AnalyticsModels/Span.ts +218 -85
- package/Models/DatabaseModels/CloudResourceInstance.ts +1 -2
- package/Models/DatabaseModels/CloudResourceOwnerTeam.ts +1 -2
- package/Models/DatabaseModels/CloudResourceOwnerUser.ts +1 -2
- package/Models/DatabaseModels/Index.ts +4 -0
- package/Models/DatabaseModels/Service.ts +29 -0
- package/Models/DatabaseModels/TelemetryEntity.ts +393 -0
- package/Models/DatabaseModels/TelemetryEntityRelationship.ts +294 -0
- package/Models/DatabaseModels/TelemetryException.ts +13 -12
- package/Models/DatabaseModels/TelemetryUsageBilling.ts +5 -5
- package/Server/API/AIAgentDataAPI.ts +13 -12
- package/Server/API/DashboardAPI.ts +2 -2
- package/Server/API/TelemetryAPI.ts +656 -141
- package/Server/API/TelemetryExceptionAPI.ts +2 -2
- package/Server/Infrastructure/ClickhouseConfig.ts +12 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1780931863719-AddTelemetryResourceMetadataColumns.ts +1 -3
- package/Server/Infrastructure/Postgres/SchemaMigrations/1780933132562-AddServerlessFunctionTables.ts +6 -2
- package/Server/Infrastructure/Postgres/SchemaMigrations/1780935387827-AddCloudResourceTables.ts +18 -6
- package/Server/Infrastructure/Postgres/SchemaMigrations/1781011482945-MigrationName.ts +2317 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1781100000001-RenameTelemetryServiceIdToPrimaryEntityId.ts +48 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1781200000000-AddTelemetryEntityTable.ts +70 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1781200000001-AddTelemetryEntityRelationshipTable.ts +57 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1781250074195-MigrationName.ts +207 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1781300000000-AddTelemetryEntityLabels.ts +24 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/1781400000000-AddServiceTelemetrySdkLanguage.ts +25 -0
- package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +14 -0
- package/Server/Infrastructure/Queue.ts +36 -3
- package/Server/Middleware/TelemetryIngest.ts +27 -22
- package/Server/Services/AlertService.ts +9 -9
- package/Server/Services/AnalyticsDatabaseService.ts +204 -35
- package/Server/Services/CloudResourceLabelRuleEngineService.ts +4 -1
- package/Server/Services/CloudResourceOwnerRuleEngineService.ts +4 -1
- package/Server/Services/ExceptionAggregationService.ts +41 -18
- package/Server/Services/HostService.ts +2 -1
- package/Server/Services/IncidentService.ts +19 -19
- package/Server/Services/Index.ts +6 -2
- package/Server/Services/LogAggregationService.ts +116 -43
- package/Server/Services/MetricAggregationService.ts +29 -14
- package/Server/Services/MetricBaselineService.ts +34 -34
- package/Server/Services/MetricItemAggMV1mByHostV2Service.ts +30 -0
- package/Server/Services/MetricService.ts +119 -31
- package/Server/Services/OpenTelemetryIngestService.ts +189 -51
- package/Server/Services/ProfileAggregationService.ts +904 -126
- package/Server/Services/RumApplicationLabelRuleEngineService.ts +4 -1
- package/Server/Services/RumApplicationOwnerRuleEngineService.ts +4 -1
- package/Server/Services/ServerlessFunctionInstanceService.ts +4 -2
- package/Server/Services/ServerlessFunctionLabelRuleEngineService.ts +7 -2
- package/Server/Services/ServerlessFunctionOwnerRuleEngineService.ts +7 -2
- package/Server/Services/ServiceService.ts +6 -0
- package/Server/Services/SpanService.ts +274 -14
- package/Server/Services/TelemetryEntityRelationshipService.ts +71 -0
- package/Server/Services/TelemetryEntityService.ts +246 -0
- package/Server/Services/TelemetryExceptionService.ts +27 -23
- package/Server/Services/TelemetryUsageBillingService.ts +38 -31
- package/Server/Services/TraceAggregationService.ts +875 -43
- package/Server/Types/AnalyticsDatabase/ModelPermission.ts +43 -2
- package/Server/Types/Database/Permissions/AccessControlPermission.ts +47 -2
- package/Server/Types/Database/Permissions/BasePermission.ts +37 -1
- package/Server/Types/Database/Permissions/OwnedScopePermission.ts +21 -3
- package/Server/Types/Database/Permissions/OwnerTableRegistry.ts +1 -0
- package/Server/Types/Database/QueryHelper.ts +41 -0
- package/Server/Utils/Alert/AlertPrivacyFilter.ts +9 -2
- package/Server/Utils/AlertEpisode/AlertEpisodePrivacyFilter.ts +9 -2
- package/Server/Utils/AnalyticsDatabase/QuerySettingsHelper.ts +95 -0
- package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +133 -0
- package/Server/Utils/Incident/IncidentPrivacyFilter.ts +9 -2
- package/Server/Utils/IncidentEpisode/IncidentEpisodePrivacyFilter.ts +9 -2
- package/Server/Utils/Monitor/Criteria/EvaluateOverTime.ts +1 -1
- package/Server/Utils/Monitor/MonitorLogUtil.ts +1 -2
- package/Server/Utils/Monitor/MonitorMetricUtil.ts +3 -4
- package/Server/Utils/PrivacyFilterUtil.ts +72 -0
- package/Server/Utils/Profile/PprofEncoder.ts +135 -11
- package/Server/Utils/Telemetry/EntityRegistry.ts +316 -0
- package/Server/Utils/Telemetry/ResourceFacetResolver.ts +9 -3
- package/Server/Utils/Telemetry/TelemetryEntity.ts +783 -0
- package/Tests/Server/Services/AnalyticsDatabaseService.test.ts +79 -4
- package/Tests/Server/Services/LogAggregationService.test.ts +7 -2
- package/Tests/Server/Services/ProfileAggregationService.test.ts +280 -0
- package/Tests/Server/Services/ProfileBreakdown.test.ts +161 -0
- package/Tests/Server/Services/ProfileFunctionFocus.test.ts +349 -0
- package/Tests/Server/Services/TelemetryAttributeService.test.ts +1 -1
- package/Tests/Server/Services/TraceAggregationService.test.ts +403 -0
- package/Tests/Server/Types/AnalyticsDatabase/ModelPermissionOwnedScope.test.ts +114 -0
- package/Tests/Server/Types/Database/Permissions/AccessControlPermission.test.ts +189 -0
- package/Tests/Server/Types/Database/Permissions/BasePermission.test.ts +118 -0
- package/Tests/Server/Types/Database/Permissions/OwnedScopePermission.test.ts +159 -0
- package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +275 -8
- package/Tests/Server/Utils/PrivacyFilterUtil.test.ts +177 -0
- package/Tests/Server/Utils/Profile/PprofEncoder.test.ts +276 -0
- package/Tests/Server/Utils/Telemetry/TelemetryEntity.test.ts +761 -0
- package/Tests/Types/Monitor/MonitorStepEntityScope.test.ts +275 -0
- package/Tests/Types/Text.test.ts +52 -0
- package/Tests/Utils/Telemetry/EntityKey.test.ts +150 -0
- package/Tests/Utils/Telemetry/EntityKeySqlParity.test.ts +40 -0
- package/Tests/Utils/Telemetry/EntityRelationship.test.ts +150 -0
- package/Tests/Utils/UUID.test.ts +47 -0
- package/Types/AnalyticsDatabase/AnalyticsTableName.ts +14 -9
- package/Types/AnalyticsDatabase/TableColumnType.ts +1 -0
- package/Types/Dashboard/DashboardComponentType.ts +1 -0
- package/Types/Dashboard/DashboardComponents/DashboardTraceChartComponent.ts +37 -0
- package/Types/Dashboard/DashboardTemplates.ts +4 -5
- package/Types/Log/LogQueryParser.ts +2 -2
- package/Types/Log/LogQueryToFilter.ts +2 -2
- package/Types/Monitor/MonitorStepExceptionMonitor.ts +19 -1
- package/Types/Monitor/MonitorStepLogMonitor.ts +20 -1
- package/Types/Monitor/MonitorStepMetricMonitor.ts +27 -0
- package/Types/Monitor/MonitorStepProfileMonitor.ts +19 -1
- package/Types/Monitor/MonitorStepTraceMonitor.ts +18 -1
- package/Types/Monitor/MonitorType.ts +8 -1
- package/Types/ObjectID.ts +10 -0
- package/Types/Permission.ts +4 -2
- package/Types/Telemetry/EntityRelationshipType.ts +31 -0
- package/Types/Telemetry/EntityType.ts +33 -0
- package/Types/Telemetry/TelemetrySavedViewState.ts +2 -0
- package/Types/Text.ts +34 -0
- package/Types/Trace/TraceAggregationType.ts +1 -0
- package/Types/Trace/TraceRecordingRuleDefinition.ts +74 -0
- package/UI/Components/BulkUpdate/BulkLabelActions.tsx +14 -14
- package/UI/Components/Forms/Fields/FormField.tsx +18 -12
- package/UI/Components/Input/Input.tsx +3 -1
- package/UI/Components/LogsViewer/LogsViewer.tsx +12 -9
- package/UI/Components/LogsViewer/components/LogDetailsPanel.tsx +10 -9
- package/UI/Components/LogsViewer/components/LogSearchBar.tsx +1 -1
- package/UI/Components/LogsViewer/components/LogsAnalyticsView.tsx +2 -2
- package/UI/Components/LogsViewer/components/LogsFacetSidebar.tsx +4 -4
- package/UI/Components/LogsViewer/components/LogsTable.tsx +5 -3
- package/UI/Components/Navbar/NavBarMenuModal.tsx +81 -44
- package/UI/Components/TelemetryViewer/TelemetryViewer.tsx +33 -10
- package/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.tsx +18 -3
- package/UI/Components/TelemetryViewer/components/TelemetryHistogram.tsx +91 -68
- package/UI/Components/TelemetryViewer/components/TelemetryHistogramTooltip.tsx +9 -2
- package/UI/Components/TextArea/TextArea.tsx +3 -1
- package/UI/Components/Toast/Toast.tsx +4 -2
- package/UI/Utils/LogExport.ts +2 -2
- package/UI/Utils/TelemetryService.ts +20 -20
- package/Utils/Dashboard/Components/DashboardTraceChartComponent.ts +134 -0
- package/Utils/Dashboard/Components/Index.ts +7 -0
- package/Utils/Telemetry/EntityKey.ts +151 -0
- package/Utils/Telemetry/EntityRelationship.ts +113 -0
- package/Utils/Traces/CriticalPath.ts +7 -7
- package/Utils/UUID.ts +57 -0
- package/build/dist/Models/AnalyticsModels/AnalyticsBaseModel/AnalyticsBaseModel.js +14 -13
- package/build/dist/Models/AnalyticsModels/AnalyticsBaseModel/AnalyticsBaseModel.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/AuditLog.js +2 -1
- package/build/dist/Models/AnalyticsModels/AuditLog.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/ExceptionInstance.js +125 -22
- package/build/dist/Models/AnalyticsModels/ExceptionInstance.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Index.js +7 -2
- package/build/dist/Models/AnalyticsModels/Index.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Log.js +123 -22
- package/build/dist/Models/AnalyticsModels/Log.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Metric.js +125 -27
- package/build/dist/Models/AnalyticsModels/Metric.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/MetricBaselineHourly.js +38 -21
- package/build/dist/Models/AnalyticsModels/MetricBaselineHourly.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/MetricItemAggMV1m.js +17 -16
- package/build/dist/Models/AnalyticsModels/MetricItemAggMV1m.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/{MetricItemAggMV1mByHost.js → MetricItemAggMV1mByHostV2.js} +54 -42
- package/build/dist/Models/AnalyticsModels/MetricItemAggMV1mByHostV2.js.map +1 -0
- package/build/dist/Models/AnalyticsModels/MonitorLog.js +4 -1
- package/build/dist/Models/AnalyticsModels/MonitorLog.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Profile.js +132 -26
- package/build/dist/Models/AnalyticsModels/Profile.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/ProfileSample.js +121 -23
- package/build/dist/Models/AnalyticsModels/ProfileSample.js.map +1 -1
- package/build/dist/Models/AnalyticsModels/Span.js +144 -26
- package/build/dist/Models/AnalyticsModels/Span.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CloudResourceInstance.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CloudResourceOwnerTeam.js.map +1 -1
- package/build/dist/Models/DatabaseModels/CloudResourceOwnerUser.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Index.js +4 -0
- package/build/dist/Models/DatabaseModels/Index.js.map +1 -1
- package/build/dist/Models/DatabaseModels/Service.js +30 -0
- package/build/dist/Models/DatabaseModels/Service.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TelemetryEntity.js +419 -0
- package/build/dist/Models/DatabaseModels/TelemetryEntity.js.map +1 -0
- package/build/dist/Models/DatabaseModels/TelemetryEntityRelationship.js +317 -0
- package/build/dist/Models/DatabaseModels/TelemetryEntityRelationship.js.map +1 -0
- package/build/dist/Models/DatabaseModels/TelemetryException.js +12 -12
- package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
- package/build/dist/Models/DatabaseModels/TelemetryUsageBilling.js +7 -7
- package/build/dist/Models/DatabaseModels/TelemetryUsageBilling.js.map +1 -1
- package/build/dist/Server/API/AIAgentDataAPI.js +14 -13
- package/build/dist/Server/API/AIAgentDataAPI.js.map +1 -1
- package/build/dist/Server/API/DashboardAPI.js +2 -2
- package/build/dist/Server/API/DashboardAPI.js.map +1 -1
- package/build/dist/Server/API/TelemetryAPI.js +425 -129
- package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
- package/build/dist/Server/API/TelemetryExceptionAPI.js +2 -2
- package/build/dist/Server/API/TelemetryExceptionAPI.js.map +1 -1
- package/build/dist/Server/Infrastructure/ClickhouseConfig.js +12 -0
- package/build/dist/Server/Infrastructure/ClickhouseConfig.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780931863719-AddTelemetryResourceMetadataColumns.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780933132562-AddServerlessFunctionTables.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1780935387827-AddCloudResourceTables.js.map +1 -1
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781011482945-MigrationName.js +798 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781011482945-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781100000001-RenameTelemetryServiceIdToPrimaryEntityId.js +29 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781100000001-RenameTelemetryServiceIdToPrimaryEntityId.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781200000000-AddTelemetryEntityTable.js +38 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781200000000-AddTelemetryEntityTable.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781200000001-AddTelemetryEntityRelationshipTable.js +33 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781200000001-AddTelemetryEntityRelationshipTable.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781250074195-MigrationName.js +78 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781250074195-MigrationName.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781300000000-AddTelemetryEntityLabels.js +19 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781300000000-AddTelemetryEntityLabels.js.map +1 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781400000000-AddServiceTelemetrySdkLanguage.js +18 -0
- package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1781400000000-AddServiceTelemetrySdkLanguage.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/Queue.js +14 -3
- package/build/dist/Server/Infrastructure/Queue.js.map +1 -1
- package/build/dist/Server/Middleware/TelemetryIngest.js +16 -18
- package/build/dist/Server/Middleware/TelemetryIngest.js.map +1 -1
- package/build/dist/Server/Services/AlertService.js +9 -9
- package/build/dist/Server/Services/AlertService.js.map +1 -1
- package/build/dist/Server/Services/AnalyticsDatabaseService.js +115 -40
- package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
- package/build/dist/Server/Services/CloudResourceLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/CloudResourceOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ExceptionAggregationService.js +38 -18
- package/build/dist/Server/Services/ExceptionAggregationService.js.map +1 -1
- package/build/dist/Server/Services/HostService.js +2 -1
- package/build/dist/Server/Services/HostService.js.map +1 -1
- package/build/dist/Server/Services/IncidentService.js +19 -19
- package/build/dist/Server/Services/IncidentService.js.map +1 -1
- package/build/dist/Server/Services/Index.js +6 -2
- package/build/dist/Server/Services/Index.js.map +1 -1
- package/build/dist/Server/Services/LogAggregationService.js +100 -42
- package/build/dist/Server/Services/LogAggregationService.js.map +1 -1
- package/build/dist/Server/Services/MetricAggregationService.js +27 -14
- package/build/dist/Server/Services/MetricAggregationService.js.map +1 -1
- package/build/dist/Server/Services/MetricBaselineService.js +28 -28
- package/build/dist/Server/Services/MetricBaselineService.js.map +1 -1
- package/build/dist/Server/Services/MetricItemAggMV1mByHostV2Service.js +28 -0
- package/build/dist/Server/Services/MetricItemAggMV1mByHostV2Service.js.map +1 -0
- package/build/dist/Server/Services/MetricService.js +116 -31
- package/build/dist/Server/Services/MetricService.js.map +1 -1
- package/build/dist/Server/Services/OpenTelemetryIngestService.js +103 -36
- package/build/dist/Server/Services/OpenTelemetryIngestService.js.map +1 -1
- package/build/dist/Server/Services/ProfileAggregationService.js +613 -105
- package/build/dist/Server/Services/ProfileAggregationService.js.map +1 -1
- package/build/dist/Server/Services/RumApplicationLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/RumApplicationOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ServerlessFunctionInstanceService.js +4 -2
- package/build/dist/Server/Services/ServerlessFunctionInstanceService.js.map +1 -1
- package/build/dist/Server/Services/ServerlessFunctionLabelRuleEngineService.js +2 -1
- package/build/dist/Server/Services/ServerlessFunctionLabelRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ServerlessFunctionOwnerRuleEngineService.js +2 -1
- package/build/dist/Server/Services/ServerlessFunctionOwnerRuleEngineService.js.map +1 -1
- package/build/dist/Server/Services/ServiceService.js +9 -5
- package/build/dist/Server/Services/ServiceService.js.map +1 -1
- package/build/dist/Server/Services/SpanService.js +217 -15
- package/build/dist/Server/Services/SpanService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryEntityRelationshipService.js +72 -0
- package/build/dist/Server/Services/TelemetryEntityRelationshipService.js.map +1 -0
- package/build/dist/Server/Services/TelemetryEntityService.js +201 -0
- package/build/dist/Server/Services/TelemetryEntityService.js.map +1 -0
- package/build/dist/Server/Services/TelemetryExceptionService.js +18 -18
- package/build/dist/Server/Services/TelemetryExceptionService.js.map +1 -1
- package/build/dist/Server/Services/TelemetryUsageBillingService.js +27 -21
- package/build/dist/Server/Services/TelemetryUsageBillingService.js.map +1 -1
- package/build/dist/Server/Services/TraceAggregationService.js +568 -43
- package/build/dist/Server/Services/TraceAggregationService.js.map +1 -1
- package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js +38 -2
- package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/AccessControlPermission.js +36 -2
- package/build/dist/Server/Types/Database/Permissions/AccessControlPermission.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/BasePermission.js +25 -1
- package/build/dist/Server/Types/Database/Permissions/BasePermission.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/OwnedScopePermission.js +17 -3
- package/build/dist/Server/Types/Database/Permissions/OwnedScopePermission.js.map +1 -1
- package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js +1 -0
- package/build/dist/Server/Types/Database/Permissions/OwnerTableRegistry.js.map +1 -1
- package/build/dist/Server/Types/Database/QueryHelper.js +31 -0
- package/build/dist/Server/Types/Database/QueryHelper.js.map +1 -1
- package/build/dist/Server/Utils/Alert/AlertPrivacyFilter.js +3 -2
- package/build/dist/Server/Utils/Alert/AlertPrivacyFilter.js.map +1 -1
- package/build/dist/Server/Utils/AlertEpisode/AlertEpisodePrivacyFilter.js +3 -2
- package/build/dist/Server/Utils/AlertEpisode/AlertEpisodePrivacyFilter.js.map +1 -1
- package/build/dist/Server/Utils/AnalyticsDatabase/QuerySettingsHelper.js +46 -0
- package/build/dist/Server/Utils/AnalyticsDatabase/QuerySettingsHelper.js.map +1 -0
- package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +97 -3
- package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
- package/build/dist/Server/Utils/Incident/IncidentPrivacyFilter.js +3 -2
- package/build/dist/Server/Utils/Incident/IncidentPrivacyFilter.js.map +1 -1
- package/build/dist/Server/Utils/IncidentEpisode/IncidentEpisodePrivacyFilter.js +3 -2
- package/build/dist/Server/Utils/IncidentEpisode/IncidentEpisodePrivacyFilter.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/EvaluateOverTime.js +1 -1
- package/build/dist/Server/Utils/Monitor/Criteria/EvaluateOverTime.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorLogUtil.js +1 -2
- package/build/dist/Server/Utils/Monitor/MonitorLogUtil.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js +3 -4
- package/build/dist/Server/Utils/Monitor/MonitorMetricUtil.js.map +1 -1
- package/build/dist/Server/Utils/PrivacyFilterUtil.js +47 -0
- package/build/dist/Server/Utils/PrivacyFilterUtil.js.map +1 -0
- package/build/dist/Server/Utils/Profile/PprofEncoder.js +132 -4
- package/build/dist/Server/Utils/Profile/PprofEncoder.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/EntityRegistry.js +228 -0
- package/build/dist/Server/Utils/Telemetry/EntityRegistry.js.map +1 -0
- package/build/dist/Server/Utils/Telemetry/ResourceFacetResolver.js +5 -0
- package/build/dist/Server/Utils/Telemetry/ResourceFacetResolver.js.map +1 -1
- package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js +569 -0
- package/build/dist/Server/Utils/Telemetry/TelemetryEntity.js.map +1 -0
- package/build/dist/Types/AnalyticsDatabase/AnalyticsTableName.js +14 -9
- package/build/dist/Types/AnalyticsDatabase/AnalyticsTableName.js.map +1 -1
- package/build/dist/Types/AnalyticsDatabase/TableColumnType.js +1 -0
- package/build/dist/Types/AnalyticsDatabase/TableColumnType.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardComponentType.js +1 -0
- package/build/dist/Types/Dashboard/DashboardComponentType.js.map +1 -1
- package/build/dist/Types/Dashboard/DashboardComponents/DashboardTraceChartComponent.js +2 -0
- package/build/dist/Types/Dashboard/DashboardComponents/DashboardTraceChartComponent.js.map +1 -0
- package/build/dist/Types/Dashboard/DashboardTemplates.js +4 -5
- package/build/dist/Types/Dashboard/DashboardTemplates.js.map +1 -1
- package/build/dist/Types/Log/LogQueryParser.js +2 -2
- package/build/dist/Types/Log/LogQueryParser.js.map +1 -1
- package/build/dist/Types/Log/LogQueryToFilter.js +1 -1
- package/build/dist/Types/Log/LogQueryToFilter.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepExceptionMonitor.js +9 -1
- package/build/dist/Types/Monitor/MonitorStepExceptionMonitor.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepLogMonitor.js +9 -1
- package/build/dist/Types/Monitor/MonitorStepLogMonitor.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepMetricMonitor.js +13 -0
- package/build/dist/Types/Monitor/MonitorStepMetricMonitor.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepProfileMonitor.js +9 -1
- package/build/dist/Types/Monitor/MonitorStepProfileMonitor.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorStepTraceMonitor.js +9 -1
- package/build/dist/Types/Monitor/MonitorStepTraceMonitor.js.map +1 -1
- package/build/dist/Types/Monitor/MonitorType.js +8 -1
- package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
- package/build/dist/Types/ObjectID.js +9 -0
- package/build/dist/Types/ObjectID.js.map +1 -1
- package/build/dist/Types/Permission.js.map +1 -1
- package/build/dist/Types/Telemetry/EntityRelationshipType.js +32 -0
- package/build/dist/Types/Telemetry/EntityRelationshipType.js.map +1 -0
- package/build/dist/Types/Telemetry/EntityType.js +34 -0
- package/build/dist/Types/Telemetry/EntityType.js.map +1 -0
- package/build/dist/Types/Text.js +32 -1
- package/build/dist/Types/Text.js.map +1 -1
- package/build/dist/Types/Trace/TraceAggregationType.js +1 -0
- package/build/dist/Types/Trace/TraceAggregationType.js.map +1 -1
- package/build/dist/Types/Trace/TraceRecordingRuleDefinition.js +50 -1
- package/build/dist/Types/Trace/TraceRecordingRuleDefinition.js.map +1 -1
- package/build/dist/UI/Components/BulkUpdate/BulkLabelActions.js.map +1 -1
- package/build/dist/UI/Components/Forms/Fields/FormField.js +15 -12
- package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
- package/build/dist/UI/Components/Input/Input.js +3 -1
- package/build/dist/UI/Components/Input/Input.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/LogsViewer.js +10 -9
- package/build/dist/UI/Components/LogsViewer/LogsViewer.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogDetailsPanel.js +8 -8
- package/build/dist/UI/Components/LogsViewer/components/LogDetailsPanel.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogSearchBar.js +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogSearchBar.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js +2 -2
- package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js +4 -4
- package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogsTable.js +3 -3
- package/build/dist/UI/Components/LogsViewer/components/LogsTable.js.map +1 -1
- package/build/dist/UI/Components/Navbar/NavBarMenuModal.js +43 -30
- package/build/dist/UI/Components/Navbar/NavBarMenuModal.js.map +1 -1
- package/build/dist/UI/Components/TelemetryViewer/TelemetryViewer.js +6 -2
- package/build/dist/UI/Components/TelemetryViewer/TelemetryViewer.js.map +1 -1
- package/build/dist/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.js +14 -3
- package/build/dist/UI/Components/TelemetryViewer/components/TelemetryFacetSidebar.js.map +1 -1
- package/build/dist/UI/Components/TelemetryViewer/components/TelemetryHistogram.js +18 -10
- package/build/dist/UI/Components/TelemetryViewer/components/TelemetryHistogram.js.map +1 -1
- package/build/dist/UI/Components/TelemetryViewer/components/TelemetryHistogramTooltip.js +4 -2
- package/build/dist/UI/Components/TelemetryViewer/components/TelemetryHistogramTooltip.js.map +1 -1
- package/build/dist/UI/Components/TextArea/TextArea.js +3 -1
- package/build/dist/UI/Components/TextArea/TextArea.js.map +1 -1
- package/build/dist/UI/Components/Toast/Toast.js +4 -2
- package/build/dist/UI/Components/Toast/Toast.js.map +1 -1
- package/build/dist/UI/Utils/LogExport.js +2 -2
- package/build/dist/UI/Utils/LogExport.js.map +1 -1
- package/build/dist/UI/Utils/TelemetryService.js +16 -16
- package/build/dist/UI/Utils/TelemetryService.js.map +1 -1
- package/build/dist/Utils/Dashboard/Components/DashboardTraceChartComponent.js +110 -0
- package/build/dist/Utils/Dashboard/Components/DashboardTraceChartComponent.js.map +1 -0
- package/build/dist/Utils/Dashboard/Components/Index.js +4 -0
- package/build/dist/Utils/Dashboard/Components/Index.js.map +1 -1
- package/build/dist/Utils/Telemetry/EntityKey.js +115 -0
- package/build/dist/Utils/Telemetry/EntityKey.js.map +1 -0
- package/build/dist/Utils/Telemetry/EntityRelationship.js +71 -0
- package/build/dist/Utils/Telemetry/EntityRelationship.js.map +1 -0
- package/build/dist/Utils/Traces/CriticalPath.js +5 -5
- package/build/dist/Utils/Traces/CriticalPath.js.map +1 -1
- package/build/dist/Utils/UUID.js +50 -0
- package/build/dist/Utils/UUID.js.map +1 -1
- package/package.json +2 -1
- package/tsconfig.json +10 -1
- package/Server/Services/MetricItemAggMV1mByHostService.ts +0 -30
- package/Types/Profile/ProfileMetricType.ts +0 -16
- package/build/dist/Models/AnalyticsModels/MetricItemAggMV1mByHost.js.map +0 -1
- package/build/dist/Server/Services/MetricItemAggMV1mByHostService.js +0 -28
- package/build/dist/Server/Services/MetricItemAggMV1mByHostService.js.map +0 -1
- package/build/dist/Tests/MockType.js +0 -5
- package/build/dist/Tests/MockType.js.map +0 -1
- package/build/dist/Tests/Models/AnalyticsModels/Log.test.js +0 -12
- package/build/dist/Tests/Models/AnalyticsModels/Log.test.js.map +0 -1
- package/build/dist/Tests/Models/File.test.js +0 -10
- package/build/dist/Tests/Models/File.test.js.map +0 -1
- package/build/dist/Tests/Server/API/BaseAPI.test.js +0 -590
- package/build/dist/Tests/Server/API/BaseAPI.test.js.map +0 -1
- package/build/dist/Tests/Server/API/Helpers.js +0 -27
- package/build/dist/Tests/Server/API/Helpers.js.map +0 -1
- package/build/dist/Tests/Server/API/ProbeAPI.test.js +0 -84
- package/build/dist/Tests/Server/API/ProbeAPI.test.js.map +0 -1
- package/build/dist/Tests/Server/API/ProjectAPI.test.js +0 -170
- package/build/dist/Tests/Server/API/ProjectAPI.test.js.map +0 -1
- package/build/dist/Tests/Server/API/UserSmsApi.test.js +0 -177
- package/build/dist/Tests/Server/API/UserSmsApi.test.js.map +0 -1
- package/build/dist/Tests/Server/Middleware/BearerTokenAuthorization.test.js +0 -63
- package/build/dist/Tests/Server/Middleware/BearerTokenAuthorization.test.js.map +0 -1
- package/build/dist/Tests/Server/Middleware/ClusterKeyAuthorization.test.js +0 -58
- package/build/dist/Tests/Server/Middleware/ClusterKeyAuthorization.test.js.map +0 -1
- package/build/dist/Tests/Server/Middleware/NotificationMiddleware.test.js +0 -101
- package/build/dist/Tests/Server/Middleware/NotificationMiddleware.test.js.map +0 -1
- package/build/dist/Tests/Server/Middleware/ProjectAuthorization.test.js +0 -160
- package/build/dist/Tests/Server/Middleware/ProjectAuthorization.test.js.map +0 -1
- package/build/dist/Tests/Server/Middleware/UserAuthorization.test.js +0 -410
- package/build/dist/Tests/Server/Middleware/UserAuthorization.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/AlertEpisodeMemberService.test.js +0 -165
- package/build/dist/Tests/Server/Services/AlertEpisodeMemberService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/AlertEpisodeService.test.js +0 -193
- package/build/dist/Tests/Server/Services/AlertEpisodeService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/AlertGroupingEngineService.test.js +0 -435
- package/build/dist/Tests/Server/Services/AlertGroupingEngineService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/AlertGroupingRuleService.test.js +0 -320
- package/build/dist/Tests/Server/Services/AlertGroupingRuleService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/AnalyticsDatabaseService.test.js +0 -266
- package/build/dist/Tests/Server/Services/AnalyticsDatabaseService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/BillingService.test.js +0 -910
- package/build/dist/Tests/Server/Services/BillingService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/LogAggregationService.test.js +0 -75
- package/build/dist/Tests/Server/Services/LogAggregationService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/ProbeService.test.js +0 -127
- package/build/dist/Tests/Server/Services/ProbeService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/ScheduledMaintenanceService.test.js +0 -114
- package/build/dist/Tests/Server/Services/ScheduledMaintenanceService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/TeamMemberService.test.js +0 -106
- package/build/dist/Tests/Server/Services/TeamMemberService.test.js.map +0 -1
- package/build/dist/Tests/Server/Services/TelemetryAttributeService.test.js +0 -50
- package/build/dist/Tests/Server/Services/TelemetryAttributeService.test.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Init.js +0 -4
- package/build/dist/Tests/Server/TestingUtils/Init.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Postgres/TestDataSourceOptions.js +0 -9
- package/build/dist/Tests/Server/TestingUtils/Postgres/TestDataSourceOptions.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Redis/TestRedisOptions.js +0 -16
- package/build/dist/Tests/Server/TestingUtils/Redis/TestRedisOptions.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Services/BillingServiceHelper.js +0 -125
- package/build/dist/Tests/Server/TestingUtils/Services/BillingServiceHelper.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Services/ProjectServiceHelper.js +0 -39
- package/build/dist/Tests/Server/TestingUtils/Services/ProjectServiceHelper.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Services/ScheduledMaintenanceServiceHelper.js +0 -20
- package/build/dist/Tests/Server/TestingUtils/Services/ScheduledMaintenanceServiceHelper.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Services/ScheduledMaintenanceStateServiceHelper.js +0 -31
- package/build/dist/Tests/Server/TestingUtils/Services/ScheduledMaintenanceStateServiceHelper.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Services/TeamMemberServiceHelper.js +0 -14
- package/build/dist/Tests/Server/TestingUtils/Services/TeamMemberServiceHelper.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Services/TeamServiceHelper.js +0 -21
- package/build/dist/Tests/Server/TestingUtils/Services/TeamServiceHelper.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Services/Types.js +0 -2
- package/build/dist/Tests/Server/TestingUtils/Services/Types.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/Services/UserServiceHelper.js +0 -37
- package/build/dist/Tests/Server/TestingUtils/Services/UserServiceHelper.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/__mocks__/Stripe.mock.js +0 -13
- package/build/dist/Tests/Server/TestingUtils/__mocks__/Stripe.mock.js.map +0 -1
- package/build/dist/Tests/Server/TestingUtils/__mocks__/TestDatabase.mock.js +0 -22
- package/build/dist/Tests/Server/TestingUtils/__mocks__/TestDatabase.mock.js.map +0 -1
- package/build/dist/Tests/Server/Types/Domain.test.js +0 -78
- package/build/dist/Tests/Server/Types/Domain.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/AnalyticsDatabase/Statement.test.js +0 -94
- package/build/dist/Tests/Server/Utils/AnalyticsDatabase/Statement.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.js +0 -459
- package/build/dist/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/Cookie.test.js +0 -83
- package/build/dist/Tests/Server/Utils/Cookie.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/CronTab.test.js +0 -29
- package/build/dist/Tests/Server/Utils/CronTab.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/JsonToCsv.test.js +0 -114
- package/build/dist/Tests/Server/Utils/JsonToCsv.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.test.js +0 -606
- package/build/dist/Tests/Server/Utils/Monitor/Criteria/MetricMonitorCriteria.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.test.js +0 -255
- package/build/dist/Tests/Server/Utils/Monitor/Criteria/SnmpMonitorCriteria.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/Monitor/MonitorMaintenanceSuppression.test.js +0 -142
- package/build/dist/Tests/Server/Utils/Monitor/MonitorMaintenanceSuppression.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/StatusPageResource.test.js +0 -122
- package/build/dist/Tests/Server/Utils/StatusPageResource.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/Telemetry/LogExceptionExtractor.test.js +0 -0
- package/build/dist/Tests/Server/Utils/Telemetry/LogExceptionExtractor.test.js.map +0 -1
- package/build/dist/Tests/Server/Utils/VM/VMAPI.test.js +0 -205
- package/build/dist/Tests/Server/Utils/VM/VMAPI.test.js.map +0 -1
- package/build/dist/Tests/Spy.js +0 -4
- package/build/dist/Tests/Spy.js.map +0 -1
- package/build/dist/Tests/Types/API/ErrorResponse.test.js +0 -13
- package/build/dist/Tests/Types/API/ErrorResponse.test.js.map +0 -1
- package/build/dist/Tests/Types/API/HTTPErrorResponse.test.js +0 -33
- package/build/dist/Tests/Types/API/HTTPErrorResponse.test.js.map +0 -1
- package/build/dist/Tests/Types/API/HTTPMethod.test.js +0 -16
- package/build/dist/Tests/Types/API/HTTPMethod.test.js.map +0 -1
- package/build/dist/Tests/Types/API/Headers.test.js +0 -14
- package/build/dist/Tests/Types/API/Headers.test.js.map +0 -1
- package/build/dist/Tests/Types/API/Hostname.test.js +0 -22
- package/build/dist/Tests/Types/API/Hostname.test.js.map +0 -1
- package/build/dist/Tests/Types/API/Protocal.test.js +0 -19
- package/build/dist/Tests/Types/API/Protocal.test.js.map +0 -1
- package/build/dist/Tests/Types/API/Response.test.js +0 -14
- package/build/dist/Tests/Types/API/Response.test.js.map +0 -1
- package/build/dist/Tests/Types/API/ResponseType.test.js +0 -13
- package/build/dist/Tests/Types/API/ResponseType.test.js.map +0 -1
- package/build/dist/Tests/Types/API/Route.test.js +0 -30
- package/build/dist/Tests/Types/API/Route.test.js.map +0 -1
- package/build/dist/Tests/Types/API/StatusCode.test.js +0 -26
- package/build/dist/Tests/Types/API/StatusCode.test.js.map +0 -1
- package/build/dist/Tests/Types/API/URL.test.js +0 -33
- package/build/dist/Tests/Types/API/URL.test.js.map +0 -1
- package/build/dist/Tests/Types/Alerts/AlertEventType.test.js +0 -34
- package/build/dist/Tests/Types/Alerts/AlertEventType.test.js.map +0 -1
- package/build/dist/Tests/Types/Alerts/AlertType.test.js +0 -19
- package/build/dist/Tests/Types/Alerts/AlertType.test.js.map +0 -1
- package/build/dist/Tests/Types/AppEnvironment.test.js +0 -13
- package/build/dist/Tests/Types/AppEnvironment.test.js.map +0 -1
- package/build/dist/Tests/Types/ApplicationLog/ApplicationLogType.test.js +0 -13
- package/build/dist/Tests/Types/ApplicationLog/ApplicationLogType.test.js.map +0 -1
- package/build/dist/Tests/Types/ArrayUtil.test.js +0 -71
- package/build/dist/Tests/Types/ArrayUtil.test.js.map +0 -1
- package/build/dist/Tests/Types/Billing/SubscriptionPlan.test.js +0 -181
- package/build/dist/Tests/Types/Billing/SubscriptionPlan.test.js.map +0 -1
- package/build/dist/Tests/Types/BrandColors.test.js +0 -124
- package/build/dist/Tests/Types/BrandColors.test.js.map +0 -1
- package/build/dist/Tests/Types/Char.test.js +0 -82
- package/build/dist/Tests/Types/Char.test.js.map +0 -1
- package/build/dist/Tests/Types/Code/CodeType.test.js +0 -13
- package/build/dist/Tests/Types/Code/CodeType.test.js.map +0 -1
- package/build/dist/Tests/Types/Color.test.js +0 -44
- package/build/dist/Tests/Types/Color.test.js.map +0 -1
- package/build/dist/Tests/Types/Company/CompanySize.test.js +0 -20
- package/build/dist/Tests/Types/Company/CompanySize.test.js.map +0 -1
- package/build/dist/Tests/Types/Company/JobRole.test.js +0 -22
- package/build/dist/Tests/Types/Company/JobRole.test.js.map +0 -1
- package/build/dist/Tests/Types/Countries.test.js +0 -249
- package/build/dist/Tests/Types/Countries.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/ColumnLength.test.js +0 -43
- package/build/dist/Tests/Types/Database/ColumnLength.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/ColumnType.test.js +0 -79
- package/build/dist/Tests/Types/Database/ColumnType.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/Columns.test.js +0 -20
- package/build/dist/Tests/Types/Database/Columns.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/CompareBase.test.js +0 -37
- package/build/dist/Tests/Types/Database/CompareBase.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/Date.test.js +0 -62
- package/build/dist/Tests/Types/Database/Date.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/EqualTo.test.js +0 -65
- package/build/dist/Tests/Types/Database/EqualTo.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/EqualToOrNull.test.js +0 -62
- package/build/dist/Tests/Types/Database/EqualToOrNull.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/InBetween.test.js +0 -72
- package/build/dist/Tests/Types/Database/InBetween.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/LimitMax.test.js +0 -18
- package/build/dist/Tests/Types/Database/LimitMax.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/NotEqual.test.js +0 -19
- package/build/dist/Tests/Types/Database/NotEqual.test.js.map +0 -1
- package/build/dist/Tests/Types/Database/Search.test.js +0 -10
- package/build/dist/Tests/Types/Database/Search.test.js.map +0 -1
- package/build/dist/Tests/Types/DatabaseType.test.js +0 -7
- package/build/dist/Tests/Types/DatabaseType.test.js.map +0 -1
- package/build/dist/Tests/Types/Date.test.js +0 -194
- package/build/dist/Tests/Types/Date.test.js.map +0 -1
- package/build/dist/Tests/Types/Dictionary.test.js +0 -25
- package/build/dist/Tests/Types/Dictionary.test.js.map +0 -1
- package/build/dist/Tests/Types/Domain.test.js +0 -54
- package/build/dist/Tests/Types/Domain.test.js.map +0 -1
- package/build/dist/Tests/Types/Email/Email.test.js +0 -51
- package/build/dist/Tests/Types/Email/Email.test.js.map +0 -1
- package/build/dist/Tests/Types/EmailWithName.test.js +0 -36
- package/build/dist/Tests/Types/EmailWithName.test.js.map +0 -1
- package/build/dist/Tests/Types/EncryptionAlgorithm.test.js +0 -7
- package/build/dist/Tests/Types/EncryptionAlgorithm.test.js.map +0 -1
- package/build/dist/Tests/Types/Exception/ApiException.test.js +0 -10
- package/build/dist/Tests/Types/Exception/ApiException.test.js.map +0 -1
- package/build/dist/Tests/Types/Exception/BadDataException.test.js +0 -12
- package/build/dist/Tests/Types/Exception/BadDataException.test.js.map +0 -1
- package/build/dist/Tests/Types/Exception/BadOperationException.test.js +0 -10
- package/build/dist/Tests/Types/Exception/BadOperationException.test.js.map +0 -1
- package/build/dist/Tests/Types/Exception/BadRequestException.test.js +0 -12
- package/build/dist/Tests/Types/Exception/BadRequestException.test.js.map +0 -1
- package/build/dist/Tests/Types/Exception/DatabaseNotConnectedException.test.js +0 -10
- package/build/dist/Tests/Types/Exception/DatabaseNotConnectedException.test.js.map +0 -1
- package/build/dist/Tests/Types/Exception/Exception.test.js +0 -15
- package/build/dist/Tests/Types/Exception/Exception.test.js.map +0 -1
- package/build/dist/Tests/Types/Exception/NotImplementedException.test.js +0 -12
- package/build/dist/Tests/Types/Exception/NotImplementedException.test.js.map +0 -1
- package/build/dist/Tests/Types/File.test.js +0 -22
- package/build/dist/Tests/Types/File.test.js.map +0 -1
- package/build/dist/Tests/Types/HashedString.test.js +0 -51
- package/build/dist/Tests/Types/HashedString.test.js.map +0 -1
- package/build/dist/Tests/Types/Html.test.js +0 -8
- package/build/dist/Tests/Types/Html.test.js.map +0 -1
- package/build/dist/Tests/Types/IP/IP.test.js +0 -65
- package/build/dist/Tests/Types/IP/IP.test.js.map +0 -1
- package/build/dist/Tests/Types/IP/IPType.test.js +0 -10
- package/build/dist/Tests/Types/IP/IPType.test.js.map +0 -1
- package/build/dist/Tests/Types/IP/IPv4.test.js +0 -17
- package/build/dist/Tests/Types/IP/IPv4.test.js.map +0 -1
- package/build/dist/Tests/Types/IP/IPv6.test.js +0 -17
- package/build/dist/Tests/Types/IP/IPv6.test.js.map +0 -1
- package/build/dist/Tests/Types/JSON.test.js +0 -37
- package/build/dist/Tests/Types/JSON.test.js.map +0 -1
- package/build/dist/Tests/Types/JSONFunctions.test.js +0 -38
- package/build/dist/Tests/Types/JSONFunctions.test.js.map +0 -1
- package/build/dist/Tests/Types/ListData.test.js +0 -34
- package/build/dist/Tests/Types/ListData.test.js.map +0 -1
- package/build/dist/Tests/Types/Monitor/KubernetesAlertTemplates.test.js +0 -121
- package/build/dist/Tests/Types/Monitor/KubernetesAlertTemplates.test.js.map +0 -1
- package/build/dist/Tests/Types/Name.test.js +0 -26
- package/build/dist/Tests/Types/Name.test.js.map +0 -1
- package/build/dist/Tests/Types/ObjectID.test.js +0 -12
- package/build/dist/Tests/Types/ObjectID.test.js.map +0 -1
- package/build/dist/Tests/Types/OnCallDutyPolicy/LayerUtil.test.js +0 -530
- package/build/dist/Tests/Types/OnCallDutyPolicy/LayerUtil.test.js.map +0 -1
- package/build/dist/Tests/Types/Permission.test.js +0 -99
- package/build/dist/Tests/Types/Permission.test.js.map +0 -1
- package/build/dist/Tests/Types/Phone.test.js +0 -37
- package/build/dist/Tests/Types/Phone.test.js.map +0 -1
- package/build/dist/Tests/Types/Port.test.js +0 -35
- package/build/dist/Tests/Types/Port.test.js.map +0 -1
- package/build/dist/Tests/Types/PositiveNumber.test.js +0 -101
- package/build/dist/Tests/Types/PositiveNumber.test.js.map +0 -1
- package/build/dist/Tests/Types/SecuritySeverity.test.js +0 -16
- package/build/dist/Tests/Types/SecuritySeverity.test.js.map +0 -1
- package/build/dist/Tests/Types/SerializableObject.test.js +0 -37
- package/build/dist/Tests/Types/SerializableObject.test.js.map +0 -1
- package/build/dist/Tests/Types/Sleep.test.js +0 -14
- package/build/dist/Tests/Types/Sleep.test.js.map +0 -1
- package/build/dist/Tests/Types/Text.test.js +0 -8
- package/build/dist/Tests/Types/Text.test.js.map +0 -1
- package/build/dist/Tests/Types/Timezone.test.js +0 -596
- package/build/dist/Tests/Types/Timezone.test.js.map +0 -1
- package/build/dist/Tests/Types/Typeof.test.js +0 -16
- package/build/dist/Tests/Types/Typeof.test.js.map +0 -1
- package/build/dist/Tests/Types/UserType.test.js +0 -16
- package/build/dist/Tests/Types/UserType.test.js.map +0 -1
- package/build/dist/Tests/Types/Version.test.js +0 -35
- package/build/dist/Tests/Types/Version.test.js.map +0 -1
- package/build/dist/Tests/Types/XML.test.js +0 -35
- package/build/dist/Tests/Types/XML.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/404.test.js +0 -59
- package/build/dist/Tests/UI/Components/404.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Alert.test.js +0 -83
- package/build/dist/Tests/UI/Components/Alert.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Badge.test.js +0 -59
- package/build/dist/Tests/UI/Components/Badge.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/BasicForm.test.js +0 -92
- package/build/dist/Tests/UI/Components/BasicForm.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Breadcrumbs.test.js +0 -69
- package/build/dist/Tests/UI/Components/Breadcrumbs.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Button.test.js +0 -104
- package/build/dist/Tests/UI/Components/Button.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Card.test.js +0 -81
- package/build/dist/Tests/UI/Components/Card.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/ColorViewer.test.js +0 -42
- package/build/dist/Tests/UI/Components/ColorViewer.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/ComponentsModal.test.js +0 -233
- package/build/dist/Tests/UI/Components/ComponentsModal.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/ConfirmModal.test.js +0 -57
- package/build/dist/Tests/UI/Components/ConfirmModal.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/DictionaryOfStrings.test.js +0 -84
- package/build/dist/Tests/UI/Components/DictionaryOfStrings.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Dropdown.test.js +0 -146
- package/build/dist/Tests/UI/Components/Dropdown.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/DuplicateModel.test.js +0 -229
- package/build/dist/Tests/UI/Components/DuplicateModel.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/EmptyState/EmptyState.test.js +0 -26
- package/build/dist/Tests/UI/Components/EmptyState/EmptyState.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/ErrorBoundary.test.js +0 -32
- package/build/dist/Tests/UI/Components/ErrorBoundary.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/FilePicker.test.js +0 -342
- package/build/dist/Tests/UI/Components/FilePicker.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/HiddenText.test.js +0 -50
- package/build/dist/Tests/UI/Components/HiddenText.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Input.test.js +0 -223
- package/build/dist/Tests/UI/Components/Input.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Item.test.js +0 -58
- package/build/dist/Tests/UI/Components/Item.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/List.test.js +0 -83
- package/build/dist/Tests/UI/Components/List.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Loader.test.js +0 -19
- package/build/dist/Tests/UI/Components/Loader.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/MarkdownEditor.test.js +0 -85
- package/build/dist/Tests/UI/Components/MarkdownEditor.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/MasterPage.test.js +0 -46
- package/build/dist/Tests/UI/Components/MasterPage.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Modal.test.js +0 -127
- package/build/dist/Tests/UI/Components/Modal.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/NavBar.test.js +0 -52
- package/build/dist/Tests/UI/Components/NavBar.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/OrderedStatesList.test.js +0 -86
- package/build/dist/Tests/UI/Components/OrderedStatesList.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Pagination.test.js +0 -137
- package/build/dist/Tests/UI/Components/Pagination.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Pill.test.js +0 -55
- package/build/dist/Tests/UI/Components/Pill.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Probe.test.js +0 -52
- package/build/dist/Tests/UI/Components/Probe.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/ProgressBar.test.js +0 -41
- package/build/dist/Tests/UI/Components/ProgressBar.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/RadioButtons.test.js +0 -66
- package/build/dist/Tests/UI/Components/RadioButtons.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/SideMenuItem.test.js +0 -99
- package/build/dist/Tests/UI/Components/SideMenuItem.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/SideOver.test.js +0 -77
- package/build/dist/Tests/UI/Components/SideOver.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Tabs.test.js +0 -56
- package/build/dist/Tests/UI/Components/Tabs.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Template/Template.test.js +0 -15
- package/build/dist/Tests/UI/Components/Template/Template.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/TextArea.test.js +0 -112
- package/build/dist/Tests/UI/Components/TextArea.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/TimePicker/TimePicker.test.js +0 -352
- package/build/dist/Tests/UI/Components/TimePicker/TimePicker.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Toast.test.js +0 -48
- package/build/dist/Tests/UI/Components/Toast.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/Toggle.test.js +0 -95
- package/build/dist/Tests/UI/Components/Toggle.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/TopSection.test.js +0 -33
- package/build/dist/Tests/UI/Components/TopSection.test.js.map +0 -1
- package/build/dist/Tests/UI/Components/XAxis.test.js +0 -21
- package/build/dist/Tests/UI/Components/XAxis.test.js.map +0 -1
- package/build/dist/Tests/UI/Index.js +0 -2
- package/build/dist/Tests/UI/Index.js.map +0 -1
- package/build/dist/Tests/UI/Mocks/FileMock.js +0 -3
- package/build/dist/Tests/UI/Mocks/FileMock.js.map +0 -1
- package/build/dist/Tests/Utils/API.test.js +0 -399
- package/build/dist/Tests/Utils/API.test.js.map +0 -1
- package/build/dist/Tests/Utils/Analytics.test.js +0 -67
- package/build/dist/Tests/Utils/Analytics.test.js.map +0 -1
- package/build/dist/Tests/Utils/CronTime.test.js +0 -22
- package/build/dist/Tests/Utils/CronTime.test.js.map +0 -1
- package/build/dist/Tests/Utils/Faker.test.js +0 -27
- package/build/dist/Tests/Utils/Faker.test.js.map +0 -1
- package/build/dist/Tests/Utils/MetricUnitUtil.test.js +0 -187
- package/build/dist/Tests/Utils/MetricUnitUtil.test.js.map +0 -1
- package/build/dist/Tests/Utils/Metrics/MetricFormulaEvaluator.test.js +0 -224
- package/build/dist/Tests/Utils/Metrics/MetricFormulaEvaluator.test.js.map +0 -1
- package/build/dist/Tests/Utils/Metrics/MetricResultUnitConverter.test.js +0 -180
- package/build/dist/Tests/Utils/Metrics/MetricResultUnitConverter.test.js.map +0 -1
- package/build/dist/Tests/Utils/RecordingRuleExpression.test.js +0 -142
- package/build/dist/Tests/Utils/RecordingRuleExpression.test.js.map +0 -1
- package/build/dist/Tests/Utils/Slug.test.js +0 -20
- package/build/dist/Tests/Utils/Slug.test.js.map +0 -1
- package/build/dist/Tests/Utils/UUID.test.js +0 -48
- package/build/dist/Tests/Utils/UUID.test.js.map +0 -1
- package/build/dist/Tests/jest.setup.js +0 -30
- package/build/dist/Tests/jest.setup.js.map +0 -1
- package/build/dist/Types/Profile/ProfileMetricType.js +0 -17
- package/build/dist/Types/Profile/ProfileMetricType.js.map +0 -1
|
@@ -5,32 +5,39 @@ import AnalyticsTableColumn from "../../Types/AnalyticsDatabase/TableColumn";
|
|
|
5
5
|
import TableColumnType from "../../Types/AnalyticsDatabase/TableColumnType";
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
|
-
* Per-(host, minute) pre-aggregated rollup of `
|
|
9
|
-
* samples —
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* a tight granule range.
|
|
8
|
+
* Per-(host, minute) pre-aggregated rollup of `MetricItemV3` value
|
|
9
|
+
* samples — successor of `MetricItemAggMV1mByHost`, re-keyed from the
|
|
10
|
+
* raw `hostIdentifier` string to the stable 16-hex `hostEntityKey`
|
|
11
|
+
* (see Common/Utils/Telemetry/EntityKey.keyForHost).
|
|
13
12
|
*
|
|
14
|
-
*
|
|
15
|
-
* `
|
|
16
|
-
*
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
13
|
+
* Why the re-key: the V1 rollup grouped by the raw
|
|
14
|
+
* `attributes['resource.host.name']` spelling, so hosts reporting the
|
|
15
|
+
* same machine with casing/whitespace drift split into separate rollup
|
|
16
|
+
* streams, and the read side had to ship the raw string. Keying by the
|
|
17
|
+
* canonical entity key collapses those spellings, makes the rollup
|
|
18
|
+
* joinable with every other entity-key read (`has(entityKeys, :key)`),
|
|
19
|
+
* and lets the MV read the ingest-stamped `hostEntityKey` scalar column
|
|
20
|
+
* instead of re-parsing the attributes map on every insert.
|
|
21
|
+
*
|
|
22
|
+
* Populated by `MetricItemAggMV1mByHostV2_mv` (declared below; created
|
|
23
|
+
* by the `RekeyMetricHostRollupToEntityKey` migration, which also
|
|
24
|
+
* backfills from the V1 table by computing the key in SQL). Rows whose
|
|
25
|
+
* resource carries no host entity (`hostEntityKey = ''`) are filtered
|
|
26
|
+
* out so the rollup stays much smaller than `MetricItemAggMV1m`.
|
|
20
27
|
*
|
|
21
28
|
* Read access goes through `MetricService.tryBuildHostAggregateMVStatement`,
|
|
22
|
-
* which
|
|
23
|
-
*
|
|
24
|
-
*
|
|
29
|
+
* which computes `keyForHost(projectId, hostIdentifier)` server-side from
|
|
30
|
+
* the incoming `resource.host.name` filter — the dominant path for
|
|
31
|
+
* host-detail chart queries.
|
|
25
32
|
*
|
|
26
33
|
* No CRUD API; read-only infrastructure populated entirely by the MV.
|
|
27
34
|
*/
|
|
28
|
-
export default class
|
|
35
|
+
export default class MetricItemAggMV1mByHostV2 extends AnalyticsBaseModel {
|
|
29
36
|
public constructor() {
|
|
30
37
|
const projectIdColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
31
38
|
key: "projectId",
|
|
32
39
|
title: "Project ID",
|
|
33
|
-
description: "ID of project (tenant key, replicated from
|
|
40
|
+
description: "ID of project (tenant key, replicated from MetricItemV3)",
|
|
34
41
|
required: true,
|
|
35
42
|
type: TableColumnType.Text,
|
|
36
43
|
isTenantId: true,
|
|
@@ -39,21 +46,19 @@ export default class MetricItemAggMV1mByHost extends AnalyticsBaseModel {
|
|
|
39
46
|
const nameColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
40
47
|
key: "name",
|
|
41
48
|
title: "Metric Name",
|
|
42
|
-
description: "Metric name (replicated from
|
|
49
|
+
description: "Metric name (replicated from MetricItemV3)",
|
|
43
50
|
required: true,
|
|
44
51
|
type: TableColumnType.Text,
|
|
45
52
|
});
|
|
46
53
|
|
|
47
|
-
const
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
},
|
|
56
|
-
);
|
|
54
|
+
const hostEntityKeyColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
55
|
+
key: "hostEntityKey",
|
|
56
|
+
title: "Host Entity Key",
|
|
57
|
+
description:
|
|
58
|
+
"Stable 16-hex host entity key (EntityKey.keyForHost) replicated from MetricItemV3.hostEntityKey at insert time. Rows without one are filtered out by the MV's WHERE clause so this column is always populated for rows that exist.",
|
|
59
|
+
required: true,
|
|
60
|
+
type: TableColumnType.Text,
|
|
61
|
+
});
|
|
57
62
|
|
|
58
63
|
const bucketTimeColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
59
64
|
key: "bucketTime",
|
|
@@ -109,20 +114,20 @@ export default class MetricItemAggMV1mByHost extends AnalyticsBaseModel {
|
|
|
109
114
|
key: "retentionDate",
|
|
110
115
|
title: "Retention Date",
|
|
111
116
|
description:
|
|
112
|
-
"Date after which this row is eligible for TTL deletion. Computed by the MV as max(retentionDate) per bucket — inherits from the source
|
|
117
|
+
"Date after which this row is eligible for TTL deletion. Computed by the MV as max(retentionDate) per bucket — inherits from the source MetricItemV3 rows.",
|
|
113
118
|
required: true,
|
|
114
119
|
type: TableColumnType.Date,
|
|
115
120
|
});
|
|
116
121
|
|
|
117
122
|
super({
|
|
118
|
-
tableName: AnalyticsTableName.
|
|
123
|
+
tableName: AnalyticsTableName.MetricItemAggMV1mByHostV2,
|
|
119
124
|
tableEngine: AnalyticsTableEngine.AggregatingMergeTree,
|
|
120
|
-
singularName: "Metric 1-Minute Aggregate (By Host)",
|
|
121
|
-
pluralName: "Metric 1-Minute Aggregates (By Host)",
|
|
125
|
+
singularName: "Metric 1-Minute Aggregate (By Host Entity Key)",
|
|
126
|
+
pluralName: "Metric 1-Minute Aggregates (By Host Entity Key)",
|
|
122
127
|
tableColumns: [
|
|
123
128
|
projectIdColumn,
|
|
124
129
|
nameColumn,
|
|
125
|
-
|
|
130
|
+
hostEntityKeyColumn,
|
|
126
131
|
bucketTimeColumn,
|
|
127
132
|
valueSumStateColumn,
|
|
128
133
|
valueCountStateColumn,
|
|
@@ -132,36 +137,42 @@ export default class MetricItemAggMV1mByHost extends AnalyticsBaseModel {
|
|
|
132
137
|
],
|
|
133
138
|
projections: [],
|
|
134
139
|
/*
|
|
135
|
-
* Per-host materialized view
|
|
136
|
-
*
|
|
137
|
-
*
|
|
138
|
-
*
|
|
139
|
-
*
|
|
140
|
+
* Per-host materialized view, reading the ingest-stamped
|
|
141
|
+
* `hostEntityKey` scalar column (contract C3) rather than the raw
|
|
142
|
+
* attributes map. Canonical definition; created by the
|
|
143
|
+
* RekeyMetricHostRollupToEntityKey migration and applied
|
|
144
|
+
* idempotently by the analytics schema-sync on boot
|
|
145
|
+
* (MetricItemAggMV1mByHostV2Service is registered in
|
|
146
|
+
* AnalyticsServices, so a wiped ClickHouse volume self-heals).
|
|
147
|
+
* Rows without a host entity are filtered out so the per-host MV
|
|
148
|
+
* stays small.
|
|
140
149
|
*/
|
|
141
150
|
materializedViews: [
|
|
142
151
|
{
|
|
143
|
-
name: "
|
|
144
|
-
query: `CREATE MATERIALIZED VIEW IF NOT EXISTS
|
|
145
|
-
TO
|
|
152
|
+
name: "MetricItemAggMV1mByHostV2_mv",
|
|
153
|
+
query: `CREATE MATERIALIZED VIEW IF NOT EXISTS MetricItemAggMV1mByHostV2_mv
|
|
154
|
+
TO MetricItemAggMV1mByHostV2
|
|
146
155
|
AS
|
|
147
156
|
SELECT
|
|
148
157
|
projectId,
|
|
149
158
|
name,
|
|
150
|
-
|
|
159
|
+
hostEntityKey,
|
|
151
160
|
toStartOfMinute(time) AS bucketTime,
|
|
152
161
|
sumState(toFloat64(coalesce(value, sum, 0))) AS valueSumState,
|
|
153
162
|
countState(toFloat64(coalesce(value, sum, 0))) AS valueCountState,
|
|
154
163
|
minState(toFloat64(coalesce(value, sum, 0))) AS valueMinState,
|
|
155
164
|
maxState(toFloat64(coalesce(value, sum, 0))) AS valueMaxState,
|
|
156
165
|
max(retentionDate) AS retentionDate
|
|
157
|
-
FROM
|
|
158
|
-
WHERE
|
|
159
|
-
GROUP BY projectId, name,
|
|
166
|
+
FROM MetricItemV3
|
|
167
|
+
WHERE hostEntityKey != ''
|
|
168
|
+
GROUP BY projectId, name, hostEntityKey, bucketTime`,
|
|
160
169
|
},
|
|
161
170
|
],
|
|
162
|
-
sortKeys: ["projectId", "name", "
|
|
163
|
-
primaryKeys: ["projectId", "name", "
|
|
164
|
-
partitionKey: "
|
|
171
|
+
sortKeys: ["projectId", "name", "hostEntityKey", "bucketTime"],
|
|
172
|
+
primaryKeys: ["projectId", "name", "hostEntityKey", "bucketTime"],
|
|
173
|
+
partitionKey: "toYYYYMM(bucketTime)",
|
|
174
|
+
tableSettings:
|
|
175
|
+
"ttl_only_drop_parts = 1, non_replicated_deduplication_window = 10000",
|
|
165
176
|
ttlExpression: "retentionDate DELETE",
|
|
166
177
|
});
|
|
167
178
|
}
|
|
@@ -71,6 +71,7 @@ export default class MonitorLog extends AnalyticsBaseModel {
|
|
|
71
71
|
|
|
72
72
|
const timeColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
73
73
|
key: "time",
|
|
74
|
+
codec: [{ codec: "DoubleDelta" }, { codec: "ZSTD", level: 1 }],
|
|
74
75
|
title: "Time",
|
|
75
76
|
description: "When was the log created?",
|
|
76
77
|
required: true,
|
|
@@ -131,6 +132,7 @@ export default class MonitorLog extends AnalyticsBaseModel {
|
|
|
131
132
|
|
|
132
133
|
const retentionDateColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
133
134
|
key: "retentionDate",
|
|
135
|
+
codec: [{ codec: "DoubleDelta" }, { codec: "ZSTD", level: 1 }],
|
|
134
136
|
title: "Retention Date",
|
|
135
137
|
description:
|
|
136
138
|
"Date after which this row is eligible for TTL deletion, computed at ingest time as time + service.retainTelemetryDataForDays",
|
|
@@ -191,7 +193,9 @@ export default class MonitorLog extends AnalyticsBaseModel {
|
|
|
191
193
|
projections: [],
|
|
192
194
|
sortKeys: ["projectId", "time", "monitorId"],
|
|
193
195
|
primaryKeys: ["projectId", "time", "monitorId"],
|
|
194
|
-
partitionKey: "
|
|
196
|
+
partitionKey: "toYYYYMMDD(time)",
|
|
197
|
+
tableSettings:
|
|
198
|
+
"ttl_only_drop_parts = 1, non_replicated_deduplication_window = 10000",
|
|
195
199
|
ttlExpression: "retentionDate DELETE",
|
|
196
200
|
defaultSortColumn: "time",
|
|
197
201
|
});
|
|
@@ -15,7 +15,7 @@ import Service from "../DatabaseModels/Service";
|
|
|
15
15
|
import ServiceType from "../../Types/Telemetry/ServiceType";
|
|
16
16
|
|
|
17
17
|
@OperationalResource()
|
|
18
|
-
@OwnedThrough("
|
|
18
|
+
@OwnedThrough("primaryEntityId", Service, { includeProjectScope: true })
|
|
19
19
|
export default class Profile extends AnalyticsBaseModel {
|
|
20
20
|
public constructor() {
|
|
21
21
|
const projectIdColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
@@ -48,72 +48,74 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
48
48
|
},
|
|
49
49
|
});
|
|
50
50
|
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
51
|
+
const primaryEntityIdColumn: AnalyticsTableColumn =
|
|
52
|
+
new AnalyticsTableColumn({
|
|
53
|
+
key: "primaryEntityId",
|
|
54
|
+
title: "Service ID",
|
|
55
|
+
description:
|
|
56
|
+
"ID of the resource the profile belongs to (Service / Host / DockerHost / KubernetesCluster / Monitor — disambiguated by primaryEntityType)",
|
|
57
|
+
required: true,
|
|
58
|
+
type: TableColumnType.ObjectID,
|
|
59
|
+
accessControl: {
|
|
60
|
+
read: [
|
|
61
|
+
Permission.ProjectOwner,
|
|
62
|
+
Permission.ProjectAdmin,
|
|
63
|
+
Permission.ProjectMember,
|
|
64
|
+
Permission.Viewer,
|
|
65
|
+
Permission.TelemetryAdmin,
|
|
66
|
+
Permission.TelemetryMember,
|
|
67
|
+
Permission.TelemetryViewer,
|
|
68
|
+
Permission.ReadTelemetryServiceProfiles,
|
|
69
|
+
],
|
|
70
|
+
create: [
|
|
71
|
+
Permission.ProjectOwner,
|
|
72
|
+
Permission.ProjectAdmin,
|
|
73
|
+
Permission.ProjectMember,
|
|
74
|
+
Permission.TelemetryAdmin,
|
|
75
|
+
Permission.TelemetryMember,
|
|
76
|
+
Permission.CreateTelemetryServiceProfiles,
|
|
77
|
+
],
|
|
78
|
+
update: [],
|
|
79
|
+
},
|
|
80
|
+
});
|
|
80
81
|
|
|
81
|
-
const
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
82
|
+
const primaryEntityTypeColumn: AnalyticsTableColumn =
|
|
83
|
+
new AnalyticsTableColumn({
|
|
84
|
+
key: "primaryEntityType",
|
|
85
|
+
isLowCardinality: true,
|
|
86
|
+
title: "Service Type",
|
|
87
|
+
description:
|
|
88
|
+
"Discriminator for primaryEntityId — tells the read side which resource table to dispatch to",
|
|
89
|
+
required: false,
|
|
90
|
+
type: TableColumnType.Text,
|
|
91
|
+
skipIndex: {
|
|
92
|
+
name: "idx_service_type",
|
|
93
|
+
type: SkipIndexType.Set,
|
|
94
|
+
params: [10],
|
|
95
|
+
granularity: 4,
|
|
96
|
+
},
|
|
97
|
+
accessControl: {
|
|
98
|
+
read: [
|
|
99
|
+
Permission.ProjectOwner,
|
|
100
|
+
Permission.ProjectAdmin,
|
|
101
|
+
Permission.ProjectMember,
|
|
102
|
+
Permission.Viewer,
|
|
103
|
+
Permission.TelemetryAdmin,
|
|
104
|
+
Permission.TelemetryMember,
|
|
105
|
+
Permission.TelemetryViewer,
|
|
106
|
+
Permission.ReadTelemetryServiceProfiles,
|
|
107
|
+
],
|
|
108
|
+
create: [
|
|
109
|
+
Permission.ProjectOwner,
|
|
110
|
+
Permission.ProjectAdmin,
|
|
111
|
+
Permission.ProjectMember,
|
|
112
|
+
Permission.TelemetryAdmin,
|
|
113
|
+
Permission.TelemetryMember,
|
|
114
|
+
Permission.CreateTelemetryServiceProfiles,
|
|
115
|
+
],
|
|
116
|
+
update: [],
|
|
117
|
+
},
|
|
118
|
+
});
|
|
117
119
|
|
|
118
120
|
const profileIdColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
119
121
|
key: "profileId",
|
|
@@ -225,6 +227,7 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
225
227
|
|
|
226
228
|
const startTimeColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
227
229
|
key: "startTime",
|
|
230
|
+
codec: [{ codec: "DoubleDelta" }, { codec: "ZSTD", level: 1 }],
|
|
228
231
|
title: "Start Time",
|
|
229
232
|
description: "Profile start timestamp",
|
|
230
233
|
required: true,
|
|
@@ -254,6 +257,12 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
254
257
|
|
|
255
258
|
const endTimeColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
256
259
|
key: "endTime",
|
|
260
|
+
/*
|
|
261
|
+
* DoubleDelta works here (unlike Span.endTime): profiles cover
|
|
262
|
+
* fixed-length collection windows, so endTime tracks startTime —
|
|
263
|
+
* and endTimeUnixNano already compresses well with DoubleDelta.
|
|
264
|
+
*/
|
|
265
|
+
codec: [{ codec: "DoubleDelta" }, { codec: "ZSTD", level: 1 }],
|
|
257
266
|
title: "End Time",
|
|
258
267
|
description: "Profile end timestamp",
|
|
259
268
|
required: true,
|
|
@@ -287,8 +296,8 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
287
296
|
title: "Start Time in Unix Nano",
|
|
288
297
|
description: "Profile start timestamp in unix nanoseconds",
|
|
289
298
|
required: true,
|
|
290
|
-
type: TableColumnType.
|
|
291
|
-
codec: { codec: "ZSTD", level: 1 },
|
|
299
|
+
type: TableColumnType.UInt64,
|
|
300
|
+
codec: [{ codec: "DoubleDelta" }, { codec: "ZSTD", level: 1 }],
|
|
292
301
|
accessControl: {
|
|
293
302
|
read: [
|
|
294
303
|
Permission.ProjectOwner,
|
|
@@ -318,8 +327,8 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
318
327
|
title: "End Time in Unix Nano",
|
|
319
328
|
description: "Profile end timestamp in unix nanoseconds",
|
|
320
329
|
required: true,
|
|
321
|
-
type: TableColumnType.
|
|
322
|
-
codec: { codec: "ZSTD", level: 1 },
|
|
330
|
+
type: TableColumnType.UInt64,
|
|
331
|
+
codec: [{ codec: "DoubleDelta" }, { codec: "ZSTD", level: 1 }],
|
|
323
332
|
accessControl: {
|
|
324
333
|
read: [
|
|
325
334
|
Permission.ProjectOwner,
|
|
@@ -348,7 +357,7 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
348
357
|
title: "Duration in Nanoseconds",
|
|
349
358
|
description: "Duration of the profile in nanoseconds",
|
|
350
359
|
required: true,
|
|
351
|
-
type: TableColumnType.
|
|
360
|
+
type: TableColumnType.UInt64,
|
|
352
361
|
codec: { codec: "ZSTD", level: 1 },
|
|
353
362
|
accessControl: {
|
|
354
363
|
read: [
|
|
@@ -469,10 +478,11 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
469
478
|
|
|
470
479
|
const periodColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
471
480
|
key: "period",
|
|
481
|
+
codec: { codec: "ZSTD", level: 1 },
|
|
472
482
|
title: "Period",
|
|
473
483
|
description: "Sampling period value",
|
|
474
484
|
required: false,
|
|
475
|
-
type: TableColumnType.
|
|
485
|
+
type: TableColumnType.UInt64,
|
|
476
486
|
accessControl: {
|
|
477
487
|
read: [
|
|
478
488
|
Permission.ProjectOwner,
|
|
@@ -498,6 +508,7 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
498
508
|
|
|
499
509
|
const attributesColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
500
510
|
key: "attributes",
|
|
511
|
+
codec: { codec: "ZSTD", level: 3 },
|
|
501
512
|
title: "Attributes",
|
|
502
513
|
description: "Profile-level attributes",
|
|
503
514
|
required: true,
|
|
@@ -526,8 +537,47 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
526
537
|
},
|
|
527
538
|
});
|
|
528
539
|
|
|
540
|
+
const entityKeysColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
541
|
+
key: "entityKeys",
|
|
542
|
+
codec: { codec: "ZSTD", level: 3 },
|
|
543
|
+
title: "Entity Keys",
|
|
544
|
+
description:
|
|
545
|
+
"Stable keys of every OpenTelemetry entity (service, host, k8s.pod, container, ...) this signal belongs to. A superset that includes the primary entity. Enables cross-cutting membership queries via has(entityKeys, :key).",
|
|
546
|
+
required: true,
|
|
547
|
+
defaultValue: [],
|
|
548
|
+
type: TableColumnType.ArrayText,
|
|
549
|
+
skipIndex: {
|
|
550
|
+
name: "idx_entity_keys",
|
|
551
|
+
type: SkipIndexType.BloomFilter,
|
|
552
|
+
params: [0.01],
|
|
553
|
+
granularity: 1,
|
|
554
|
+
},
|
|
555
|
+
accessControl: {
|
|
556
|
+
read: [
|
|
557
|
+
Permission.ProjectOwner,
|
|
558
|
+
Permission.ProjectAdmin,
|
|
559
|
+
Permission.ProjectMember,
|
|
560
|
+
Permission.Viewer,
|
|
561
|
+
Permission.TelemetryAdmin,
|
|
562
|
+
Permission.TelemetryMember,
|
|
563
|
+
Permission.TelemetryViewer,
|
|
564
|
+
Permission.ReadTelemetryServiceProfiles,
|
|
565
|
+
],
|
|
566
|
+
create: [
|
|
567
|
+
Permission.ProjectOwner,
|
|
568
|
+
Permission.ProjectAdmin,
|
|
569
|
+
Permission.ProjectMember,
|
|
570
|
+
Permission.TelemetryAdmin,
|
|
571
|
+
Permission.TelemetryMember,
|
|
572
|
+
Permission.CreateTelemetryServiceProfiles,
|
|
573
|
+
],
|
|
574
|
+
update: [],
|
|
575
|
+
},
|
|
576
|
+
});
|
|
577
|
+
|
|
529
578
|
const attributeKeysColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
530
579
|
key: "attributeKeys",
|
|
580
|
+
codec: { codec: "ZSTD", level: 3 },
|
|
531
581
|
title: "Attribute Keys",
|
|
532
582
|
description: "Attribute keys extracted from attributes",
|
|
533
583
|
required: true,
|
|
@@ -621,8 +671,67 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
621
671
|
},
|
|
622
672
|
});
|
|
623
673
|
|
|
674
|
+
/*
|
|
675
|
+
* Scalar per-entity-type key columns — denormalized single-value
|
|
676
|
+
* siblings of `entityKeys`. Each holds the 16-hex key (see
|
|
677
|
+
* Common/Utils/Telemetry/EntityKey) of the row's entity of that type,
|
|
678
|
+
* or '' when the resource carries no such entity (non-Nullable String,
|
|
679
|
+
* so old rows read the type default ''). Unlike the array column, a
|
|
680
|
+
* scalar equality predicate is usable as an MV/sort key and gets a
|
|
681
|
+
* cheaper bloom-filter probe; only the high-traffic keys
|
|
682
|
+
* (service/host/k8s.pod) carry skip indexes. Stamped at ingest by the
|
|
683
|
+
* same extractor that fills `entityKeys`; never part of identity.
|
|
684
|
+
*/
|
|
685
|
+
const scalarEntityKeyColumns: Array<AnalyticsTableColumn> = [
|
|
686
|
+
{
|
|
687
|
+
key: "serviceEntityKey",
|
|
688
|
+
title: "Service Entity Key",
|
|
689
|
+
indexName: "idx_service_entity_key",
|
|
690
|
+
},
|
|
691
|
+
{
|
|
692
|
+
key: "hostEntityKey",
|
|
693
|
+
title: "Host Entity Key",
|
|
694
|
+
indexName: "idx_host_entity_key",
|
|
695
|
+
},
|
|
696
|
+
{
|
|
697
|
+
key: "k8sPodEntityKey",
|
|
698
|
+
title: "Kubernetes Pod Entity Key",
|
|
699
|
+
indexName: "idx_k8s_pod_entity_key",
|
|
700
|
+
},
|
|
701
|
+
{ key: "k8sNodeEntityKey", title: "Kubernetes Node Entity Key" },
|
|
702
|
+
{ key: "k8sClusterEntityKey", title: "Kubernetes Cluster Entity Key" },
|
|
703
|
+
{ key: "containerEntityKey", title: "Container Entity Key" },
|
|
704
|
+
].map(
|
|
705
|
+
(def: {
|
|
706
|
+
key: string;
|
|
707
|
+
title: string;
|
|
708
|
+
indexName?: string | undefined;
|
|
709
|
+
}): AnalyticsTableColumn => {
|
|
710
|
+
return new AnalyticsTableColumn({
|
|
711
|
+
key: def.key,
|
|
712
|
+
title: def.title,
|
|
713
|
+
description:
|
|
714
|
+
"Scalar entity key for this entity type (see entityKeys); '' when the resource has no entity of this type.",
|
|
715
|
+
required: true,
|
|
716
|
+
defaultValue: "",
|
|
717
|
+
type: TableColumnType.Text,
|
|
718
|
+
codec: { codec: "ZSTD", level: 1 },
|
|
719
|
+
skipIndex: def.indexName
|
|
720
|
+
? {
|
|
721
|
+
name: def.indexName,
|
|
722
|
+
type: SkipIndexType.BloomFilter,
|
|
723
|
+
params: [0.01],
|
|
724
|
+
granularity: 1,
|
|
725
|
+
}
|
|
726
|
+
: undefined,
|
|
727
|
+
accessControl: entityKeysColumn.accessControl,
|
|
728
|
+
});
|
|
729
|
+
},
|
|
730
|
+
);
|
|
731
|
+
|
|
624
732
|
const retentionDateColumn: AnalyticsTableColumn = new AnalyticsTableColumn({
|
|
625
733
|
key: "retentionDate",
|
|
734
|
+
codec: [{ codec: "DoubleDelta" }, { codec: "ZSTD", level: 1 }],
|
|
626
735
|
title: "Retention Date",
|
|
627
736
|
description:
|
|
628
737
|
"Date after which this row is eligible for TTL deletion, computed at ingest time as startTime + service.retainTelemetryDataForDays",
|
|
@@ -675,8 +784,8 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
675
784
|
},
|
|
676
785
|
tableColumns: [
|
|
677
786
|
projectIdColumn,
|
|
678
|
-
|
|
679
|
-
|
|
787
|
+
primaryEntityIdColumn,
|
|
788
|
+
primaryEntityTypeColumn,
|
|
680
789
|
profileIdColumn,
|
|
681
790
|
traceIdColumn,
|
|
682
791
|
spanIdColumn,
|
|
@@ -691,13 +800,17 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
691
800
|
periodColumn,
|
|
692
801
|
attributesColumn,
|
|
693
802
|
attributeKeysColumn,
|
|
803
|
+
entityKeysColumn,
|
|
804
|
+
...scalarEntityKeyColumns,
|
|
694
805
|
sampleCountColumn,
|
|
695
806
|
originalPayloadFormatColumn,
|
|
696
807
|
retentionDateColumn,
|
|
697
808
|
],
|
|
698
|
-
sortKeys: ["projectId", "startTime", "
|
|
699
|
-
primaryKeys: ["projectId", "startTime", "
|
|
700
|
-
partitionKey: "
|
|
809
|
+
sortKeys: ["projectId", "startTime", "primaryEntityId", "profileType"],
|
|
810
|
+
primaryKeys: ["projectId", "startTime", "primaryEntityId", "profileType"],
|
|
811
|
+
partitionKey: "toYYYYMMDD(startTime)",
|
|
812
|
+
tableSettings:
|
|
813
|
+
"ttl_only_drop_parts = 1, non_replicated_deduplication_window = 10000",
|
|
701
814
|
ttlExpression: "retentionDate DELETE",
|
|
702
815
|
defaultSortColumn: "startTime",
|
|
703
816
|
});
|
|
@@ -711,20 +824,20 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
711
824
|
this.setColumnValue("projectId", v);
|
|
712
825
|
}
|
|
713
826
|
|
|
714
|
-
public get
|
|
715
|
-
return this.getColumnValue("
|
|
827
|
+
public get primaryEntityId(): ObjectID | undefined {
|
|
828
|
+
return this.getColumnValue("primaryEntityId") as ObjectID | undefined;
|
|
716
829
|
}
|
|
717
830
|
|
|
718
|
-
public set
|
|
719
|
-
this.setColumnValue("
|
|
831
|
+
public set primaryEntityId(v: ObjectID | undefined) {
|
|
832
|
+
this.setColumnValue("primaryEntityId", v);
|
|
720
833
|
}
|
|
721
834
|
|
|
722
|
-
public get
|
|
723
|
-
return this.getColumnValue("
|
|
835
|
+
public get primaryEntityType(): ServiceType | undefined {
|
|
836
|
+
return this.getColumnValue("primaryEntityType") as ServiceType | undefined;
|
|
724
837
|
}
|
|
725
838
|
|
|
726
|
-
public set
|
|
727
|
-
this.setColumnValue("
|
|
839
|
+
public set primaryEntityType(v: ServiceType | undefined) {
|
|
840
|
+
this.setColumnValue("primaryEntityType", v);
|
|
728
841
|
}
|
|
729
842
|
|
|
730
843
|
public get profileId(): string | undefined {
|
|
@@ -839,6 +952,14 @@ export default class Profile extends AnalyticsBaseModel {
|
|
|
839
952
|
this.setColumnValue("attributeKeys", v);
|
|
840
953
|
}
|
|
841
954
|
|
|
955
|
+
public get entityKeys(): Array<string> | undefined {
|
|
956
|
+
return this.getColumnValue("entityKeys") as Array<string> | undefined;
|
|
957
|
+
}
|
|
958
|
+
|
|
959
|
+
public set entityKeys(v: Array<string> | undefined) {
|
|
960
|
+
this.setColumnValue("entityKeys", v);
|
|
961
|
+
}
|
|
962
|
+
|
|
842
963
|
public get sampleCount(): number | undefined {
|
|
843
964
|
return this.getColumnValue("sampleCount") as number | undefined;
|
|
844
965
|
}
|