@oneuptime/common 8.0.5387 → 8.0.5403

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 (81) hide show
  1. package/Models/AnalyticsModels/Index.ts +0 -2
  2. package/Models/DatabaseModels/TelemetryException.ts +0 -7
  3. package/Server/API/UserOnCallLogTimelineAPI.ts +21 -17
  4. package/Server/DatabaseConfig.ts +7 -2
  5. package/Server/EnvironmentConfig.ts +20 -7
  6. package/Server/Infrastructure/GlobalCache.ts +12 -5
  7. package/Server/Services/AlertService.ts +0 -10
  8. package/Server/Services/AnalyticsDatabaseService.ts +5 -0
  9. package/Server/Services/IncidentService.ts +0 -10
  10. package/Server/Services/Index.ts +0 -2
  11. package/Server/Services/TeamMemberService.ts +11 -2
  12. package/Server/Services/TelemetryAttributeService.ts +261 -48
  13. package/Server/Utils/Monitor/MonitorResource.ts +0 -16
  14. package/Server/Utils/Telemetry/Telemetry.ts +0 -61
  15. package/Types/Permission.ts +0 -3
  16. package/UI/Components/Filters/FilterViewer.tsx +5 -1
  17. package/UI/Components/Filters/FiltersForm.tsx +8 -1
  18. package/UI/Components/List/List.tsx +4 -0
  19. package/UI/Components/LogsViewer/LogsViewer.tsx +102 -55
  20. package/UI/Components/Markdown.tsx/MarkdownViewer.tsx +1 -1
  21. package/UI/Components/ModelTable/BaseModelTable.tsx +6 -0
  22. package/UI/Components/Table/Table.tsx +4 -0
  23. package/UI/Config.ts +28 -19
  24. package/UI/Utils/API/ApiDocsAPI.ts +6 -1
  25. package/UI/Utils/API/DashboardAPI.ts +2 -1
  26. package/UI/Utils/API/IdentityAPI.ts +6 -1
  27. package/build/dist/Models/AnalyticsModels/Index.js +0 -2
  28. package/build/dist/Models/AnalyticsModels/Index.js.map +1 -1
  29. package/build/dist/Models/DatabaseModels/TelemetryException.js +0 -7
  30. package/build/dist/Models/DatabaseModels/TelemetryException.js.map +1 -1
  31. package/build/dist/Server/API/UserOnCallLogTimelineAPI.js +6 -3
  32. package/build/dist/Server/API/UserOnCallLogTimelineAPI.js.map +1 -1
  33. package/build/dist/Server/DatabaseConfig.js +3 -2
  34. package/build/dist/Server/DatabaseConfig.js.map +1 -1
  35. package/build/dist/Server/EnvironmentConfig.js +8 -7
  36. package/build/dist/Server/EnvironmentConfig.js.map +1 -1
  37. package/build/dist/Server/Infrastructure/GlobalCache.js +11 -9
  38. package/build/dist/Server/Infrastructure/GlobalCache.js.map +1 -1
  39. package/build/dist/Server/Services/AlertService.js +0 -9
  40. package/build/dist/Server/Services/AlertService.js.map +1 -1
  41. package/build/dist/Server/Services/AnalyticsDatabaseService.js.map +1 -1
  42. package/build/dist/Server/Services/IncidentService.js +0 -9
  43. package/build/dist/Server/Services/IncidentService.js.map +1 -1
  44. package/build/dist/Server/Services/Index.js +0 -2
  45. package/build/dist/Server/Services/Index.js.map +1 -1
  46. package/build/dist/Server/Services/TeamMemberService.js +3 -2
  47. package/build/dist/Server/Services/TeamMemberService.js.map +1 -1
  48. package/build/dist/Server/Services/TelemetryAttributeService.js +165 -46
  49. package/build/dist/Server/Services/TelemetryAttributeService.js.map +1 -1
  50. package/build/dist/Server/Utils/Monitor/MonitorResource.js +0 -15
  51. package/build/dist/Server/Utils/Monitor/MonitorResource.js.map +1 -1
  52. package/build/dist/Server/Utils/Telemetry/Telemetry.js +0 -41
  53. package/build/dist/Server/Utils/Telemetry/Telemetry.js.map +1 -1
  54. package/build/dist/Types/Permission.js +0 -2
  55. package/build/dist/Types/Permission.js.map +1 -1
  56. package/build/dist/UI/Components/Filters/FilterViewer.js +2 -2
  57. package/build/dist/UI/Components/Filters/FilterViewer.js.map +1 -1
  58. package/build/dist/UI/Components/Filters/FiltersForm.js +6 -1
  59. package/build/dist/UI/Components/Filters/FiltersForm.js.map +1 -1
  60. package/build/dist/UI/Components/List/List.js +1 -1
  61. package/build/dist/UI/Components/List/List.js.map +1 -1
  62. package/build/dist/UI/Components/LogsViewer/LogsViewer.js +43 -16
  63. package/build/dist/UI/Components/LogsViewer/LogsViewer.js.map +1 -1
  64. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js +1 -1
  65. package/build/dist/UI/Components/Markdown.tsx/MarkdownViewer.js.map +1 -1
  66. package/build/dist/UI/Components/ModelTable/BaseModelTable.js +2 -2
  67. package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
  68. package/build/dist/UI/Components/Table/Table.js +1 -1
  69. package/build/dist/UI/Components/Table/Table.js.map +1 -1
  70. package/build/dist/UI/Config.js +20 -19
  71. package/build/dist/UI/Config.js.map +1 -1
  72. package/build/dist/UI/Utils/API/ApiDocsAPI.js +2 -1
  73. package/build/dist/UI/Utils/API/ApiDocsAPI.js.map +1 -1
  74. package/build/dist/UI/Utils/API/DashboardAPI.js +2 -1
  75. package/build/dist/UI/Utils/API/DashboardAPI.js.map +1 -1
  76. package/build/dist/UI/Utils/API/IdentityAPI.js +2 -1
  77. package/build/dist/UI/Utils/API/IdentityAPI.js.map +1 -1
  78. package/package.json +1 -1
  79. package/Models/AnalyticsModels/TelemetryAttribute.ts +0 -164
  80. package/build/dist/Models/AnalyticsModels/TelemetryAttribute.js +0 -154
  81. package/build/dist/Models/AnalyticsModels/TelemetryAttribute.js.map +0 -1
