@oneuptime/common 10.0.97 → 10.1.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/Server/Services/DockerHostService.ts +18 -5
- package/Server/Services/HostService.ts +55 -31
- package/Server/Utils/Monitor/MonitorAlert.ts +9 -3
- package/Server/Utils/Monitor/MonitorIncident.ts +9 -3
- package/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.tsx +5 -3
- package/UI/Components/Charts/ChartLibrary/BarChart/BarChart.tsx +7 -5
- package/UI/Components/Charts/ChartLibrary/LineChart/LineChart.tsx +7 -5
- package/UI/Components/ModelTable/BaseModelTable.tsx +3 -0
- package/build/dist/Server/Services/DockerHostService.js +12 -5
- package/build/dist/Server/Services/DockerHostService.js.map +1 -1
- package/build/dist/Server/Services/HostService.js +33 -25
- package/build/dist/Server/Services/HostService.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js +9 -3
- package/build/dist/Server/Utils/Monitor/MonitorAlert.js.map +1 -1
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js +9 -3
- package/build/dist/Server/Utils/Monitor/MonitorIncident.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js +5 -3
- package/build/dist/UI/Components/Charts/ChartLibrary/AreaChart/AreaChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js +7 -5
- package/build/dist/UI/Components/Charts/ChartLibrary/BarChart/BarChart.js.map +1 -1
- package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js +7 -5
- package/build/dist/UI/Components/Charts/ChartLibrary/LineChart/LineChart.js.map +1 -1
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js +3 -0
- package/build/dist/UI/Components/ModelTable/BaseModelTable.js.map +1 -1
- package/package.json +1 -1
|
@@ -6,6 +6,7 @@ import QueryHelper from "../Types/Database/QueryHelper";
|
|
|
6
6
|
import OneUptimeDate from "../../Types/Date";
|
|
7
7
|
import LIMIT_MAX from "../../Types/Database/LimitMax";
|
|
8
8
|
import GlobalCache from "../Infrastructure/GlobalCache";
|
|
9
|
+
import crypto from "crypto";
|
|
9
10
|
|
|
10
11
|
const LAST_SEEN_CACHE_NAMESPACE: string = "docker-host-last-seen";
|
|
11
12
|
const LAST_SEEN_THROTTLE_SECONDS: number = 60;
|
|
@@ -96,19 +97,31 @@ export class Service extends DatabaseService<Model> {
|
|
|
96
97
|
},
|
|
97
98
|
): Promise<void> {
|
|
98
99
|
const cacheKey: string = hostId.toString();
|
|
100
|
+
const extrasFingerprint: string = crypto
|
|
101
|
+
.createHash("sha1")
|
|
102
|
+
.update(
|
|
103
|
+
JSON.stringify({
|
|
104
|
+
osType: extra?.osType ?? null,
|
|
105
|
+
osVersion: extra?.osVersion ?? null,
|
|
106
|
+
}),
|
|
107
|
+
)
|
|
108
|
+
.digest("hex");
|
|
99
109
|
|
|
100
110
|
const cached: string | null = await GlobalCache.getString(
|
|
101
111
|
LAST_SEEN_CACHE_NAMESPACE,
|
|
102
112
|
cacheKey,
|
|
103
113
|
);
|
|
104
114
|
|
|
105
|
-
if (cached) {
|
|
106
|
-
return; //
|
|
115
|
+
if (cached === extrasFingerprint) {
|
|
116
|
+
return; // same data was written recently
|
|
107
117
|
}
|
|
108
118
|
|
|
109
|
-
await GlobalCache.setString(
|
|
110
|
-
|
|
111
|
-
|
|
119
|
+
await GlobalCache.setString(
|
|
120
|
+
LAST_SEEN_CACHE_NAMESPACE,
|
|
121
|
+
cacheKey,
|
|
122
|
+
extrasFingerprint,
|
|
123
|
+
{ expiresInSeconds: LAST_SEEN_THROTTLE_SECONDS },
|
|
124
|
+
);
|
|
112
125
|
|
|
113
126
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
114
127
|
const data: any = {
|
|
@@ -6,6 +6,7 @@ import QueryHelper from "../Types/Database/QueryHelper";
|
|
|
6
6
|
import OneUptimeDate from "../../Types/Date";
|
|
7
7
|
import LIMIT_MAX from "../../Types/Database/LimitMax";
|
|
8
8
|
import GlobalCache from "../Infrastructure/GlobalCache";
|
|
9
|
+
import crypto from "crypto";
|
|
9
10
|
|
|
10
11
|
const LAST_SEEN_CACHE_NAMESPACE: string = "host-last-seen";
|
|
11
12
|
const LAST_SEEN_THROTTLE_SECONDS: number = 60;
|
|
@@ -98,42 +99,30 @@ export class Service extends DatabaseService<Model> {
|
|
|
98
99
|
},
|
|
99
100
|
): Promise<void> {
|
|
100
101
|
/*
|
|
101
|
-
* Throttle the
|
|
102
|
-
*
|
|
103
|
-
*
|
|
104
|
-
*
|
|
105
|
-
*
|
|
102
|
+
* Throttle: the same telemetry batch repeats every metric/log/trace
|
|
103
|
+
* push and re-sends identical host metadata. Skip the DB write when
|
|
104
|
+
* we recently wrote the exact same values; only refresh `lastSeenAt`
|
|
105
|
+
* once per throttle window. If any extra value changed (e.g. cpuCores
|
|
106
|
+
* updated, IP address changed), bust the cache and write immediately.
|
|
106
107
|
*/
|
|
107
|
-
const
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
extra.hostIpAddresses ||
|
|
113
|
-
extra.cpuCores !== undefined ||
|
|
114
|
-
extra.totalMemoryBytes !== undefined ||
|
|
115
|
-
extra.processCount !== undefined ||
|
|
116
|
-
extra.containerRuntime ||
|
|
117
|
-
extra.dockerHostId ||
|
|
118
|
-
extra.kubernetesClusterId),
|
|
108
|
+
const cacheKey: string = hostId.toString();
|
|
109
|
+
const extrasFingerprint: string = this.fingerprintExtras(extra);
|
|
110
|
+
const cached: string | null = await GlobalCache.getString(
|
|
111
|
+
LAST_SEEN_CACHE_NAMESPACE,
|
|
112
|
+
cacheKey,
|
|
119
113
|
);
|
|
120
114
|
|
|
121
|
-
if (
|
|
122
|
-
|
|
123
|
-
const cached: string | null = await GlobalCache.getString(
|
|
124
|
-
LAST_SEEN_CACHE_NAMESPACE,
|
|
125
|
-
cacheKey,
|
|
126
|
-
);
|
|
127
|
-
|
|
128
|
-
if (cached) {
|
|
129
|
-
return; // another pod already updated recently
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
await GlobalCache.setString(LAST_SEEN_CACHE_NAMESPACE, cacheKey, "1", {
|
|
133
|
-
expiresInSeconds: LAST_SEEN_THROTTLE_SECONDS,
|
|
134
|
-
});
|
|
115
|
+
if (cached === extrasFingerprint) {
|
|
116
|
+
return; // same data was written recently
|
|
135
117
|
}
|
|
136
118
|
|
|
119
|
+
await GlobalCache.setString(
|
|
120
|
+
LAST_SEEN_CACHE_NAMESPACE,
|
|
121
|
+
cacheKey,
|
|
122
|
+
extrasFingerprint,
|
|
123
|
+
{ expiresInSeconds: LAST_SEEN_THROTTLE_SECONDS },
|
|
124
|
+
);
|
|
125
|
+
|
|
137
126
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
138
127
|
const data: any = {
|
|
139
128
|
lastSeenAt: OneUptimeDate.getCurrentDate(),
|
|
@@ -186,6 +175,41 @@ export class Service extends DatabaseService<Model> {
|
|
|
186
175
|
});
|
|
187
176
|
}
|
|
188
177
|
|
|
178
|
+
private fingerprintExtras(extra?: {
|
|
179
|
+
osType?: string | undefined;
|
|
180
|
+
osVersion?: string | undefined;
|
|
181
|
+
hostId?: string | undefined;
|
|
182
|
+
hostArch?: string | undefined;
|
|
183
|
+
hostType?: string | undefined;
|
|
184
|
+
hostIpAddresses?: string | undefined;
|
|
185
|
+
cpuCores?: number | undefined;
|
|
186
|
+
totalMemoryBytes?: number | undefined;
|
|
187
|
+
processCount?: number | undefined;
|
|
188
|
+
containerRuntime?: string | undefined;
|
|
189
|
+
dockerHostId?: ObjectID | undefined;
|
|
190
|
+
kubernetesClusterId?: ObjectID | undefined;
|
|
191
|
+
}): string {
|
|
192
|
+
const normalized: Record<string, string | number | null> = {
|
|
193
|
+
osType: extra?.osType ?? null,
|
|
194
|
+
osVersion: extra?.osVersion ?? null,
|
|
195
|
+
hostId: extra?.hostId ?? null,
|
|
196
|
+
hostArch: extra?.hostArch ?? null,
|
|
197
|
+
hostType: extra?.hostType ?? null,
|
|
198
|
+
hostIpAddresses: extra?.hostIpAddresses ?? null,
|
|
199
|
+
cpuCores: extra?.cpuCores ?? null,
|
|
200
|
+
totalMemoryBytes: extra?.totalMemoryBytes ?? null,
|
|
201
|
+
processCount: extra?.processCount ?? null,
|
|
202
|
+
containerRuntime: extra?.containerRuntime ?? null,
|
|
203
|
+
dockerHostId: extra?.dockerHostId?.toString() ?? null,
|
|
204
|
+
kubernetesClusterId: extra?.kubernetesClusterId?.toString() ?? null,
|
|
205
|
+
};
|
|
206
|
+
|
|
207
|
+
return crypto
|
|
208
|
+
.createHash("sha1")
|
|
209
|
+
.update(JSON.stringify(normalized))
|
|
210
|
+
.digest("hex");
|
|
211
|
+
}
|
|
212
|
+
|
|
189
213
|
@CaptureSpan()
|
|
190
214
|
public async markDisconnectedHosts(): Promise<void> {
|
|
191
215
|
const fiveMinutesAgo: Date = OneUptimeDate.addRemoveMinutes(
|
|
@@ -275,11 +275,17 @@ export default class MonitorAlert {
|
|
|
275
275
|
* Link the alert to the Host that emitted this series, if
|
|
276
276
|
* the metric carried a `host.name` resource attribute. The
|
|
277
277
|
* Host record was auto-discovered during OTel ingestion.
|
|
278
|
+
* Metric attributes are stored with the `resource.` prefix in
|
|
279
|
+
* ClickHouse, so the group-by dropdown surfaces
|
|
280
|
+
* `resource.host.name` — but accept the bare `host.name` too
|
|
281
|
+
* for any non-OTel ingest paths.
|
|
278
282
|
*/
|
|
279
283
|
const hostName: string | undefined =
|
|
280
|
-
typeof seriesLabels["host.name"] === "string"
|
|
281
|
-
? (seriesLabels["host.name"] as string)
|
|
282
|
-
:
|
|
284
|
+
typeof seriesLabels["resource.host.name"] === "string"
|
|
285
|
+
? (seriesLabels["resource.host.name"] as string)
|
|
286
|
+
: typeof seriesLabels["host.name"] === "string"
|
|
287
|
+
? (seriesLabels["host.name"] as string)
|
|
288
|
+
: undefined;
|
|
283
289
|
|
|
284
290
|
if (hostName) {
|
|
285
291
|
const host: Host | null = await HostService.findOneBy({
|
|
@@ -320,11 +320,17 @@ export default class MonitorIncident {
|
|
|
320
320
|
* Link the incident to the Host that emitted this series, if
|
|
321
321
|
* the metric carried a `host.name` resource attribute. The
|
|
322
322
|
* Host record was auto-discovered during OTel ingestion.
|
|
323
|
+
* Metric attributes are stored with the `resource.` prefix in
|
|
324
|
+
* ClickHouse, so the group-by dropdown surfaces
|
|
325
|
+
* `resource.host.name` — but accept the bare `host.name` too
|
|
326
|
+
* for any non-OTel ingest paths.
|
|
323
327
|
*/
|
|
324
328
|
const hostName: string | undefined =
|
|
325
|
-
typeof seriesLabels["host.name"] === "string"
|
|
326
|
-
? (seriesLabels["host.name"] as string)
|
|
327
|
-
:
|
|
329
|
+
typeof seriesLabels["resource.host.name"] === "string"
|
|
330
|
+
? (seriesLabels["resource.host.name"] as string)
|
|
331
|
+
: typeof seriesLabels["host.name"] === "string"
|
|
332
|
+
? (seriesLabels["host.name"] as string)
|
|
333
|
+
: undefined;
|
|
328
334
|
|
|
329
335
|
if (hostName) {
|
|
330
336
|
const host: Host | null = await HostService.findOneBy({
|
|
@@ -736,7 +736,8 @@ const AreaChart: React.ForwardRefExoticComponent<
|
|
|
736
736
|
dataKey={index}
|
|
737
737
|
interval={startEndOnly ? "preserveStartEnd" : intervalType}
|
|
738
738
|
tick={{
|
|
739
|
-
transform: "translate(0,
|
|
739
|
+
transform: "translate(0, 6)",
|
|
740
|
+
fontSize: 10,
|
|
740
741
|
fontWeight: 500,
|
|
741
742
|
}}
|
|
742
743
|
ticks={
|
|
@@ -752,7 +753,7 @@ const AreaChart: React.ForwardRefExoticComponent<
|
|
|
752
753
|
}
|
|
753
754
|
fill=""
|
|
754
755
|
stroke=""
|
|
755
|
-
className={cx("
|
|
756
|
+
className={cx("tabular-nums", "fill-gray-500")}
|
|
756
757
|
tickLine={false}
|
|
757
758
|
axisLine={false}
|
|
758
759
|
minTickGap={tickGap}
|
|
@@ -776,11 +777,12 @@ const AreaChart: React.ForwardRefExoticComponent<
|
|
|
776
777
|
domain={yAxisDomain as AxisDomain}
|
|
777
778
|
tick={{
|
|
778
779
|
transform: "translate(-4, 0)",
|
|
780
|
+
fontSize: 10,
|
|
779
781
|
fontWeight: 500,
|
|
780
782
|
}}
|
|
781
783
|
fill=""
|
|
782
784
|
stroke=""
|
|
783
|
-
className={cx("
|
|
785
|
+
className={cx("tabular-nums", "fill-gray-500")}
|
|
784
786
|
tickFormatter={valueFormatter}
|
|
785
787
|
allowDecimals={allowDecimals}
|
|
786
788
|
>
|
|
@@ -815,16 +815,17 @@ const BarChart: React.ForwardRefExoticComponent<
|
|
|
815
815
|
hide={!showXAxis}
|
|
816
816
|
tick={{
|
|
817
817
|
transform:
|
|
818
|
-
layout !== "vertical" ? "translate(0,
|
|
818
|
+
layout !== "vertical" ? "translate(0, 6)" : undefined,
|
|
819
|
+
fontSize: 10,
|
|
819
820
|
fontWeight: 500,
|
|
820
821
|
}}
|
|
821
822
|
fill=""
|
|
822
823
|
stroke=""
|
|
823
824
|
className={cx(
|
|
824
825
|
// base
|
|
825
|
-
"
|
|
826
|
+
"tabular-nums",
|
|
826
827
|
// text fill
|
|
827
|
-
"fill-gray-
|
|
828
|
+
"fill-gray-500",
|
|
828
829
|
{ "mt-4": layout !== "vertical" },
|
|
829
830
|
)}
|
|
830
831
|
tickLine={false}
|
|
@@ -874,15 +875,16 @@ const BarChart: React.ForwardRefExoticComponent<
|
|
|
874
875
|
stroke=""
|
|
875
876
|
className={cx(
|
|
876
877
|
// base
|
|
877
|
-
"
|
|
878
|
+
"tabular-nums",
|
|
878
879
|
// text fill
|
|
879
|
-
"fill-gray-
|
|
880
|
+
"fill-gray-500",
|
|
880
881
|
)}
|
|
881
882
|
tick={{
|
|
882
883
|
transform:
|
|
883
884
|
layout !== "vertical"
|
|
884
885
|
? "translate(-4, 0)"
|
|
885
886
|
: "translate(0, 0)",
|
|
887
|
+
fontSize: 10,
|
|
886
888
|
fontWeight: 500,
|
|
887
889
|
}}
|
|
888
890
|
{...(layout !== "vertical"
|
|
@@ -730,7 +730,8 @@ const LineChart: React.ForwardRefExoticComponent<
|
|
|
730
730
|
dataKey={index}
|
|
731
731
|
interval={startEndOnly ? "preserveStartEnd" : intervalType}
|
|
732
732
|
tick={{
|
|
733
|
-
transform: "translate(0,
|
|
733
|
+
transform: "translate(0, 6)",
|
|
734
|
+
fontSize: 10,
|
|
734
735
|
fontWeight: 500,
|
|
735
736
|
}}
|
|
736
737
|
ticks={
|
|
@@ -745,9 +746,9 @@ const LineChart: React.ForwardRefExoticComponent<
|
|
|
745
746
|
stroke=""
|
|
746
747
|
className={cx(
|
|
747
748
|
// base
|
|
748
|
-
"
|
|
749
|
+
"tabular-nums",
|
|
749
750
|
// text fill
|
|
750
|
-
"fill-gray-
|
|
751
|
+
"fill-gray-500",
|
|
751
752
|
)}
|
|
752
753
|
tickLine={false}
|
|
753
754
|
axisLine={false}
|
|
@@ -772,15 +773,16 @@ const LineChart: React.ForwardRefExoticComponent<
|
|
|
772
773
|
domain={yAxisDomain as AxisDomain}
|
|
773
774
|
tick={{
|
|
774
775
|
transform: "translate(-4, 0)",
|
|
776
|
+
fontSize: 10,
|
|
775
777
|
fontWeight: 500,
|
|
776
778
|
}}
|
|
777
779
|
fill=""
|
|
778
780
|
stroke=""
|
|
779
781
|
className={cx(
|
|
780
782
|
// base
|
|
781
|
-
"
|
|
783
|
+
"tabular-nums",
|
|
782
784
|
// text fill
|
|
783
|
-
"fill-gray-
|
|
785
|
+
"fill-gray-500",
|
|
784
786
|
)}
|
|
785
787
|
tickFormatter={valueFormatter}
|
|
786
788
|
allowDecimals={allowDecimals}
|
|
@@ -1021,6 +1021,7 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
|
|
|
1021
1021
|
setItemsOnPage(tableView.itemsOnPage || 10);
|
|
1022
1022
|
setSortBy((sortBy as keyof TBaseModel) || null);
|
|
1023
1023
|
setSortOrder(sortOrder);
|
|
1024
|
+
setCurrentPageNumber(1);
|
|
1024
1025
|
|
|
1025
1026
|
if (classicTableFilters.length === 0) {
|
|
1026
1027
|
await getFilterDropdownItems();
|
|
@@ -1030,6 +1031,7 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
|
|
|
1030
1031
|
setSortBy(null);
|
|
1031
1032
|
setSortOrder(SortOrder.Descending);
|
|
1032
1033
|
setItemsOnPage(10);
|
|
1034
|
+
setCurrentPageNumber(1);
|
|
1033
1035
|
}
|
|
1034
1036
|
}}
|
|
1035
1037
|
/>
|
|
@@ -1486,6 +1488,7 @@ const BaseModelTable: <TBaseModel extends BaseModel | AnalyticsBaseModel>(
|
|
|
1486
1488
|
const newQuery: Query<TBaseModel> = {};
|
|
1487
1489
|
|
|
1488
1490
|
setFilterData(filterData);
|
|
1491
|
+
setCurrentPageNumber(1);
|
|
1489
1492
|
|
|
1490
1493
|
for (const key in filterData) {
|
|
1491
1494
|
if (filterData[key] && typeof filterData[key] === Typeof.String) {
|
|
@@ -15,6 +15,7 @@ import QueryHelper from "../Types/Database/QueryHelper";
|
|
|
15
15
|
import OneUptimeDate from "../../Types/Date";
|
|
16
16
|
import LIMIT_MAX from "../../Types/Database/LimitMax";
|
|
17
17
|
import GlobalCache from "../Infrastructure/GlobalCache";
|
|
18
|
+
import crypto from "crypto";
|
|
18
19
|
const LAST_SEEN_CACHE_NAMESPACE = "docker-host-last-seen";
|
|
19
20
|
const LAST_SEEN_THROTTLE_SECONDS = 60;
|
|
20
21
|
export class Service extends DatabaseService {
|
|
@@ -82,14 +83,20 @@ export class Service extends DatabaseService {
|
|
|
82
83
|
}
|
|
83
84
|
}
|
|
84
85
|
async updateLastSeen(hostId, extra) {
|
|
86
|
+
var _a, _b;
|
|
85
87
|
const cacheKey = hostId.toString();
|
|
88
|
+
const extrasFingerprint = crypto
|
|
89
|
+
.createHash("sha1")
|
|
90
|
+
.update(JSON.stringify({
|
|
91
|
+
osType: (_a = extra === null || extra === void 0 ? void 0 : extra.osType) !== null && _a !== void 0 ? _a : null,
|
|
92
|
+
osVersion: (_b = extra === null || extra === void 0 ? void 0 : extra.osVersion) !== null && _b !== void 0 ? _b : null,
|
|
93
|
+
}))
|
|
94
|
+
.digest("hex");
|
|
86
95
|
const cached = await GlobalCache.getString(LAST_SEEN_CACHE_NAMESPACE, cacheKey);
|
|
87
|
-
if (cached) {
|
|
88
|
-
return; //
|
|
96
|
+
if (cached === extrasFingerprint) {
|
|
97
|
+
return; // same data was written recently
|
|
89
98
|
}
|
|
90
|
-
await GlobalCache.setString(LAST_SEEN_CACHE_NAMESPACE, cacheKey,
|
|
91
|
-
expiresInSeconds: LAST_SEEN_THROTTLE_SECONDS,
|
|
92
|
-
});
|
|
99
|
+
await GlobalCache.setString(LAST_SEEN_CACHE_NAMESPACE, cacheKey, extrasFingerprint, { expiresInSeconds: LAST_SEEN_THROTTLE_SECONDS });
|
|
93
100
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
94
101
|
const data = {
|
|
95
102
|
lastSeenAt: OneUptimeDate.getCurrentDate(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DockerHostService.js","sourceRoot":"","sources":["../../../../Server/Services/DockerHostService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,wCAAwC,CAAC;AAC3D,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,+BAA+B,CAAC;AACxD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,SAAS,MAAM,+BAA+B,CAAC;AACtD,OAAO,WAAW,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"DockerHostService.js","sourceRoot":"","sources":["../../../../Server/Services/DockerHostService.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,6 +15,7 @@ import QueryHelper from "../Types/Database/QueryHelper";
|
|
|
15
15
|
import OneUptimeDate from "../../Types/Date";
|
|
16
16
|
import LIMIT_MAX from "../../Types/Database/LimitMax";
|
|
17
17
|
import GlobalCache from "../Infrastructure/GlobalCache";
|
|
18
|
+
import crypto from "crypto";
|
|
18
19
|
const LAST_SEEN_CACHE_NAMESPACE = "host-last-seen";
|
|
19
20
|
const LAST_SEEN_THROTTLE_SECONDS = 60;
|
|
20
21
|
export class Service extends DatabaseService {
|
|
@@ -77,33 +78,19 @@ export class Service extends DatabaseService {
|
|
|
77
78
|
}
|
|
78
79
|
async updateLastSeen(hostId, extra) {
|
|
79
80
|
/*
|
|
80
|
-
* Throttle the
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
81
|
+
* Throttle: the same telemetry batch repeats every metric/log/trace
|
|
82
|
+
* push and re-sends identical host metadata. Skip the DB write when
|
|
83
|
+
* we recently wrote the exact same values; only refresh `lastSeenAt`
|
|
84
|
+
* once per throttle window. If any extra value changed (e.g. cpuCores
|
|
85
|
+
* updated, IP address changed), bust the cache and write immediately.
|
|
85
86
|
*/
|
|
86
|
-
const
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
extra.cpuCores !== undefined ||
|
|
92
|
-
extra.totalMemoryBytes !== undefined ||
|
|
93
|
-
extra.processCount !== undefined ||
|
|
94
|
-
extra.containerRuntime ||
|
|
95
|
-
extra.dockerHostId ||
|
|
96
|
-
extra.kubernetesClusterId));
|
|
97
|
-
if (!hasRichExtras) {
|
|
98
|
-
const cacheKey = hostId.toString();
|
|
99
|
-
const cached = await GlobalCache.getString(LAST_SEEN_CACHE_NAMESPACE, cacheKey);
|
|
100
|
-
if (cached) {
|
|
101
|
-
return; // another pod already updated recently
|
|
102
|
-
}
|
|
103
|
-
await GlobalCache.setString(LAST_SEEN_CACHE_NAMESPACE, cacheKey, "1", {
|
|
104
|
-
expiresInSeconds: LAST_SEEN_THROTTLE_SECONDS,
|
|
105
|
-
});
|
|
87
|
+
const cacheKey = hostId.toString();
|
|
88
|
+
const extrasFingerprint = this.fingerprintExtras(extra);
|
|
89
|
+
const cached = await GlobalCache.getString(LAST_SEEN_CACHE_NAMESPACE, cacheKey);
|
|
90
|
+
if (cached === extrasFingerprint) {
|
|
91
|
+
return; // same data was written recently
|
|
106
92
|
}
|
|
93
|
+
await GlobalCache.setString(LAST_SEEN_CACHE_NAMESPACE, cacheKey, extrasFingerprint, { expiresInSeconds: LAST_SEEN_THROTTLE_SECONDS });
|
|
107
94
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
108
95
|
const data = {
|
|
109
96
|
lastSeenAt: OneUptimeDate.getCurrentDate(),
|
|
@@ -153,6 +140,27 @@ export class Service extends DatabaseService {
|
|
|
153
140
|
},
|
|
154
141
|
});
|
|
155
142
|
}
|
|
143
|
+
fingerprintExtras(extra) {
|
|
144
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
145
|
+
const normalized = {
|
|
146
|
+
osType: (_a = extra === null || extra === void 0 ? void 0 : extra.osType) !== null && _a !== void 0 ? _a : null,
|
|
147
|
+
osVersion: (_b = extra === null || extra === void 0 ? void 0 : extra.osVersion) !== null && _b !== void 0 ? _b : null,
|
|
148
|
+
hostId: (_c = extra === null || extra === void 0 ? void 0 : extra.hostId) !== null && _c !== void 0 ? _c : null,
|
|
149
|
+
hostArch: (_d = extra === null || extra === void 0 ? void 0 : extra.hostArch) !== null && _d !== void 0 ? _d : null,
|
|
150
|
+
hostType: (_e = extra === null || extra === void 0 ? void 0 : extra.hostType) !== null && _e !== void 0 ? _e : null,
|
|
151
|
+
hostIpAddresses: (_f = extra === null || extra === void 0 ? void 0 : extra.hostIpAddresses) !== null && _f !== void 0 ? _f : null,
|
|
152
|
+
cpuCores: (_g = extra === null || extra === void 0 ? void 0 : extra.cpuCores) !== null && _g !== void 0 ? _g : null,
|
|
153
|
+
totalMemoryBytes: (_h = extra === null || extra === void 0 ? void 0 : extra.totalMemoryBytes) !== null && _h !== void 0 ? _h : null,
|
|
154
|
+
processCount: (_j = extra === null || extra === void 0 ? void 0 : extra.processCount) !== null && _j !== void 0 ? _j : null,
|
|
155
|
+
containerRuntime: (_k = extra === null || extra === void 0 ? void 0 : extra.containerRuntime) !== null && _k !== void 0 ? _k : null,
|
|
156
|
+
dockerHostId: (_m = (_l = extra === null || extra === void 0 ? void 0 : extra.dockerHostId) === null || _l === void 0 ? void 0 : _l.toString()) !== null && _m !== void 0 ? _m : null,
|
|
157
|
+
kubernetesClusterId: (_p = (_o = extra === null || extra === void 0 ? void 0 : extra.kubernetesClusterId) === null || _o === void 0 ? void 0 : _o.toString()) !== null && _p !== void 0 ? _p : null,
|
|
158
|
+
};
|
|
159
|
+
return crypto
|
|
160
|
+
.createHash("sha1")
|
|
161
|
+
.update(JSON.stringify(normalized))
|
|
162
|
+
.digest("hex");
|
|
163
|
+
}
|
|
156
164
|
async markDisconnectedHosts() {
|
|
157
165
|
const fiveMinutesAgo = OneUptimeDate.addRemoveMinutes(OneUptimeDate.getCurrentDate(), -5);
|
|
158
166
|
const connectedHosts = await this.findBy({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HostService.js","sourceRoot":"","sources":["../../../../Server/Services/HostService.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,eAAe,MAAM,mBAAmB,CAAC;AAChD,OAAO,KAAK,MAAM,kCAAkC,CAAC;AACrD,OAAO,WAAW,MAAM,gCAAgC,CAAC;AACzD,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,WAAW,MAAM,+BAA+B,CAAC;AACxD,OAAO,aAAa,MAAM,kBAAkB,CAAC;AAC7C,OAAO,SAAS,MAAM,+BAA+B,CAAC;AACtD,OAAO,WAAW,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"HostService.js","sourceRoot":"","sources":["../../../../Server/Services/HostService.ts"],"names":[],"mappings":"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"}
|
|
@@ -193,10 +193,16 @@ export default class MonitorAlert {
|
|
|
193
193
|
* Link the alert to the Host that emitted this series, if
|
|
194
194
|
* the metric carried a `host.name` resource attribute. The
|
|
195
195
|
* Host record was auto-discovered during OTel ingestion.
|
|
196
|
+
* Metric attributes are stored with the `resource.` prefix in
|
|
197
|
+
* ClickHouse, so the group-by dropdown surfaces
|
|
198
|
+
* `resource.host.name` — but accept the bare `host.name` too
|
|
199
|
+
* for any non-OTel ingest paths.
|
|
196
200
|
*/
|
|
197
|
-
const hostName = typeof seriesLabels["host.name"] === "string"
|
|
198
|
-
? seriesLabels["host.name"]
|
|
199
|
-
:
|
|
201
|
+
const hostName = typeof seriesLabels["resource.host.name"] === "string"
|
|
202
|
+
? seriesLabels["resource.host.name"]
|
|
203
|
+
: typeof seriesLabels["host.name"] === "string"
|
|
204
|
+
? seriesLabels["host.name"]
|
|
205
|
+
: undefined;
|
|
200
206
|
if (hostName) {
|
|
201
207
|
const host = await HostService.findOneBy({
|
|
202
208
|
query: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MonitorAlert.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorAlert.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MonitorAlert.js","sourceRoot":"","sources":["../../../../../Server/Utils/Monitor/MonitorAlert.ts"],"names":[],"mappings":"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"}
|
|
@@ -217,10 +217,16 @@ export default class MonitorIncident {
|
|
|
217
217
|
* Link the incident to the Host that emitted this series, if
|
|
218
218
|
* the metric carried a `host.name` resource attribute. The
|
|
219
219
|
* Host record was auto-discovered during OTel ingestion.
|
|
220
|
+
* Metric attributes are stored with the `resource.` prefix in
|
|
221
|
+
* ClickHouse, so the group-by dropdown surfaces
|
|
222
|
+
* `resource.host.name` — but accept the bare `host.name` too
|
|
223
|
+
* for any non-OTel ingest paths.
|
|
220
224
|
*/
|
|
221
|
-
const hostName = typeof seriesLabels["host.name"] === "string"
|
|
222
|
-
? seriesLabels["host.name"]
|
|
223
|
-
:
|
|
225
|
+
const hostName = typeof seriesLabels["resource.host.name"] === "string"
|
|
226
|
+
? seriesLabels["resource.host.name"]
|
|
227
|
+
: typeof seriesLabels["host.name"] === "string"
|
|
228
|
+
? seriesLabels["host.name"]
|
|
229
|
+
: undefined;
|
|
224
230
|
if (hostName) {
|
|
225
231
|
const host = await HostService.findOneBy({
|
|
226
232
|
query: {
|