@oneuptime/common 12.0.12 → 12.0.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (234) hide show
  1. package/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.ts +32 -5
  2. package/Models/DatabaseModels/NetworkDevice.ts +64 -0
  3. package/Models/DatabaseModels/StatusPage.ts +59 -0
  4. package/Models/DatabaseModels/StatusPageOidc.ts +2 -0
  5. package/Models/DatabaseModels/WorkspaceProjectAuthToken.ts +19 -2
  6. package/Server/API/AIChatAPI.ts +55 -56
  7. package/Server/API/CommonAPI.ts +89 -0
  8. package/Server/API/MicrosoftTeamsAPI.ts +20 -9
  9. package/Server/API/SlackAPI.ts +13 -10
  10. package/Server/API/StatusPageAPI.ts +2197 -2128
  11. package/Server/API/TelemetryAPI.ts +72 -3
  12. package/Server/Infrastructure/Postgres/SchemaMigrations/1787500000000-AddEnableSearchEngineIndexingToStatusPage.ts +30 -0
  13. package/Server/Infrastructure/Postgres/SchemaMigrations/1787600000000-AddNetworkDeviceReachabilityColumns.ts +47 -0
  14. package/Server/Infrastructure/Postgres/SchemaMigrations/Index.ts +4 -0
  15. package/Server/Middleware/UserAuthorization.ts +11 -2
  16. package/Server/Services/ApiKeyPermissionService.ts +116 -2
  17. package/Server/Services/DatabaseService.ts +17 -6
  18. package/Server/Services/LogAggregationService.ts +34 -0
  19. package/Server/Services/LogService.ts +21 -0
  20. package/Server/Services/NetworkSiteService.ts +12 -0
  21. package/Server/Services/SpanService.ts +21 -0
  22. package/Server/Services/TraceAggregationService.ts +15 -0
  23. package/Server/Services/WorkspaceNotificationRuleService.ts +172 -220
  24. package/Server/Types/AnalyticsDatabase/ModelPermission.ts +9 -0
  25. package/Server/Types/Database/Permissions/AccessControlPermission.ts +47 -16
  26. package/Server/Utils/APIKey/AccessPermission.ts +16 -40
  27. package/Server/Utils/AnalyticsDatabase/StatementGenerator.ts +144 -0
  28. package/Server/Utils/LogRedaction.ts +576 -0
  29. package/Server/Utils/Logger.ts +123 -46
  30. package/Server/Utils/Monitor/Criteria/SSLMonitorCriteria.ts +94 -23
  31. package/Server/Utils/Monitor/MonitorResource.ts +29 -9
  32. package/Server/Utils/Monitor/NetworkInventoryUtil.ts +28 -7
  33. package/Server/Utils/SessionReplay/SessionReplayGateCacheStore.ts +56 -10
  34. package/Server/Utils/StartServer.ts +30 -9
  35. package/Server/Utils/StatusPageSearchEngineIndexing.ts +33 -0
  36. package/Server/Utils/Telemetry/ResourceEntityFilter.ts +441 -0
  37. package/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.ts +488 -46
  38. package/Tests/App/Dashboard/MonitorTypePicker.test.tsx +300 -0
  39. package/Tests/App/StatusPage/StatusPageIndexPageRobotsMeta.test.ts +130 -0
  40. package/Tests/Models/DatabaseModels/DatabaseBaseModelToJSONObjectCache.test.ts +180 -0
  41. package/Tests/Models/StatusPageEnableSearchEngineIndexing.test.ts +157 -0
  42. package/Tests/Server/API/AIChatCancelAndFeedback.test.ts +23 -1
  43. package/Tests/Server/API/AIChatRouteAuthorization.test.ts +785 -0
  44. package/Tests/Server/API/BaseAPIApiKeyAuth.test.ts +21 -8
  45. package/Tests/Server/API/CommonAPIAuthGuard.test.ts +290 -0
  46. package/Tests/Server/API/MicrosoftTeamsManifest.test.ts +7 -1
  47. package/Tests/Server/API/StatusPageOverviewCache.test.ts +474 -0
  48. package/Tests/Server/API/StatusPageSeoSearchEngineIndexing.test.ts +189 -0
  49. package/Tests/Server/Infrastructure/InMemoryTTLCache.test.ts +158 -0
  50. package/Tests/Server/Infrastructure/Postgres/DeviceRoleAndDeclaredLinkParentMigration.test.ts +9 -60
  51. package/Tests/Server/Middleware/ProjectAuthorizationApiKeyMiddleware.test.ts +24 -15
  52. package/Tests/Server/Middleware/UserAuthorization.test.ts +79 -0
  53. package/Tests/Server/Services/AddNetworkDeviceReachabilityColumnsMigration.test.ts +332 -0
  54. package/Tests/Server/Services/ApiKeyPermissionService.test.ts +347 -0
  55. package/Tests/Server/Services/DatabaseServiceUpdateDebugLogging.test.ts +282 -0
  56. package/Tests/Server/Services/NetworkSiteService.test.ts +56 -2
  57. package/Tests/Server/Services/TelemetryResourceFacetFilters.test.ts +267 -0
  58. package/Tests/Server/Services/WorkspaceNotificationRuleTestRuleChannels.test.ts +702 -0
  59. package/Tests/Server/Types/Database/Permissions/AccessControlPermission.test.ts +165 -0
  60. package/Tests/Server/Utils/APIKey/AccessPermission.test.ts +48 -36
  61. package/Tests/Server/Utils/AnalyticsDatabase/StatementGenerator.test.ts +213 -0
  62. package/Tests/Server/Utils/LogRedaction.test.ts +415 -0
  63. package/Tests/Server/Utils/LoggerCredentialLeak.test.ts +245 -0
  64. package/Tests/Server/Utils/Monitor/Criteria/SSLMonitorCriteria.test.ts +374 -4
  65. package/Tests/Server/Utils/Monitor/MonitorResourceIngestedStepSelection.test.ts +455 -0
  66. package/Tests/Server/Utils/Monitor/NetworkDeviceReachabilityRoundTrip.test.ts +369 -0
  67. package/Tests/Server/Utils/Monitor/NetworkInventoryUtil.test.ts +86 -8
  68. package/Tests/Server/Utils/PrivacyFilterUtil.test.ts +64 -0
  69. package/Tests/Server/Utils/SessionReplay/SessionReplayGateCacheStore.test.ts +207 -0
  70. package/Tests/Server/Utils/StartServerBodyVerify.test.ts +335 -0
  71. package/Tests/Server/Utils/StatusPageSearchEngineIndexing.test.ts +60 -0
  72. package/Tests/Server/Utils/Telemetry/ResourceEntityFilter.test.ts +435 -0
  73. package/Tests/Server/Utils/Workspace/MicrosoftTeamsChannelSend.test.ts +607 -62
  74. package/Tests/Server/Utils/Workspace/MicrosoftTeamsInstalledTeamIdSpace.test.ts +778 -0
  75. package/Tests/Server/Utils/Workspace/MicrosoftTeamsTeamInstalls.test.ts +44 -10
  76. package/Tests/Types/API/HostnameFromAuthority.test.ts +164 -0
  77. package/Tests/Types/Database/AccessControl/ColumnAccessControlCache.test.ts +344 -0
  78. package/Tests/Types/Database/DatabasePropertyFindOperator.test.ts +518 -0
  79. package/Tests/Types/Database/TableColumnMetadataCache.test.ts +286 -0
  80. package/Tests/Types/Monitor/MonitorStep.test.ts +100 -0
  81. package/Tests/Types/Monitor/MonitorTypeKeywords.test.ts +360 -0
  82. package/Tests/Types/StatusPage/SearchEngineIndexing.test.ts +86 -0
  83. package/Tests/Types/Telemetry/ResourceEntityFacet.test.ts +254 -0
  84. package/Tests/UI/Components/CardSelect.test.tsx +1021 -0
  85. package/Tests/UI/Components/MasterPage.test.tsx +36 -1
  86. package/Tests/Utils/Monitor/MonitorMetricType.test.ts +66 -1
  87. package/Tests/Utils/Monitor/NetworkTopologyUtil.test.ts +115 -6
  88. package/Tests/Utils/NetworkDevice/DeviceReachabilityUtil.test.ts +610 -0
  89. package/Tests/Utils/NetworkSite/SiteStatusRollupUtil.test.ts +114 -45
  90. package/Types/API/Hostname.ts +79 -0
  91. package/Types/Database/AccessControl/ColumnAccessControl.ts +33 -11
  92. package/Types/Database/AccessControl/ColumnBillingAccessControl.ts +33 -11
  93. package/Types/Database/DatabaseProperty.ts +38 -0
  94. package/Types/Database/TableColumn.ts +34 -7
  95. package/Types/Events/Recurring.ts +16 -1
  96. package/Types/Monitor/MonitorStep.ts +13 -1
  97. package/Types/Monitor/MonitorType.ts +345 -40
  98. package/Types/Monitor/SSLMonitor/SslMonitorResponse.ts +43 -0
  99. package/Types/StatusPage/SearchEngineIndexing.ts +61 -0
  100. package/Types/Telemetry/ResourceEntityFacet.ts +211 -0
  101. package/UI/Components/CardSelect/CardSelect.tsx +714 -105
  102. package/UI/Components/EmptyState/EmptyState.tsx +8 -1
  103. package/UI/Components/Footer/Footer.tsx +32 -6
  104. package/UI/Components/Forms/Fields/FormField.tsx +3 -0
  105. package/UI/Components/Forms/Types/Field.ts +8 -0
  106. package/UI/Components/Loader/PageLoader.tsx +29 -8
  107. package/UI/Components/LogsViewer/components/LogsAnalyticsView.tsx +26 -4
  108. package/UI/Components/Markdown.tsx/LazyMarkdownViewer.tsx +17 -1
  109. package/UI/Components/MasterPage/MasterPage.tsx +24 -11
  110. package/Utils/Monitor/MonitorMetricType.ts +16 -1
  111. package/Utils/Monitor/NetworkTopologyUtil.ts +60 -8
  112. package/Utils/NetworkDevice/DeviceReachabilityUtil.ts +262 -0
  113. package/Utils/NetworkSite/SiteStatusRollupUtil.ts +41 -24
  114. package/Utils/Telemetry/CrossSignalScope.ts +75 -4
  115. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js +20 -4
  116. package/build/dist/Models/DatabaseModels/DatabaseBaseModel/DatabaseBaseModel.js.map +1 -1
  117. package/build/dist/Models/DatabaseModels/NetworkDevice.js +66 -0
  118. package/build/dist/Models/DatabaseModels/NetworkDevice.js.map +1 -1
  119. package/build/dist/Models/DatabaseModels/StatusPage.js +60 -0
  120. package/build/dist/Models/DatabaseModels/StatusPage.js.map +1 -1
  121. package/build/dist/Models/DatabaseModels/StatusPageOidc.js +2 -0
  122. package/build/dist/Models/DatabaseModels/StatusPageOidc.js.map +1 -1
  123. package/build/dist/Models/DatabaseModels/WorkspaceProjectAuthToken.js.map +1 -1
  124. package/build/dist/Server/API/AIChatAPI.js +48 -35
  125. package/build/dist/Server/API/AIChatAPI.js.map +1 -1
  126. package/build/dist/Server/API/CommonAPI.js +59 -0
  127. package/build/dist/Server/API/CommonAPI.js.map +1 -1
  128. package/build/dist/Server/API/MicrosoftTeamsAPI.js +20 -6
  129. package/build/dist/Server/API/MicrosoftTeamsAPI.js.map +1 -1
  130. package/build/dist/Server/API/SlackAPI.js +13 -10
  131. package/build/dist/Server/API/SlackAPI.js.map +1 -1
  132. package/build/dist/Server/API/StatusPageAPI.js +745 -673
  133. package/build/dist/Server/API/StatusPageAPI.js.map +1 -1
  134. package/build/dist/Server/API/TelemetryAPI.js +34 -3
  135. package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
  136. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787500000000-AddEnableSearchEngineIndexingToStatusPage.js +23 -0
  137. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787500000000-AddEnableSearchEngineIndexingToStatusPage.js.map +1 -0
  138. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787600000000-AddNetworkDeviceReachabilityColumns.js +34 -0
  139. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/1787600000000-AddNetworkDeviceReachabilityColumns.js.map +1 -0
  140. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js +4 -0
  141. package/build/dist/Server/Infrastructure/Postgres/SchemaMigrations/Index.js.map +1 -1
  142. package/build/dist/Server/Middleware/UserAuthorization.js +6 -2
  143. package/build/dist/Server/Middleware/UserAuthorization.js.map +1 -1
  144. package/build/dist/Server/Services/ApiKeyPermissionService.js +90 -1
  145. package/build/dist/Server/Services/ApiKeyPermissionService.js.map +1 -1
  146. package/build/dist/Server/Services/DatabaseService.js +15 -6
  147. package/build/dist/Server/Services/DatabaseService.js.map +1 -1
  148. package/build/dist/Server/Services/LogAggregationService.js +2 -0
  149. package/build/dist/Server/Services/LogAggregationService.js.map +1 -1
  150. package/build/dist/Server/Services/LogService.js +16 -0
  151. package/build/dist/Server/Services/LogService.js.map +1 -1
  152. package/build/dist/Server/Services/NetworkSiteService.js +12 -0
  153. package/build/dist/Server/Services/NetworkSiteService.js.map +1 -1
  154. package/build/dist/Server/Services/SpanService.js +16 -0
  155. package/build/dist/Server/Services/SpanService.js.map +1 -1
  156. package/build/dist/Server/Services/TraceAggregationService.js +2 -0
  157. package/build/dist/Server/Services/TraceAggregationService.js.map +1 -1
  158. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js +137 -164
  159. package/build/dist/Server/Services/WorkspaceNotificationRuleService.js.map +1 -1
  160. package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js +9 -0
  161. package/build/dist/Server/Types/AnalyticsDatabase/ModelPermission.js.map +1 -1
  162. package/build/dist/Server/Types/Database/Permissions/AccessControlPermission.js +21 -13
  163. package/build/dist/Server/Types/Database/Permissions/AccessControlPermission.js.map +1 -1
  164. package/build/dist/Server/Utils/APIKey/AccessPermission.js +9 -32
  165. package/build/dist/Server/Utils/APIKey/AccessPermission.js.map +1 -1
  166. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js +87 -0
  167. package/build/dist/Server/Utils/AnalyticsDatabase/StatementGenerator.js.map +1 -1
  168. package/build/dist/Server/Utils/LogRedaction.js +449 -0
  169. package/build/dist/Server/Utils/LogRedaction.js.map +1 -0
  170. package/build/dist/Server/Utils/Logger.js +98 -45
  171. package/build/dist/Server/Utils/Logger.js.map +1 -1
  172. package/build/dist/Server/Utils/Monitor/Criteria/SSLMonitorCriteria.js +65 -13
  173. package/build/dist/Server/Utils/Monitor/Criteria/SSLMonitorCriteria.js.map +1 -1
  174. package/build/dist/Server/Utils/Monitor/MonitorResource.js +20 -3
  175. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  176. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js +27 -7
  177. package/build/dist/Server/Utils/Monitor/NetworkInventoryUtil.js.map +1 -1
  178. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCacheStore.js +29 -10
  179. package/build/dist/Server/Utils/SessionReplay/SessionReplayGateCacheStore.js.map +1 -1
  180. package/build/dist/Server/Utils/StartServer.js +10 -7
  181. package/build/dist/Server/Utils/StartServer.js.map +1 -1
  182. package/build/dist/Server/Utils/StatusPageSearchEngineIndexing.js +24 -0
  183. package/build/dist/Server/Utils/StatusPageSearchEngineIndexing.js.map +1 -0
  184. package/build/dist/Server/Utils/Telemetry/ResourceEntityFilter.js +311 -0
  185. package/build/dist/Server/Utils/Telemetry/ResourceEntityFilter.js.map +1 -0
  186. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js +366 -37
  187. package/build/dist/Server/Utils/Workspace/MicrosoftTeams/MicrosoftTeams.js.map +1 -1
  188. package/build/dist/Types/API/Hostname.js +63 -0
  189. package/build/dist/Types/API/Hostname.js.map +1 -1
  190. package/build/dist/Types/Database/AccessControl/ColumnAccessControl.js +20 -6
  191. package/build/dist/Types/Database/AccessControl/ColumnAccessControl.js.map +1 -1
  192. package/build/dist/Types/Database/AccessControl/ColumnBillingAccessControl.js +20 -6
  193. package/build/dist/Types/Database/AccessControl/ColumnBillingAccessControl.js.map +1 -1
  194. package/build/dist/Types/Database/DatabaseProperty.js +38 -0
  195. package/build/dist/Types/Database/DatabaseProperty.js.map +1 -1
  196. package/build/dist/Types/Database/TableColumn.js +24 -6
  197. package/build/dist/Types/Database/TableColumn.js.map +1 -1
  198. package/build/dist/Types/Events/Recurring.js +13 -1
  199. package/build/dist/Types/Events/Recurring.js.map +1 -1
  200. package/build/dist/Types/Monitor/MonitorStep.js +9 -1
  201. package/build/dist/Types/Monitor/MonitorStep.js.map +1 -1
  202. package/build/dist/Types/Monitor/MonitorType.js +330 -31
  203. package/build/dist/Types/Monitor/MonitorType.js.map +1 -1
  204. package/build/dist/Types/StatusPage/SearchEngineIndexing.js +55 -0
  205. package/build/dist/Types/StatusPage/SearchEngineIndexing.js.map +1 -0
  206. package/build/dist/Types/Telemetry/ResourceEntityFacet.js +156 -0
  207. package/build/dist/Types/Telemetry/ResourceEntityFacet.js.map +1 -0
  208. package/build/dist/UI/Components/CardSelect/CardSelect.js +360 -40
  209. package/build/dist/UI/Components/CardSelect/CardSelect.js.map +1 -1
  210. package/build/dist/UI/Components/EmptyState/EmptyState.js +1 -1
  211. package/build/dist/UI/Components/EmptyState/EmptyState.js.map +1 -1
  212. package/build/dist/UI/Components/Footer/Footer.js +7 -4
  213. package/build/dist/UI/Components/Footer/Footer.js.map +1 -1
  214. package/build/dist/UI/Components/Forms/Fields/FormField.js +1 -1
  215. package/build/dist/UI/Components/Forms/Fields/FormField.js.map +1 -1
  216. package/build/dist/UI/Components/Loader/PageLoader.js +15 -5
  217. package/build/dist/UI/Components/Loader/PageLoader.js.map +1 -1
  218. package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js +16 -3
  219. package/build/dist/UI/Components/LogsViewer/components/LogsAnalyticsView.js.map +1 -1
  220. package/build/dist/UI/Components/Markdown.tsx/LazyMarkdownViewer.js +13 -1
  221. package/build/dist/UI/Components/Markdown.tsx/LazyMarkdownViewer.js.map +1 -1
  222. package/build/dist/UI/Components/MasterPage/MasterPage.js +10 -2
  223. package/build/dist/UI/Components/MasterPage/MasterPage.js.map +1 -1
  224. package/build/dist/Utils/Monitor/MonitorMetricType.js +13 -1
  225. package/build/dist/Utils/Monitor/MonitorMetricType.js.map +1 -1
  226. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js +34 -7
  227. package/build/dist/Utils/Monitor/NetworkTopologyUtil.js.map +1 -1
  228. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js +177 -0
  229. package/build/dist/Utils/NetworkDevice/DeviceReachabilityUtil.js.map +1 -0
  230. package/build/dist/Utils/NetworkSite/SiteStatusRollupUtil.js +23 -27
  231. package/build/dist/Utils/NetworkSite/SiteStatusRollupUtil.js.map +1 -1
  232. package/build/dist/Utils/Telemetry/CrossSignalScope.js +44 -4
  233. package/build/dist/Utils/Telemetry/CrossSignalScope.js.map +1 -1
  234. package/package.json +1 -1
