From d7a52800dd5728f4bcdbe3daca399e7086881e9e Mon Sep 17 00:00:00 2001 From: fufu Date: Tue, 26 Nov 2024 14:39:03 +0100 Subject: [PATCH] local request --- .../_component/detail-session.component.html | 13 ++++- .../detail-local-table.component.html | 58 +++++++++++++++++++ .../detail-local-table.component.scss | 0 .../detail-local-table.component.ts | 37 ++++++++++++ .../session/rest/detail-session-rest.view.ts | 14 ++--- src/app/views/views.module.ts | 2 + 6 files changed, 116 insertions(+), 8 deletions(-) create mode 100644 src/app/views/detail/session/_component/local-table/detail-local-table.component.html create mode 100644 src/app/views/detail/session/_component/local-table/detail-local-table.component.scss create mode 100644 src/app/views/detail/session/_component/local-table/detail-local-table.component.ts diff --git a/src/app/views/detail/session/_component/detail-session.component.html b/src/app/views/detail/session/_component/detail-session.component.html index 5134926..a261768 100644 --- a/src/app/views/detail/session/_component/detail-session.component.html +++ b/src/app/views/detail/session/_component/detail-session.component.html @@ -10,6 +10,17 @@ +
+
+ +
+ memory +
LOCAL
+
+ +
+ +
@@ -62,7 +73,7 @@ (onClickRow)="selectedQuery($event)">
-
+
diff --git a/src/app/views/detail/session/_component/local-table/detail-local-table.component.html b/src/app/views/detail/session/_component/local-table/detail-local-table.component.html new file mode 100644 index 0000000..4aa748f --- /dev/null +++ b/src/app/views/detail/session/_component/local-table/detail-local-table.component.html @@ -0,0 +1,58 @@ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + Nom + {{element["name"] || 'N/A'}} + Location + {{element["location"] || 'N/A'}} + Début +
+ {{ (element.start*1000 |date:'dd/MM/yyyy')}} +
+
+
+ {{ (element.start*1000 |date:'HH:mm:ss.SSS')}} +
+
Durée + + {{{start: element.start, end: element.end} | duration }} + +
+ +
\ No newline at end of file diff --git a/src/app/views/detail/session/_component/local-table/detail-local-table.component.scss b/src/app/views/detail/session/_component/local-table/detail-local-table.component.scss new file mode 100644 index 0000000..e69de29 diff --git a/src/app/views/detail/session/_component/local-table/detail-local-table.component.ts b/src/app/views/detail/session/_component/local-table/detail-local-table.component.ts new file mode 100644 index 0000000..55b01f2 --- /dev/null +++ b/src/app/views/detail/session/_component/local-table/detail-local-table.component.ts @@ -0,0 +1,37 @@ +import {Component, Input, OnInit, ViewChild} from "@angular/core"; +import {MatTableDataSource} from "@angular/material/table"; +import {LocalRequest, NamingRequest} from "../../../../../model/trace.model"; +import {MatPaginator} from "@angular/material/paginator"; +import {MatSort} from "@angular/material/sort"; + +@Component({ + selector: 'local-table', + templateUrl: './detail-local-table.component.html', + styleUrls: ['./detail-local-table.component.scss'] +}) +export class DetailLocalTableComponent implements OnInit { + displayedColumns: string[] = ['status', 'name', 'location', 'start', 'duration']; + dataSource: MatTableDataSource = new MatTableDataSource(); + + @ViewChild('paginator', {static: true}) paginator: MatPaginator; + @ViewChild('sort', {static: true}) sort: MatSort; + + @Input() set requests(requests: LocalRequest[]) { + if(requests) { + this.dataSource = new MatTableDataSource(requests); + this.dataSource.paginator = this.paginator; + this.dataSource.sort = this.sort; + } + } + + ngOnInit() { + this.dataSource.sortingDataAccessor = sortingDataAccessor; + } +} + +const sortingDataAccessor = (row: any, columnName: string) => { + if (columnName == "location") return row["location"] as string; + if (columnName == "start") return row['start'] as string; + if (columnName == "duree") return (row["end"] - row["start"]); + return row[columnName as keyof any] as string; +} \ No newline at end of file diff --git a/src/app/views/detail/session/rest/detail-session-rest.view.ts b/src/app/views/detail/session/rest/detail-session-rest.view.ts index c8c2a4e..32a1a0e 100644 --- a/src/app/views/detail/session/rest/detail-session-rest.view.ts +++ b/src/app/views/detail/session/rest/detail-session-rest.view.ts @@ -3,7 +3,7 @@ import {InstanceEnvironment, InstanceRestSession} from "../../../../model/trace. import {ActivatedRoute} from "@angular/router"; import {TraceService} from "../../../../service/trace.service"; import {Location} from "@angular/common"; -import {catchError, combineLatest, finalize, forkJoin, of, Subscription, switchMap} from "rxjs"; +import {catchError, combineLatest, finalize, forkJoin, Observable, of, Subscription, switchMap, EMPTY} from "rxjs"; import {application} from "../../../../../environments/environment"; import {Utils} from "../../../../shared/util"; import {EnvRouter} from "../../../../service/router.service"; @@ -49,12 +49,12 @@ export class DetailSessionRestView implements OnInit, OnDestroy { session: of(s), instance: this._traceService.getInstance(s.instanceId), parent: this._traceService.getSessionParent(id).pipe(catchError(() => of(null))), - requests: this._traceService.getRestRequests(s.id), - queries: this._traceService.getDatabaseRequests(s.id), - stages: this._traceService.getLocalRequests(s.id), - ftps: this._traceService.getFtpRequests(s.id), - mails: this._traceService.getSmtpRequests(s.id), - ldaps: this._traceService.getLdapRequests(s.id) + requests: (s.mask & 4) > 0 ? this._traceService.getRestRequests(s.id) : of([]), + queries: (s.mask & 2) > 0 ? this._traceService.getDatabaseRequests(s.id) : of([]), + stages: (s.mask & 1) > 0 ? this._traceService.getLocalRequests(s.id) : of([]), + ftps: (s.mask & 8) > 0 ? this._traceService.getFtpRequests(s.id) : of([]), + mails: (s.mask & 16) > 0 ? this._traceService.getSmtpRequests(s.id) : of([]), + ldaps: (s.mask & 32) > 0 ? this._traceService.getLdapRequests(s.id) : of([]) }); }), finalize(() => this.isLoading = false) diff --git a/src/app/views/views.module.ts b/src/app/views/views.module.ts index 6f25a3b..2f041f5 100644 --- a/src/app/views/views.module.ts +++ b/src/app/views/views.module.ts @@ -45,6 +45,7 @@ import { import {ServerHistoryTableComponent} from "./statistic/application/history-table/server-history-table.component"; import {StatisticClientView} from "./statistic/view/statistic-client.view"; import {ArchitectureView} from "./architecture/architecture.view"; +import {DetailLocalTableComponent} from "./detail/session/_component/local-table/detail-local-table.component"; @NgModule({ @@ -74,6 +75,7 @@ import {ArchitectureView} from "./architecture/architecture.view"; DetailFtpTableComponent, DetailSmtpTableComponent, DetailLdapTableComponent, + DetailLocalTableComponent, DetailTimelineComponent, DetailSessionComponent, StatisticApplicationView,