Skip to content

Commit efdc34b

Browse files
committed
add logs
1 parent dc62b46 commit efdc34b

File tree

9 files changed

+135
-14
lines changed

9 files changed

+135
-14
lines changed

projects/fusio-sdk/src/lib/component/log/detail/log-detail.component.css

Whitespace-only changes.
Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
<div class="card" *ngIf="selected">
2+
<div class="card-header">{{selected.path}}</div>
3+
<div class="card-body">
4+
<div class="fusio-detail">
5+
<div class="row">
6+
<div class="col-lg-2 fw-bold">IP</div>
7+
<div class="col-lg-10">{{selected.ip}}</div>
8+
</div>
9+
<div class="row">
10+
<div class="col-lg-2 fw-bold">User-Agent</div>
11+
<div class="col-lg-10">{{selected.userAgent}}</div>
12+
</div>
13+
<div class="row">
14+
<div class="col-lg-2 fw-bold">Method</div>
15+
<div class="col-lg-10">{{selected.method}}</div>
16+
</div>
17+
<div class="row">
18+
<div class="col-lg-2 fw-bold">Path</div>
19+
<div class="col-lg-10">{{selected.path}}</div>
20+
</div>
21+
<div class="row">
22+
<div class="col-lg-2 fw-bold">Headers</div>
23+
<div class="col-lg-10"><pre>{{selected.header}}</pre></div>
24+
</div>
25+
<div class="row">
26+
<div class="col-lg-2 fw-bold">Date</div>
27+
<div class="col-lg-10">{{selected.date|date:'short'}}</div>
28+
</div>
29+
</div>
30+
</div>
31+
</div>
32+
<div class="card" style="margin-top:1rem" *ngIf="selected && selected.body">
33+
<div class="card-header">Body</div>
34+
<div class="card-body">
35+
<pre>{{selected.body|json}}</pre>
36+
</div>
37+
</div>
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
import {Component} from '@angular/core';
2+
import {Detail} from "../../../abstract/detail";
3+
import {ConsumerLog} from "fusio-sdk/dist/ConsumerLog";
4+
5+
@Component({
6+
selector: 'fusio-log-detail',
7+
templateUrl: './log-detail.component.html',
8+
styleUrls: ['./log-detail.component.css']
9+
})
10+
export class LogDetailComponent extends Detail<ConsumerLog> {
11+
12+
}

projects/fusio-sdk/src/lib/component/log/list/log-list.component.css

Whitespace-only changes.
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
2+
<fusio-message [response]="response"></fusio-message>
3+
4+
<fusio-search
5+
[searchTerm]="search"
6+
(search)="doSearch(1, $event)"
7+
placeholder="log">
8+
</fusio-search>
9+
10+
<div class="row">
11+
<div class="col-md-3">
12+
<fusio-sidebar
13+
name="log"
14+
nameKey="path"
15+
[entries]="entries"
16+
[totalResults]="totalResults"
17+
[selected]="selected"
18+
[page]="page"
19+
[pageSize]="pageSize"
20+
(pageChange)="doSearch($event, search)"
21+
(entrySelect)="doSelect($event)">
22+
</fusio-sidebar>
23+
</div>
24+
<div class="col-md-9">
25+
<fusio-empty *ngIf="!selected" [loading]="loading" ></fusio-empty>
26+
<fusio-log-detail *ngIf="selected" [selected]="selected"></fusio-log-detail>
27+
</div>
28+
</div>
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
import {Component} from '@angular/core';
2+
import {Client} from "fusio-sdk/dist/Client";
3+
import {List} from "../../../abstract/list";
4+
import {ConsumerLog} from "fusio-sdk/dist/ConsumerLog";
5+
import {ConsumerLogCollection} from "fusio-sdk/dist/ConsumerLogCollection";
6+
7+
@Component({
8+
selector: 'fusio-log-list',
9+
templateUrl: './log-list.component.html',
10+
styleUrls: ['./log-list.component.css']
11+
})
12+
export class LogListComponent extends List<Client, ConsumerLog> {
13+
14+
protected async getAll(parameters: Array<any>): Promise<ConsumerLogCollection> {
15+
return this.fusio.getClient().consumer().log().getAll(...parameters);
16+
}
17+
18+
protected async get(id: string): Promise<ConsumerLog> {
19+
return this.fusio.getClient().consumer().log().get('' + id);
20+
}
21+
22+
protected getDetailComponent(): any {
23+
return null;
24+
}
25+
26+
protected getRoute(): any {
27+
return '/account/log';
28+
}
29+
30+
}

