1 <div *
ngIf=
"contentData">
2 <ng-container *
ngTemplateOutlet=
"logFiltersTpl"></ng-container>
8 <li ngbNavItem=
"cluster-logs">
11 <ng-template ngbNavContent
>
12 <div class=
"card bg-light mb-3"
14 <div class=
"btn-group"
17 <cd-download-button [objectItem]=
"clog"
19 fileName=
"cluster_log">
21 <cd-copy-2-clipboard-button
24 </cd-copy-2-clipboard-button>
26 <div class=
"card-body">
27 <p *
ngFor=
"let line of clog">
28 <span class=
"timestamp">{{ line.stamp | cdDate }}
</span>
29 <span class=
"priority {{ line.priority | logPriority }}">{{ line.priority }}
</span>
31 [innerHTML]=
"line.message | searchHighlight: search"></span>
34 <ng-container *
ngIf=
"clog.length != 0 else noEntriesTpl"></ng-container>
39 <li ngbNavItem=
"audit-logs">
42 <ng-template ngbNavContent
>
43 <div class=
"card bg-light mb-3"
45 <div class=
"btn-group"
47 *
ngIf=
"audit_log.length">
48 <cd-download-button [objectItem]=
"audit_log"
49 [textItem]=
"auditLogText"
52 <cd-copy-2-clipboard-button
53 [source]=
"auditLogText"
55 </cd-copy-2-clipboard-button>
57 <div class=
"card-body">
58 <p *
ngFor=
"let line of audit_log">
59 <span class=
"timestamp">{{ line.stamp | cdDate }}
</span>
60 <span class=
"priority {{ line.priority | logPriority }}">{{ line.priority }}
</span>
62 [innerHTML]=
"line.message | searchHighlight: search"></span>
65 <ng-container *
ngIf=
"audit_log.length != 0 else noEntriesTpl"></ng-container>
72 <div [ngbNavOutlet]=
"nav"></div>
75 <ng-template #logFiltersTpl
>
76 <div class=
"form-inline">
77 <div class=
"form-group">
78 <label for=
"logs-priority"
79 i18n
>Priority:
</label>
80 <select id=
"logs-priority"
82 [(ngModel)]=
"priority"
83 (ngModelChange)=
"filterLogs()">
84 <option *
ngFor=
"let prio of priorities"
85 [value]=
"prio.value">{{ prio.name }}
</option>
89 <div class=
"form-group">
90 <label for=
"logs-keyword"
92 <div class=
"input-group">
93 <div class=
"input-group-prepend">
94 <span class=
"input-group-text">
95 <i [ngClass]=
"[icons.search]"></i>
99 <input class=
"form-control"
103 (keyup)=
"filterLogs()">
105 <div class=
"input-group-append">
106 <button type=
"button"
107 class=
"btn btn-light"
108 (click)=
"clearSearchKey()">
109 <i class=
"icon-prepend {{ icons.destroy }}"></i>
115 <div class=
"form-group">
116 <label for=
"logs-date"
118 <div class=
"input-group">
119 <input class=
"form-control"
121 placeholder=
"YYYY-MM-DD"
126 [(ngModel)]=
"selectedDate"
127 (ngModelChange)=
"filterLogs()">
128 <span class=
"input-group-append">
129 <button type=
"button"
130 class=
"btn btn-light"
131 (click)=
"clearDate()">
132 <i class=
"icon-prepend {{ icons.destroy }}"></i>
138 <div class=
"form-group">
139 <label i18n
>Time range:
</label>
140 <ngb-timepicker [spinners]=
"false"
141 [(ngModel)]=
"startTime"
142 (ngModelChange)=
"filterLogs()"></ngb-timepicker>
144 <span> — </span>
146 <ngb-timepicker [spinners]=
"false"
147 [(ngModel)]=
"endTime"
148 (ngModelChange)=
"filterLogs()"></ngb-timepicker>
153 <ng-template #noEntriesTpl
>
154 <span i18n
>No log entries found. Please try to select different filter options.
</span>
157 (click)=
"resetFilter()"
158 i18n
>Reset filter.
</a>