From a42ba9804ed09b13af19a2ea577ccf370c2fffcf Mon Sep 17 00:00:00 2001 From: Brandon Clayton <bclayton@usgs.gov> Date: Mon, 17 Mar 2025 17:01:49 -0600 Subject: [PATCH] add function to check log for message --- .../check-haz-jobs/services/app.service.ts | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/projects/nshmp-apps/src/app/internal/aws/check-haz-jobs/services/app.service.ts b/projects/nshmp-apps/src/app/internal/aws/check-haz-jobs/services/app.service.ts index 70dcfb529..c991579c1 100644 --- a/projects/nshmp-apps/src/app/internal/aws/check-haz-jobs/services/app.service.ts +++ b/projects/nshmp-apps/src/app/internal/aws/check-haz-jobs/services/app.service.ts @@ -185,6 +185,14 @@ export class AppService implements AppServiceModel<AppState, ControlForm> { }; } + logHasFinished(response: GetLogsResponseData): boolean { + return this.logHasMessage(response, 'Finished'); + } + + logHasForSupport(response: GetLogsResponseData): boolean { + return this.logHasMessage(response, 'For support contact'); + } + /** * Update state. * @@ -222,9 +230,12 @@ export class AppService implements AppServiceModel<AppState, ControlForm> { ): void { const {autoRefresh} = this.formGroup.getRawValue(); const status = serviceResponse.response.jobStatus; + const response = serviceResponse.response; if ( - (status === JobStatus.RUNNING || status === JobStatus.CREATED) && + status !== JobStatus.TERMINATED && + !this.logHasFinished(response) && + !this.logHasForSupport(response) && autoRefresh ) { setTimeout(() => this.callService(false), 3000); @@ -236,6 +247,13 @@ export class AppService implements AppServiceModel<AppState, ControlForm> { }); } + private logHasMessage( + response: GetLogsResponseData, + message: string, + ): boolean { + return response.logs.some(log => log.message.includes(message)); + } + /** * Update URL based on form values. */ -- GitLab