projects/fusio-sdk/src/lib/fusio-sdk.module.ts

Lines changed: 22 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -41,34 +41,42 @@ import {TokenShowComponent} from "./component/token/show/token-show.component";
4141
import {WebhookDetailComponent} from "./component/webhook/detail/webhook-detail.component";
4242
import {WebhookListComponent} from "./component/webhook/list/webhook-list.component";
4343
import {WebhookModalComponent} from "./component/webhook/modal/webhook-modal.component";
44+
import {LogListComponent} from "./component/log/list/log-list.component";
45+
import {LogDetailComponent} from "./component/log/detail/log-detail.component";
4446

4547
@NgModule({
4648
declarations: [
47-
AboutComponent,
48-
SpecificationComponent,
49-
AccountComponent,
50-
AccountContainerComponent,
5149
BootstrapComponent,
5250
EmptyComponent,
5351
HelpComponent,
54-
LoginComponent,
55-
ProviderComponent,
56-
LogoutComponent,
5752
MessageComponent,
5853
NavigationComponent,
59-
ConfirmComponent,
60-
ResetComponent,
61-
RegisterComponent,
62-
ActivateComponent,
6354
ScopesComponent,
6455
SearchComponent,
65-
SecurityComponent,
6656
SidebarComponent,
67-
SubscriptionComponent,
68-
CallbackComponent,
57+
58+
// authorization
59+
LoginComponent,
60+
ProviderComponent,
61+
LogoutComponent,
62+
RegisterComponent,
63+
ActivateComponent,
64+
ConfirmComponent,
65+
ResetComponent,
66+
67+
// account
68+
AboutComponent,
69+
AccountComponent,
70+
AccountContainerComponent,
6971
AppDetailComponent,
7072
AppListComponent,
7173
AppModalComponent,
74+
LogListComponent,
75+
LogDetailComponent,
76+
SecurityComponent,
77+
SpecificationComponent,
78+
SubscriptionComponent,
79+
CallbackComponent,
7280
TokenDetailComponent,
7381
TokenListComponent,
7482
TokenModalComponent,

projects/fusio-sdk/src/lib/route/account-route.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import {TokenListComponent} from "../component/token/list/token-list.component";
99
import {SpecificationComponent} from "../component/specification/specification.component";
1010
import {AboutComponent} from "../component/about/about.component";
1111
import {isAuthenticated} from "../guard/authentication.guard";
12+
import {LogListComponent} from "../component/log/list/log-list.component";
1213

1314
export class AccountRoute {
1415

@@ -24,6 +25,8 @@ export class AccountRoute {
2425
{path: 'webhook/:id', component: WebhookListComponent, canActivate: [isAuthenticated] },
2526
{path: 'token', component: TokenListComponent, canActivate: [isAuthenticated] },
2627
{path: 'token/:id', component: TokenListComponent, canActivate: [isAuthenticated] },
28+
{path: 'log', component: LogListComponent, canActivate: [isAuthenticated] },
29+
{path: 'log/:id', component: LogListComponent, canActivate: [isAuthenticated] },
2730
{path: 'specification', component: SpecificationComponent, canActivate: [isAuthenticated] },
2831
{path: 'about', component: AboutComponent, canActivate: [isAuthenticated] },
2932
];

projects/fusio-sdk/src/lib/service/config.service.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,9 @@ export class ConfigService {
9898
title: 'Token',
9999
path: '/account/token',
100100
scope: 'consumer.token',
101+
}, {
102+
title: 'Log',
103+
path: '/account/log',
101104
}, {
102105
title: 'Specification',
103106
path: '/account/specification',

0 commit comments

Comments
 (0)