mirror of
https://github.com/OneUptime/oneuptime.git
synced 2026-04-06 00:32:12 +02:00
feat: Add Telemetry Ingestion Keys page to Settings
This commit is contained in:
@@ -40,6 +40,8 @@ import DomainService, {
|
||||
import EmailLogService, {
|
||||
Service as EmailLogServiceType,
|
||||
} from "CommonServer/Services/EmailLogService";
|
||||
import TelemetryIngestionKeyService,
|
||||
{ Service as TelemetryIngestionKeyServiceType, } from "CommonServer/Services/TelemetryIngestionKeyService";
|
||||
import EmailVerificationTokenService, {
|
||||
Service as EmailVerificationTokenServiceType,
|
||||
} from "CommonServer/Services/EmailVerificationTokenService";
|
||||
@@ -88,6 +90,8 @@ import LabelService, {
|
||||
import LogService, {
|
||||
LogService as LogServiceType,
|
||||
} from "CommonServer/Services/LogService";
|
||||
|
||||
|
||||
import TelemetryAttributeService, {
|
||||
TelemetryAttributeService as TelemetryAttributeServiceType,
|
||||
} from "CommonServer/Services/TelemetryAttributeService";
|
||||
@@ -388,6 +392,7 @@ import StatusPageCustomField from "Model/Models/StatusPageCustomField";
|
||||
import StatusPageFooterLink from "Model/Models/StatusPageFooterLink";
|
||||
import StatusPageGroup from "Model/Models/StatusPageGroup";
|
||||
import StatusPageHeaderLink from "Model/Models/StatusPageHeaderLink";
|
||||
import TelemetryIngestionKey from "Model/Models/TelemetryIngestionKey";
|
||||
import StatusPageHistoryChartBarColorRule from "Model/Models/StatusPageHistoryChartBarColorRule";
|
||||
import StatusPageOwnerTeam from "Model/Models/StatusPageOwnerTeam";
|
||||
import StatusPageOwnerUser from "Model/Models/StatusPageOwnerUser";
|
||||
@@ -446,6 +451,14 @@ const BaseAPIFeatureSet: FeatureSet = {
|
||||
>(MonitorMetricsByMinute, MonitorMetricsByMinuteService).getRouter(),
|
||||
);
|
||||
|
||||
app.use(
|
||||
`/${APP_NAME.toLocaleLowerCase()}`,
|
||||
new BaseAPI<TelemetryIngestionKey, TelemetryIngestionKeyServiceType>(
|
||||
TelemetryIngestionKey,
|
||||
TelemetryIngestionKeyService,
|
||||
).getRouter(),
|
||||
);
|
||||
|
||||
app.use(
|
||||
`/${APP_NAME.toLocaleLowerCase()}`,
|
||||
new BaseAnalyticsAPI<Span, SpanServiceType>(
|
||||
|
||||
21
CommonServer/Services/TelemetryIngestionKeyService.ts
Normal file
21
CommonServer/Services/TelemetryIngestionKeyService.ts
Normal file
@@ -0,0 +1,21 @@
|
||||
import PostgresDatabase from "../Infrastructure/PostgresDatabase";
|
||||
import CreateBy from "../Types/Database/CreateBy";
|
||||
import { OnCreate } from "../Types/Database/Hooks";
|
||||
import DatabaseService from "./DatabaseService";
|
||||
import ObjectID from "Common/Types/ObjectID";
|
||||
import Model from "Model/Models/TelemetryIngestionKey";
|
||||
|
||||
export class Service extends DatabaseService<Model> {
|
||||
public constructor(postgresDatabase?: PostgresDatabase) {
|
||||
super(Model, postgresDatabase);
|
||||
}
|
||||
|
||||
protected override async onBeforeCreate(
|
||||
createBy: CreateBy<Model>,
|
||||
): Promise<OnCreate<Model>> {
|
||||
createBy.data.secretKey = ObjectID.generate();
|
||||
return { createBy, carryForward: null };
|
||||
}
|
||||
}
|
||||
|
||||
export default new Service();
|
||||
Reference in New Issue
Block a user