@@ -1,164 +0,0 @@
1
- import AnalyticsBaseModel from "./AnalyticsBaseModel/AnalyticsBaseModel";
2
- import Route from "../../Types/API/Route";
3
- import AnalyticsTableEngine from "../../Types/AnalyticsDatabase/AnalyticsTableEngine";
4
- import AnalyticsTableColumn from "../../Types/AnalyticsDatabase/TableColumn";
5
- import TableColumnType from "../../Types/AnalyticsDatabase/TableColumnType";
6
- import TelemetryType from "../../Types/Telemetry/TelemetryType";
7
- import ObjectID from "../../Types/ObjectID";
8
- import Permission from "../../Types/Permission";
9
-
10
- export default class TelemetryAttribute extends AnalyticsBaseModel {
11
- public constructor() {
12
- super({
13
- tableName: "TelemetryAttribute",
14
- tableEngine: AnalyticsTableEngine.MergeTree,
15
- singularName: "Telemetry Attribute",
16
- pluralName: "Telemetry Attributes",
17
- crudApiPath: new Route("/telemetry-attributes"),
18
- accessControl: {
19
- read: [
20
- Permission.ProjectOwner,
21
- Permission.ProjectAdmin,
22
- Permission.ProjectMember,
23
- Permission.ReadTelemetryServiceTraces,
24
- Permission.ReadTelemetryServiceLog,
25
- Permission.ReadTelemetryServiceMetrics,
26
- ],
27
- create: [
28
- Permission.ProjectOwner,
29
- Permission.ProjectAdmin,
30
- Permission.ProjectMember,
31
- Permission.CreateTelemetryServiceTraces,
32
- Permission.CreateTelemetryServiceLog,
33
- Permission.CreateTelemetryServiceMetrics,
34
- ],
35
- update: [
36
- Permission.ProjectOwner,
37
- Permission.ProjectAdmin,
38
- Permission.ProjectMember,
39
- Permission.EditTelemetryServiceTraces,
40
- Permission.EditTelemetryServiceLog,
41
- Permission.EditTelemetryServiceMetrics,
42
- ],
43
- delete: [
44
- Permission.ProjectOwner,
45
- Permission.ProjectAdmin,
46
- Permission.ProjectMember,
47
- Permission.DeleteTelemetryServiceTraces,
48
- Permission.DeleteTelemetryServiceLog,
49
- Permission.DeleteTelemetryServiceMetrics,
50
- ],
51
- },
52
- tableColumns: [
53
- new AnalyticsTableColumn({
54
- key: "projectId",
55
- title: "Project ID",
56
- description: "ID of project",
57
- required: true,
58
- type: TableColumnType.ObjectID,
59
- isTenantId: true,
60
- accessControl: {
61
- read: [
62
- Permission.ProjectOwner,
63
- Permission.ProjectAdmin,
64
- Permission.ProjectMember,
65
- Permission.ReadTelemetryServiceTraces,
66
- Permission.ReadTelemetryServiceLog,
67
- Permission.ReadTelemetryServiceMetrics,
68
- ],
69
- create: [
70
- Permission.ProjectOwner,
71
- Permission.ProjectAdmin,
72
- Permission.ProjectMember,
73
- Permission.EditTelemetryServiceTraces,
74
- Permission.EditTelemetryServiceLog,
75
- Permission.EditTelemetryServiceMetrics,
76
- ],
77
- update: [],
78
- },
79
- }),
80
-
81
- new AnalyticsTableColumn({
82
- key: "telemetryType",
83
- title: "Telemetry Type",
84
- description: "Type of telemetry",
85
- required: true,
86
- type: TableColumnType.Text,
87
- accessControl: {
88
- read: [
89
- Permission.ProjectOwner,
90
- Permission.ProjectAdmin,
91
- Permission.ProjectMember,
92
- Permission.ReadTelemetryServiceTraces,
93
- Permission.ReadTelemetryServiceLog,
94
- Permission.ReadTelemetryServiceMetrics,
95
- ],
96
- create: [
97
- Permission.ProjectOwner,
98
- Permission.ProjectAdmin,
99
- Permission.ProjectMember,
100
- Permission.EditTelemetryServiceTraces,
101
- Permission.EditTelemetryServiceLog,
102
- Permission.EditTelemetryServiceMetrics,
103
- ],
104
- update: [],
105
- },
106
- }),
107
-
108
- new AnalyticsTableColumn({
109
- key: "attributes",
110
- title: "Attributes",
111
- description: "Attributes",
112
- required: true,
113
- type: TableColumnType.JSONArray,
114
- accessControl: {
115
- read: [
116
- Permission.ProjectOwner,
117
- Permission.ProjectAdmin,
118
- Permission.ProjectMember,
119
- Permission.ReadTelemetryServiceTraces,
120
- Permission.ReadTelemetryServiceLog,
121
- Permission.ReadTelemetryServiceMetrics,
122
- ],
123
- create: [
124
- Permission.ProjectOwner,
125
- Permission.ProjectAdmin,
126
- Permission.ProjectMember,
127
- Permission.EditTelemetryServiceTraces,
128
- Permission.EditTelemetryServiceLog,
129
- Permission.EditTelemetryServiceMetrics,
130
- ],
131
- update: [],
132
- },
133
- }),
134
- ],
135
- sortKeys: ["projectId", "telemetryType"],
136
- primaryKeys: ["projectId", "telemetryType"],
137
- partitionKey: "sipHash64(projectId) % 16",
138
- });
139
- }
140
-
141
- public get projectId(): ObjectID | undefined {
142
- return this.getColumnValue("projectId") as ObjectID | undefined;
143
- }
144
-
145
- public set projectId(v: ObjectID | undefined) {
146
- this.setColumnValue("projectId", v);
147
- }
148
-
149
- public get telemetryType(): TelemetryType | undefined {
150
- return this.getColumnValue("telemetryType") as TelemetryType | undefined;
151
- }
152
-
153
- public set telemetryType(v: TelemetryType | undefined) {
154
- this.setColumnValue("telemetryType", v);
155
- }
156
-
157
- public get attributes(): Array<string> | undefined {
158
- return this.getColumnValue("attributes") as Array<string> | undefined;
159
- }
160
-
161
- public set attributes(v: Array<string> | undefined) {
162
- this.setColumnValue("attributes", v);
163
- }
164
- }
@@ -1,154 +0,0 @@
1
- import AnalyticsBaseModel from "./AnalyticsBaseModel/AnalyticsBaseModel";
2
- import Route from "../../Types/API/Route";
3
- import AnalyticsTableEngine from "../../Types/AnalyticsDatabase/AnalyticsTableEngine";
4
- import AnalyticsTableColumn from "../../Types/AnalyticsDatabase/TableColumn";
5
- import TableColumnType from "../../Types/AnalyticsDatabase/TableColumnType";
6
- import Permission from "../../Types/Permission";
7
- export default class TelemetryAttribute extends AnalyticsBaseModel {
8
- constructor() {
9
- super({
10
- tableName: "TelemetryAttribute",
11
- tableEngine: AnalyticsTableEngine.MergeTree,
12
- singularName: "Telemetry Attribute",
13
- pluralName: "Telemetry Attributes",
14
- crudApiPath: new Route("/telemetry-attributes"),
15
- accessControl: {
16
- read: [
17
- Permission.ProjectOwner,
18
- Permission.ProjectAdmin,
19
- Permission.ProjectMember,
20
- Permission.ReadTelemetryServiceTraces,
21
- Permission.ReadTelemetryServiceLog,
22
- Permission.ReadTelemetryServiceMetrics,
23
- ],
24
- create: [
25
- Permission.ProjectOwner,
26
- Permission.ProjectAdmin,
27
- Permission.ProjectMember,
28
- Permission.CreateTelemetryServiceTraces,
29
- Permission.CreateTelemetryServiceLog,
30
- Permission.CreateTelemetryServiceMetrics,
31
- ],
32
- update: [
33
- Permission.ProjectOwner,
34
- Permission.ProjectAdmin,
35
- Permission.ProjectMember,
36
- Permission.EditTelemetryServiceTraces,
37
- Permission.EditTelemetryServiceLog,
38
- Permission.EditTelemetryServiceMetrics,
39
- ],
40
- delete: [
41
- Permission.ProjectOwner,
42
- Permission.ProjectAdmin,
43
- Permission.ProjectMember,
44
- Permission.DeleteTelemetryServiceTraces,
45
- Permission.DeleteTelemetryServiceLog,
46
- Permission.DeleteTelemetryServiceMetrics,
47
- ],
48
- },
49
- tableColumns: [
50
- new AnalyticsTableColumn({
51
- key: "projectId",
52
- title: "Project ID",
53
- description: "ID of project",
54
- required: true,
55
- type: TableColumnType.ObjectID,
56
- isTenantId: true,
57
- accessControl: {
58
- read: [
59
- Permission.ProjectOwner,
60
- Permission.ProjectAdmin,
61
- Permission.ProjectMember,
62
- Permission.ReadTelemetryServiceTraces,
63
- Permission.ReadTelemetryServiceLog,
64
- Permission.ReadTelemetryServiceMetrics,
65
- ],
66
- create: [
67
- Permission.ProjectOwner,
68
- Permission.ProjectAdmin,
69
- Permission.ProjectMember,
70
- Permission.EditTelemetryServiceTraces,
71
- Permission.EditTelemetryServiceLog,
72
- Permission.EditTelemetryServiceMetrics,
73
- ],
74
- update: [],
75
- },
76
- }),
77
- new AnalyticsTableColumn({
78
- key: "telemetryType",
79
- title: "Telemetry Type",
80
- description: "Type of telemetry",
81
- required: true,
82
- type: TableColumnType.Text,
83
- accessControl: {
84
- read: [
85
- Permission.ProjectOwner,
86
- Permission.ProjectAdmin,
87
- Permission.ProjectMember,
88
- Permission.ReadTelemetryServiceTraces,
89
- Permission.ReadTelemetryServiceLog,
90
- Permission.ReadTelemetryServiceMetrics,
91
- ],
92
- create: [
93
- Permission.ProjectOwner,
94
- Permission.ProjectAdmin,
95
- Permission.ProjectMember,
96
- Permission.EditTelemetryServiceTraces,
97
- Permission.EditTelemetryServiceLog,
98
- Permission.EditTelemetryServiceMetrics,
99
- ],
100
- update: [],
101
- },
102
- }),
103
- new AnalyticsTableColumn({
104
- key: "attributes",
105
- title: "Attributes",
106
- description: "Attributes",
107
- required: true,
108
- type: TableColumnType.JSONArray,
109
- accessControl: {
110
- read: [
111
- Permission.ProjectOwner,
112
- Permission.ProjectAdmin,
113
- Permission.ProjectMember,
114
- Permission.ReadTelemetryServiceTraces,
115
- Permission.ReadTelemetryServiceLog,
116
- Permission.ReadTelemetryServiceMetrics,
117
- ],
118
- create: [
119
- Permission.ProjectOwner,
120
- Permission.ProjectAdmin,
121
- Permission.ProjectMember,
122
- Permission.EditTelemetryServiceTraces,
123
- Permission.EditTelemetryServiceLog,
124
- Permission.EditTelemetryServiceMetrics,
125
- ],
126
- update: [],
127
- },
128
- }),
129
- ],
130
- sortKeys: ["projectId", "telemetryType"],
131
- primaryKeys: ["projectId", "telemetryType"],
132
- partitionKey: "sipHash64(projectId) % 16",
133
- });
134
- }
135
- get projectId() {
136
- return this.getColumnValue("projectId");
137
- }
138
- set projectId(v) {
139
- this.setColumnValue("projectId", v);
140
- }
141
- get telemetryType() {
142
- return this.getColumnValue("telemetryType");
143
- }
144
- set telemetryType(v) {
145
- this.setColumnValue("telemetryType", v);
146
- }
147
- get attributes() {
148
- return this.getColumnValue("attributes");
149
- }
150
- set attributes(v) {
151
- this.setColumnValue("attributes", v);
152
- }
153
- }
154
- //# sourceMappingURL=TelemetryAttribute.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"TelemetryAttribute.js","sourceRoot":"","sources":["../../../../Models/AnalyticsModels/TelemetryAttribute.ts"],"names":[],"mappings":"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"}