Skip to content

Commit 05a8f78

Browse files
committed
fix(#5370): fix logfile view styling issues and make sure that links are rendered with an underline similarly to what already happens in other views
1 parent b3662bd commit 05a8f78

2 files changed

Lines changed: 28 additions & 7 deletions

File tree

  • spring-boot-admin-samples/spring-boot-admin-sample-servlet/src/main/java/de/codecentric/boot/admin/sample
  • spring-boot-admin-server-ui/src/main/frontend/views/instances/logfile

spring-boot-admin-samples/spring-boot-admin-sample-servlet/src/main/java/de/codecentric/boot/admin/sample/QuartzJobsConfiguration.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
import org.quartz.SimpleScheduleBuilder;
2525
import org.quartz.Trigger;
2626
import org.quartz.TriggerBuilder;
27+
import org.slf4j.Logger;
28+
import org.slf4j.LoggerFactory;
2729
import org.springframework.context.annotation.Bean;
2830
import org.springframework.context.annotation.Configuration;
2931
import org.springframework.scheduling.quartz.QuartzJobBean;
@@ -108,9 +110,11 @@ public Trigger hourlyTestTrigger() {
108110
*/
109111
public static class SampleJob extends QuartzJobBean {
110112

113+
private static final Logger logger = LoggerFactory.getLogger(SampleJob.class);
114+
111115
@Override
112116
protected void executeInternal(org.quartz.JobExecutionContext context) {
113-
System.out.println("Sample Quartz Job executed at " + new java.util.Date());
117+
logger.info("Sample Quartz Job executed at {}", new java.util.Date());
114118
}
115119

116120
}
@@ -120,9 +124,11 @@ protected void executeInternal(org.quartz.JobExecutionContext context) {
120124
*/
121125
public static class AnotherSampleJob extends QuartzJobBean {
122126

127+
private static final Logger logger = LoggerFactory.getLogger(AnotherSampleJob.class);
128+
123129
@Override
124130
protected void executeInternal(org.quartz.JobExecutionContext context) {
125-
System.out.println("Another Quartz Job executed at " + new java.util.Date());
131+
logger.info("Another Quartz Job executed at {}", new java.util.Date());
126132
}
127133

128134
}

spring-boot-admin-server-ui/src/main/frontend/views/instances/logfile/index.vue

Lines changed: 20 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@
9595
:class="{ 'wrap-lines': wrapLines }"
9696
class="log-viewer overflow-x-auto text-sm -mx-6 -my-20 pt-14"
9797
>
98-
<table class="table-striped" />
98+
<table ref="logContainer" class="table-striped min-w-full" />
9999
</div>
100100
</sba-instance-section>
101101
</template>
@@ -194,11 +194,16 @@ export default {
194194
lines.forEach((line) => {
195195
const row = document.createElement('tr');
196196
const col = document.createElement('td');
197-
const pre = document.createElement('pre');
198-
pre.innerHTML = autolink(this.ansiUp.ansi_to_html(line));
199-
col.appendChild(pre);
197+
let content;
198+
if (line) {
199+
content = document.createElement('pre');
200+
content.innerHTML = autolink(this.ansiUp.ansi_to_html(line));
201+
} else {
202+
content = document.createElement('br');
203+
}
204+
col.appendChild(content);
200205
row.appendChild(col);
201-
document.querySelector('.log-viewer > table')?.appendChild(row);
206+
this.$refs.logContainer.appendChild(row);
202207
});
203208
204209
if (this.atBottom) {
@@ -269,15 +274,25 @@ export default {
269274
max-height: 100%;
270275
}
271276
277+
.log-viewer tr,
278+
.log-viewer td {
279+
@apply w-full;
280+
}
281+
272282
.log-viewer pre {
273283
padding: 0 0.75em;
274284
margin-bottom: 1px;
285+
@apply w-full;
275286
}
276287
277288
.log-viewer pre:hover {
278289
background: #dbdbdb;
279290
}
280291
292+
.log-viewer a[href] {
293+
@apply underline;
294+
}
295+
281296
.log-viewer.wrap-lines pre {
282297
@apply whitespace-pre-wrap;
283298
word-break: break-all;

0 commit comments

Comments
 (0)