blob: 050f9e67f32cbe01de4f6b4d1377722aef6cbb6f [file] [log] [blame]
/**
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
* this work for additional information regarding copyright ownership.
* The ASF licenses this file to You under the Apache License, Version 2.0
* (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { Duration } from './global';
export interface Value {
value: number;
}
export interface CompsContainer {
service: CompsItem[];
database: CompsItem[];
proxy: CompsItem[];
}
export interface CompsItem {
o: string;
comp: string;
n: string;
t: string;
type?: string;
width: number;
entityType: string;
height: number;
}
export interface CompsGroup {
name: string;
children: CompsItem[];
}
export interface CompsTree {
name?: string;
serviceGroup?: string;
type: string;
query: any;
children: any;
}
interface Fragment {
fragment: string;
variable: string;
}
export enum TemplateType {
DASHBOARD,
TOPOLOGY_SERVICE,
TOPOLOGY_INSTANCE,
TOPOLOGY_ENDPOINT,
TOPOLOGY_SERVICE_RELATION,
TOPOLOGY_SERVICE_INSTANCE_RELATION,
}
export interface DashboardTemplate {
name: string;
type: TemplateType;
configuration: string;
activated: boolean;
disabled: boolean;
}
export interface QueryEventCondition {
uuid: string;
source: SourceInput;
name: string;
type: EventType;
time: Duration;
order: string;
paging: { pageNum: number; pageSize: number; needTotal: boolean };
}
type SourceInput = {
service: String;
serviceInstance: String;
endpoint: String;
};
export enum EventType {
Normal,
Error,
}
export type Event = {
uuid: string;
source: SourceInput;
name: string;
type: string;
message: string;
parameters: { key: string; value: string }[];
startTime: number | string;
endTime: number | string;
entityType?: string;
checked?: boolean;
scope?: string;
};