Edge events implementation unfinished
This commit is contained in:
parent
1b9552033b
commit
fe9d58d3d3
@ -14,14 +14,16 @@
|
|||||||
/// limitations under the License.
|
/// limitations under the License.
|
||||||
///
|
///
|
||||||
|
|
||||||
import {Inject, Injectable} from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { defaultHttpOptionsFromConfig, RequestConfig } from './http-utils';
|
import { defaultHttpOptionsFromConfig, RequestConfig } from './http-utils';
|
||||||
import { Observable } from 'rxjs';
|
import { Observable } from 'rxjs';
|
||||||
import { HttpClient } from '@angular/common/http';
|
import { HttpClient } from '@angular/common/http';
|
||||||
import { PageLink } from '@shared/models/page/page-link';
|
import { PageLink, TimePageLink } from '@shared/models/page/page-link';
|
||||||
import { PageData } from '@shared/models/page/page-data';
|
import { PageData } from '@shared/models/page/page-data';
|
||||||
import { EntitySubtype } from '@app/shared/models/entity-type.models';
|
import { EntitySubtype } from '@app/shared/models/entity-type.models';
|
||||||
import { Edge, EdgeInfo, EdgeSearchQuery } from "@shared/models/edge.models";
|
import { Edge, EdgeInfo, EdgeSearchQuery } from "@shared/models/edge.models";
|
||||||
|
import { EntityId } from "@shared/models/id/entity-id";
|
||||||
|
import { Event } from "@shared/models/event.models";
|
||||||
@Injectable({
|
@Injectable({
|
||||||
providedIn: 'root'
|
providedIn: 'root'
|
||||||
})
|
})
|
||||||
@ -96,4 +98,8 @@ export class EdgeService {
|
|||||||
return this.http.post<Array<Edge>>('/api/edges', query, defaultHttpOptionsFromConfig(config));
|
return this.http.post<Array<Edge>>('/api/edges', query, defaultHttpOptionsFromConfig(config));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public getEdgeEvents(entityId: EntityId, pageLink: TimePageLink, config?: RequestConfig): Observable<PageData<Event>> {
|
||||||
|
return this.http.get<PageData<Event>>(`/api/edge/${entityId.id}/events` + `${pageLink.toQuery()}`,
|
||||||
|
defaultHttpOptionsFromConfig(config));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -38,4 +38,9 @@ export class EventService {
|
|||||||
`${pageLink.toQuery()}&tenantId=${tenantId}`,
|
`${pageLink.toQuery()}&tenantId=${tenantId}`,
|
||||||
defaultHttpOptionsFromConfig(config));
|
defaultHttpOptionsFromConfig(config));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public getEdgeEvents(entityId: EntityId, pageLink: TimePageLink, config?: RequestConfig): Observable<PageData<Event>> {
|
||||||
|
return this.http.get<PageData<Event>>(`/api/edge/${entityId.id}/events` + `${pageLink.toQuery()}`,
|
||||||
|
defaultHttpOptionsFromConfig(config));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -20,25 +20,25 @@ import {
|
|||||||
EntityTableColumn,
|
EntityTableColumn,
|
||||||
EntityTableConfig
|
EntityTableConfig
|
||||||
} from '@home/models/entity/entities-table-config.models';
|
} from '@home/models/entity/entities-table-config.models';
|
||||||
import { DebugEventType, Event, EventType } from '@shared/models/event.models';
|
import {DebugEventType, Event, EventType} from '@shared/models/event.models';
|
||||||
import { TimePageLink } from '@shared/models/page/page-link';
|
import {TimePageLink} from '@shared/models/page/page-link';
|
||||||
import { TranslateService } from '@ngx-translate/core';
|
import {TranslateService} from '@ngx-translate/core';
|
||||||
import { DatePipe } from '@angular/common';
|
import {DatePipe} from '@angular/common';
|
||||||
import { MatDialog } from '@angular/material/dialog';
|
import {MatDialog} from '@angular/material/dialog';
|
||||||
import { EntityId } from '@shared/models/id/entity-id';
|
import {EntityId} from '@shared/models/id/entity-id';
|
||||||
import { EventService } from '@app/core/http/event.service';
|
import {EventService} from '@app/core/http/event.service';
|
||||||
import { EventTableHeaderComponent } from '@home/components/event/event-table-header.component';
|
import {EventTableHeaderComponent} from '@home/components/event/event-table-header.component';
|
||||||
import { EntityTypeResource } from '@shared/models/entity-type.models';
|
import {EntityTypeResource} from '@shared/models/entity-type.models';
|
||||||
import { Observable } from 'rxjs';
|
import {Observable} from 'rxjs';
|
||||||
import { PageData } from '@shared/models/page/page-data';
|
import {PageData} from '@shared/models/page/page-data';
|
||||||
import { Direction } from '@shared/models/page/sort-order';
|
import {Direction} from '@shared/models/page/sort-order';
|
||||||
import { DialogService } from '@core/services/dialog.service';
|
import {DialogService} from '@core/services/dialog.service';
|
||||||
import { ContentType } from '@shared/models/constants';
|
import {ContentType} from '@shared/models/constants';
|
||||||
import {
|
import {
|
||||||
EventContentDialogComponent,
|
EventContentDialogComponent,
|
||||||
EventContentDialogData
|
EventContentDialogData
|
||||||
} from '@home/components/event/event-content-dialog.component';
|
} from '@home/components/event/event-content-dialog.component';
|
||||||
import { sortObjectKeys } from '@core/utils';
|
import {sortObjectKeys} from '@core/utils';
|
||||||
|
|
||||||
export class EventTableConfig extends EntityTableConfig<Event, TimePageLink> {
|
export class EventTableConfig extends EntityTableConfig<Event, TimePageLink> {
|
||||||
|
|
||||||
@ -104,8 +104,12 @@ export class EventTableConfig extends EntityTableConfig<Event, TimePageLink> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fetchEvents(pageLink: TimePageLink): Observable<PageData<Event>> {
|
fetchEvents(pageLink: TimePageLink): Observable<PageData<Event>> {
|
||||||
|
if (this.eventTypeValue === EventType.EDGE_EVENT) {
|
||||||
|
return this.eventService.getEdgeEvents(this.entityId, pageLink);
|
||||||
|
} else {
|
||||||
return this.eventService.getEvents(this.entityId, this.eventType, this.tenantId, pageLink);
|
return this.eventService.getEvents(this.entityId, this.eventType, this.tenantId, pageLink);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
updateColumns(updateTableColumns: boolean = false): void {
|
updateColumns(updateTableColumns: boolean = false): void {
|
||||||
this.columns = [];
|
this.columns = [];
|
||||||
@ -159,6 +163,12 @@ export class EventTableConfig extends EntityTableConfig<Event, TimePageLink> {
|
|||||||
() => ({}), () => undefined, true)
|
() => ({}), () => undefined, true)
|
||||||
);
|
);
|
||||||
break;
|
break;
|
||||||
|
case EventType.EDGE_EVENT:
|
||||||
|
this.columns.push(
|
||||||
|
new EntityTableColumn<Event>('type', 'event.type', '100%',
|
||||||
|
(entity) => entity.type, entity => ({}), false),
|
||||||
|
);
|
||||||
|
break;
|
||||||
case DebugEventType.DEBUG_RULE_NODE:
|
case DebugEventType.DEBUG_RULE_NODE:
|
||||||
case DebugEventType.DEBUG_RULE_CHAIN:
|
case DebugEventType.DEBUG_RULE_CHAIN:
|
||||||
this.columns[0].width = '100px';
|
this.columns[0].width = '100px';
|
||||||
|
|||||||
@ -64,8 +64,9 @@ export interface StatsEventBody extends BaseEventBody {
|
|||||||
}
|
}
|
||||||
|
|
||||||
export interface EdgeEventBody extends BaseEventBody {
|
export interface EdgeEventBody extends BaseEventBody {
|
||||||
messagesProcessed: number;
|
type: string;
|
||||||
errorsOccurred: number;
|
action: string;
|
||||||
|
entityId: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface DebugRuleNodeEventBody extends BaseEventBody {
|
export interface DebugRuleNodeEventBody extends BaseEventBody {
|
||||||
@ -81,7 +82,7 @@ export interface DebugRuleNodeEventBody extends BaseEventBody {
|
|||||||
error: string;
|
error: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export type EventBody = ErrorEventBody & LcEventEventBody & StatsEventBody & DebugRuleNodeEventBody;
|
export type EventBody = ErrorEventBody & LcEventEventBody & StatsEventBody & DebugRuleNodeEventBody & EdgeEventBody;
|
||||||
|
|
||||||
export interface Event extends BaseData<EventId> {
|
export interface Event extends BaseData<EventId> {
|
||||||
tenantId: TenantId;
|
tenantId: TenantId;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user