From bbc53c7c116d784188a17500031429c539b03c0d Mon Sep 17 00:00:00 2001
From: Robert Butora <robert.butora@inaf.it>
Date: Wed, 22 Jan 2025 11:01:30 +0100
Subject: [PATCH] mcutout: adds logging to mcutout job-thread

---
 .../java/mcutout/webapi/UWSMCutoutWork.java   | 27 +++++++++++++++++--
 1 file changed, 25 insertions(+), 2 deletions(-)

diff --git a/data-access/servlet/src/main/java/mcutout/webapi/UWSMCutoutWork.java b/data-access/servlet/src/main/java/mcutout/webapi/UWSMCutoutWork.java
index c29bc0c..94cd53c 100644
--- a/data-access/servlet/src/main/java/mcutout/webapi/UWSMCutoutWork.java
+++ b/data-access/servlet/src/main/java/mcutout/webapi/UWSMCutoutWork.java
@@ -25,6 +25,9 @@ import uws.service.file.LocalUWSFileManager;
 import uws.service.file.UWSFileManager;
 import uws.service.UWSUrl;
 
+import uws.service.log.UWSLog;
+import uws.service.log.UWSLog.LogLevel;
+
 // rbu
 import java.util.*; 
 import org.json.simple.JSONArray;
@@ -34,7 +37,6 @@ import org.json.simple.JSONObject;
 
 public class UWSMCutoutWork extends JobThread
 {
-
    private Settings     settings  = UWSMCutout.settings;
    private Subsurvey[] subsurveys = UWSMCutout.subsurveys;
 
@@ -57,6 +59,8 @@ public class UWSMCutoutWork extends JobThread
    @Override
    protected void jobWork() throws UWSException, InterruptedException
    {
+		UWSLog logger = job.getLogger();
+
       try
       {
          long startTime_msec = System.currentTimeMillis();
@@ -86,6 +90,9 @@ public class UWSMCutoutWork extends JobThread
 
          if(contentType.equals("text/xml") || contentType.equals("application/xml"))
          {
+            logger.logThread(LogLevel.INFO, this,
+						"Prepare Result", "content type:" + contentType, null);
+
             Result result = createResult("Report");
             result.setMimeType("text/xml");
             OutputStream respOutputStream = getResultOutput(result);
@@ -110,10 +117,25 @@ public class UWSMCutoutWork extends JobThread
          }
          else if(contentType.equals("application/gzip") || contentType.equals("application/x-tar+gzip"))
          {
-            Result result = createResult("mcutout.tar.gz");
+            logger.logThread(LogLevel.INFO, this,
+						"Prepare Result", "content type:" + contentType, null);
+
+				final String id = "mcutout.tar.gz";
+            Result result = createResult(id);
             result.setMimeType("application/gzip");
             OutputStream respOutputStream = getResultOutput(result);
 
+				final String requestUrl = job.getUrl().getRequestURL();
+				final String defaultUrl = result.getDefaultUrl(id, job);
+				final String resultFileUrl = result.getHref();
+
+            logger.logThread(LogLevel.INFO, this,
+						"Result", "job->requestUrl():      " + requestUrl, null);
+            logger.logThread(LogLevel.INFO, this,
+						"Result", "result.getDefaultUrl(): " + defaultUrl, null);
+            logger.logThread(LogLevel.INFO, this,
+						"Result", "result.getHref():       " + resultFileUrl, null);
+
             String absCutPathname = mresult.fileName;
             File downloadFile = new File(absCutPathname);
             FileInputStream fileInput = new FileInputStream(downloadFile);
@@ -134,6 +156,7 @@ public class UWSMCutoutWork extends JobThread
       }
       catch(IOException ex)
       {
+			logger.error("MCutout error", ex);
          throw new UWSException("Internal error: jsonFile.open() throws IOException:" + ex.getMessage());
       }
    }
-- 
GitLab