@@ -7,7 +7,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __metadata = (this && this.__metadata) || function (k, v) {
8
8
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
9
  };
10
- import LIMIT_MAX from "../../../Types/Database/LimitMax";
11
10
  import ObjectID from "../../../Types/ObjectID";
12
11
  import Permission from "../../../Types/Permission";
13
12
  import ApiKeyPermissionService from "../../Services/ApiKeyPermissionService";
@@ -49,38 +48,16 @@ export default class APIKeyAccessPermission {
49
48
  return permission;
50
49
  }
51
50
  static async getApiTenantAccessPermission(projectId, apiKeyId) {
52
- // get team permissions.
53
- const apiKeyPermission = await ApiKeyPermissionService.findBy({
54
- query: {
55
- apiKeyId: apiKeyId,
56
- },
57
- select: {
58
- permission: true,
59
- labels: {
60
- _id: true,
61
- },
62
- isBlockPermission: true,
63
- },
64
- limit: LIMIT_MAX,
65
- skip: 0,
66
- props: {
67
- isRoot: true,
68
- },
69
- });
70
- const userPermissions = [];
71
- for (const apiPermission of apiKeyPermission) {
72
- if (!apiPermission.labels) {
73
- apiPermission.labels = [];
74
- }
75
- userPermissions.push({
76
- permission: apiPermission.permission,
77
- labelIds: apiPermission.labels.map((label) => {
78
- return label.id;
79
- }),
80
- isBlockPermission: apiPermission.isBlockPermission,
51
+ // get team permissions (cached — see ApiKeyPermissionService).
52
+ const apiKeyPermissionRows = await ApiKeyPermissionService.findPermissionsByApiKeyId(apiKeyId);
53
+ const userPermissions = apiKeyPermissionRows.map((row) => {
54
+ return {
55
+ permission: row.permission,
56
+ labelIds: row.labelIds,
57
+ isBlockPermission: row.isBlockPermission,
81
58
  _type: "UserPermission",
82
- });
83
- }
59
+ };
60
+ });
84
61
  const permission = UserPermissionUtil.getDefaultUserTenantAccessPermission(projectId);
85
62
  permission.permissions = permission.permissions.concat(userPermissions);
86
63
  return permission;
@@ -1 +1 @@
1
- {"version":3,"file":"AccessPermission.js","sourceRoot":"","sources":["../../../../../Server/Utils/APIKey/AccessPermission.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"AccessPermission.js","sourceRoot":"","sources":["../../../../../Server/Utils/APIKey/AccessPermission.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,QAAQ,MAAM,yBAAyB,CAAC;AAC/C,OAAO,UAIN,MAAM,2BAA2B,CAAC;AACnC,OAAO,uBAEN,MAAM,wCAAwC,CAAC;AAChD,OAAO,WAAW,MAAM,0BAA0B,CAAC;AACnD,OAAO,kBAAkB,MAAM,kCAAkC,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,sBAAsB;IAErB,AAAb,MAAM,CAAC,KAAK,CAAC,6BAA6B,CAC/C,SAAmB;QAEnB,OAAO;YACL,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,iBAAiB,EAAE;gBACjB,UAAU,CAAC,MAAM;gBACjB,UAAU,CAAC,IAAI;gBACf,UAAU,CAAC,WAAW;aACvB;YACD,KAAK,EAAE,4BAA4B;SACpC,CAAC;IACJ,CAAC;IAGmB,AAAb,MAAM,CAAC,KAAK,CAAC,+BAA+B,CACjD,SAAmB;QAEnB,OAAO;YACL,UAAU,EAAE,CAAC,SAAS,CAAC;YACvB,iBAAiB,EAAE;gBACjB,UAAU,CAAC,MAAM;gBACjB,UAAU,CAAC,IAAI;gBACf,UAAU,CAAC,WAAW;gBACtB,UAAU,CAAC,YAAY;aACxB;YACD,KAAK,EAAE,4BAA4B;SACpC,CAAC;IACJ,CAAC;IAGmB,AAAb,MAAM,CAAC,KAAK,CAAC,kCAAkC,CACpD,SAAmB;QAEnB,MAAM,eAAe,GAA0B,EAAE,CAAC;QAElD,eAAe,CAAC,IAAI,CAAC;YACnB,UAAU,EAAE,UAAU,CAAC,YAAY;YACnC,QAAQ,EAAE,EAAE;YACZ,KAAK,EAAE,gBAAgB;SACxB,CAAC,CAAC;QAEH,MAAM,UAAU,GACd,kBAAkB,CAAC,oCAAoC,CAAC,SAAS,CAAC,CAAC;QAErE,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAExE,OAAO,UAAU,CAAC;IACpB,CAAC;IAGmB,AAAb,MAAM,CAAC,KAAK,CAAC,4BAA4B,CAC9C,SAAmB,EACnB,QAAkB;QAElB,+DAA+D;QAC/D,MAAM,oBAAoB,GACxB,MAAM,uBAAuB,CAAC,yBAAyB,CAAC,QAAQ,CAAC,CAAC;QAEpE,MAAM,eAAe,GAA0B,oBAAoB,CAAC,GAAG,CACrE,CAAC,GAAwB,EAAkB,EAAE;YAC3C,OAAO;gBACL,UAAU,EAAE,GAAG,CAAC,UAAU;gBAC1B,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;gBACxC,KAAK,EAAE,gBAAgB;aACxB,CAAC;QACJ,CAAC,CACF,CAAC;QAEF,MAAM,UAAU,GACd,kBAAkB,CAAC,oCAAoC,CAAC,SAAS,CAAC,CAAC;QAErE,UAAU,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QAExE,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AA7EqB;IADnB,WAAW,EAAE;;qCAED,QAAQ;;iEAWpB;AAGmB;IADnB,WAAW,EAAE;;qCAED,QAAQ;;mEAYpB;AAGmB;IADnB,WAAW,EAAE;;qCAED,QAAQ;;sEAgBpB;AAGmB;IADnB,WAAW,EAAE;;qCAED,QAAQ;QACT,QAAQ;;gEAuBnB"}
@@ -429,6 +429,93 @@ export default class StatementGenerator {
429
429
  }
430
430
  continue;
431
431
  }
432
+ /*
433
+ * "resourceEntityScopes" is a synthetic query key (not a column): an
434
+ * array of already-resolved resource-facet selections. Each element
435
+ * compiles to
436
+ * (primaryEntityId IN (...) OR hasAny(entityKeys, [...]) OR
437
+ * attributes['resource.x'] IN (...))
438
+ * and the elements AND with each other.
439
+ *
440
+ * The OR is what makes one facet work across both ingestion shapes:
441
+ * agent telemetry has the resource in `primaryEntityId`, OTLP
442
+ * telemetry that carries a service.name only records it in
443
+ * `entityKeys`. The AND is what makes two different facets intersect
444
+ * ("cluster X" + "service Y") instead of union. See
445
+ * Common/Server/Utils/Telemetry/ResourceEntityFilter.
446
+ *
447
+ * Every branch is parameter-bound; branches whose backing column is
448
+ * absent on this model are dropped, and a scope left with no branch
449
+ * at all emits no predicate (never an empty IN, which would match
450
+ * nothing).
451
+ */
452
+ if (key === "resourceEntityScopes") {
453
+ const scopes = Array.isArray(value)
454
+ ? value
455
+ : [];
456
+ const primaryEntityIdColumn = this.model.getTableColumn("primaryEntityId");
457
+ const scopeEntityKeysColumn = this.model.getTableColumn("entityKeys");
458
+ const scopeAttributesColumn = this.model.getTableColumn("attributes");
459
+ for (const scope of scopes) {
460
+ if (!scope || typeof scope !== "object") {
461
+ continue;
462
+ }
463
+ const entityIds = (scope.entityIds || []).filter((id) => {
464
+ return typeof id === "string" && id.length > 0;
465
+ });
466
+ const membershipKeys = (scope.entityKeys || []).filter((entityKey) => {
467
+ return typeof entityKey === "string" && entityKey.length > 0;
468
+ });
469
+ const attributeValues = (scope.attributeValues || []).filter((attributeValue) => {
470
+ return typeof attributeValue === "string";
471
+ });
472
+ const branches = [];
473
+ if (entityIds.length > 0 && primaryEntityIdColumn) {
474
+ branches.push(SQL `${columnRef(primaryEntityIdColumn.key)} IN ${{
475
+ value: new Includes(entityIds),
476
+ type: primaryEntityIdColumn.type,
477
+ }}`);
478
+ }
479
+ if (membershipKeys.length > 0 &&
480
+ scopeEntityKeysColumn &&
481
+ scopeEntityKeysColumn.type === TableColumnType.ArrayText) {
482
+ branches.push(SQL `hasAny(${columnRef(scopeEntityKeysColumn.key)}, ${{
483
+ value: membershipKeys,
484
+ type: TableColumnType.ArrayText,
485
+ }})`);
486
+ }
487
+ if (attributeValues.length > 0 &&
488
+ scope.attributeKey &&
489
+ scopeAttributesColumn &&
490
+ scopeAttributesColumn.type === TableColumnType.MapStringString) {
491
+ branches.push(SQL `${columnRef(scopeAttributesColumn.key)}[${{
492
+ value: scope.attributeKey,
493
+ type: TableColumnType.Text,
494
+ }}] IN ${{
495
+ value: new Includes(attributeValues),
496
+ type: TableColumnType.Text,
497
+ }}`);
498
+ }
499
+ if (branches.length === 0) {
500
+ continue;
501
+ }
502
+ if (first) {
503
+ first = false;
504
+ }
505
+ else {
506
+ whereStatement.append(SQL ` `);
507
+ }
508
+ whereStatement.append(SQL `AND (`);
509
+ for (const [branchIndex, branch] of branches.entries()) {
510
+ if (branchIndex > 0) {
511
+ whereStatement.append(SQL ` OR `);
512
+ }
513
+ whereStatement.append(branch);
514
+ }
515
+ whereStatement.append(SQL `)`);
516
+ }
517
+ continue;
518
+ }
432
519
  const tableColumn = this.model.getTableColumn(key);
433
520
  if (!tableColumn) {
434
521
  throw new BadDataException(`Unknown column: ${key}`);
@@ -1 +1 @@
1
- {"version":3,"file":"StatementGenerator.js","sourceRoot":"","sources":["../../../../../Server/Utils/AnalyticsDatabase/StatementGenerator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StatementGenerator.js","sourceRoot":"","sources":["../../../../../Server/Utils/AnalyticsDatabase/StatementGenerator.ts"],"names":[],"mappings":"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"}