diff --git a/spring-boot-admin-server-ui/src/main/frontend/global.d.ts b/spring-boot-admin-server-ui/src/main/frontend/global.d.ts index a55dfbb52de..b4bbaab107b 100644 --- a/spring-boot-admin-server-ui/src/main/frontend/global.d.ts +++ b/spring-boot-admin-server-ui/src/main/frontend/global.d.ts @@ -42,6 +42,7 @@ declare global { process: number; memory: number; threads: number; + threaddump: number; logfile: number; }; diff --git a/spring-boot-admin-server-ui/src/main/frontend/sba-config.ts b/spring-boot-admin-server-ui/src/main/frontend/sba-config.ts index fa17aada0ef..f523f10a95c 100644 --- a/spring-boot-admin-server-ui/src/main/frontend/sba-config.ts +++ b/spring-boot-admin-server-ui/src/main/frontend/sba-config.ts @@ -42,6 +42,7 @@ const DEFAULT_CONFIG: SBASettings = { process: 2500, memory: 2500, threads: 2500, + threaddump: 2500, logfile: 1000, }, hideInstanceUrl: false, diff --git a/spring-boot-admin-server-ui/src/main/frontend/views/instances/threaddump/index.vue b/spring-boot-admin-server-ui/src/main/frontend/views/instances/threaddump/index.vue index f435a1406c9..2844ead091b 100644 --- a/spring-boot-admin-server-ui/src/main/frontend/views/instances/threaddump/index.vue +++ b/spring-boot-admin-server-ui/src/main/frontend/views/instances/threaddump/index.vue @@ -43,6 +43,7 @@ import moment from 'moment'; import { take } from 'rxjs/operators'; import subscribing from '@/mixins/subscribing'; +import sbaConfig from '@/sba-config'; import Instance from '@/services/instance'; import { concatMap, delay, retryWhen, timer } from '@/utils/rxjs'; import { VIEW_GROUP } from '@/views/ViewGroup'; @@ -127,7 +128,7 @@ export default { }, createSubscription() { this.errorFetch = null; - return timer(0, 1000) + return timer(0, sbaConfig.uiSettings.pollTimer.threaddump) .pipe( concatMap(this.fetchThreaddump), retryWhen((err) => { diff --git a/spring-boot-admin-server-ui/src/main/java/de/codecentric/boot/admin/server/ui/config/AdminServerUiProperties.java b/spring-boot-admin-server-ui/src/main/java/de/codecentric/boot/admin/server/ui/config/AdminServerUiProperties.java index 614c3212af7..4c2526b6718 100644 --- a/spring-boot-admin-server-ui/src/main/java/de/codecentric/boot/admin/server/ui/config/AdminServerUiProperties.java +++ b/spring-boot-admin-server-ui/src/main/java/de/codecentric/boot/admin/server/ui/config/AdminServerUiProperties.java @@ -178,6 +178,11 @@ public static class PollTimer { */ private int threads = 2500; + /** + * Time in milliseconds to refresh data in threaddump view. + */ + private int threaddump = 2500; + /** * Time in milliseconds to refresh data in logfile view. */ diff --git a/spring-boot-admin-server-ui/src/test/java/de/codecentric/boot/admin/server/ui/AbstractAdminUiApplicationTest.java b/spring-boot-admin-server-ui/src/test/java/de/codecentric/boot/admin/server/ui/AbstractAdminUiApplicationTest.java index 3880538f57b..fa3a922a994 100644 --- a/spring-boot-admin-server-ui/src/test/java/de/codecentric/boot/admin/server/ui/AbstractAdminUiApplicationTest.java +++ b/spring-boot-admin-server-ui/src/test/java/de/codecentric/boot/admin/server/ui/AbstractAdminUiApplicationTest.java @@ -146,7 +146,8 @@ public void should_return_defaults_for_pollTimers() { .expectHeader().contentTypeCompatibleWith("application/javascript") .expectBody(String.class) .value((body) -> assertThat(body).contains("\"pollTimer\"")) - .value((body) -> assertThat(body).contains("\"cache\":2500")); + .value((body) -> assertThat(body).contains("\"cache\":2500")) + .value((body) -> assertThat(body).contains("\"threaddump\":2500")); //@formatter:on }