Author: tdraier
Date: Fri Jan 11 15:02:33 2008
New Revision: 19493

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D19493&repname=
=3Djahia
Log:
better logging of production job errors ( JAHIA-2657 )

Modified:
    trunk/core/src/conf/java/JahiaEnginesResources.properties
    trunk/core/src/conf/java/JahiaEnginesResources_en.properties
    trunk/core/src/conf/java/JahiaEnginesResources_fr.properties
    trunk/core/src/java/org/jahia/services/importexport/ImportExportBaseSer=
vice.java
    trunk/core/src/java/org/jahia/services/importexport/ProductionJob.java
    trunk/core/src/webapp/jsp/jahia/processing/processing.jsp

Modified: trunk/core/src/conf/java/JahiaEnginesResources.properties
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/conf/j=
ava/JahiaEnginesResources.properties&rev=3D19493&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/conf/java/JahiaEnginesResources.properties (original)
+++ trunk/core/src/conf/java/JahiaEnginesResources.properties Fri Jan 11 15=
:02:33 2008
@@ -1527,6 +1527,8 @@
 org.jahia.engines.importexport.export.zipfiles.label =3D Zip with XML Cont=
ent and files
 org.jahia.engines.importexport.export.type.label =3D Export type
 org.jahia.engines.importexport.export.format.label =3D Export format
+org.jahia.engines.importexport.export.productionFailed.label =3D Export fi=
le cannot be uploaded on server
+org.jahia.engines.importexport.export.cannotAcquireLock.label =3D Lock can=
not be acquired
 =

 #import
 org.jahia.engines.importexport.import.notimported =3D Object {0} ({1}) not=
 imported ({2}, line {3})

Modified: trunk/core/src/conf/java/JahiaEnginesResources_en.properties
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/conf/j=
ava/JahiaEnginesResources_en.properties&rev=3D19493&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/conf/java/JahiaEnginesResources_en.properties (original)
+++ trunk/core/src/conf/java/JahiaEnginesResources_en.properties Fri Jan 11=
 15:02:33 2008
@@ -1524,6 +1524,8 @@
 org.jahia.engines.importexport.export.zipfiles.label =3D Zip with XML Cont=
ent and files
 org.jahia.engines.importexport.export.type.label =3D Export type
 org.jahia.engines.importexport.export.format.label =3D Export format
+org.jahia.engines.importexport.export.productionFailed.label =3D Export fi=
le cannot be uploaded on server
+org.jahia.engines.importexport.export.cannotAcquireLock.label =3D Lock can=
not be acquired
 =

 #import
 org.jahia.engines.importexport.import.notimported =3D Object {0} ({1}) not=
 imported ({2}, line {3})

Modified: trunk/core/src/conf/java/JahiaEnginesResources_fr.properties
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/conf/j=
ava/JahiaEnginesResources_fr.properties&rev=3D19493&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/conf/java/JahiaEnginesResources_fr.properties (original)
+++ trunk/core/src/conf/java/JahiaEnginesResources_fr.properties Fri Jan 11=
 15:02:33 2008
@@ -377,6 +377,8 @@
 org.jahia.engines.importexport.export.xml.label =3D Contenu XML (seulement=
 la langue en cours)
 org.jahia.engines.importexport.export.zipfiles.label =3D Archive ZIP avec =
contenu XML et fichiers
 org.jahia.engines.importexport.export.zipnofiles.label =3D Archive ZIP ave=
c contenu XML
+org.jahia.engines.importexport.export.productionFailed.label =3D Le fichie=
r d'export n'a pas pu =C3=AAtre tranf=C3=A9r=C3=A9 sur le serveur
+org.jahia.engines.importexport.export.cannotAcquireLock.label =3D Le verro=
u n'a pas pu =C3=AAtre obtenu
 org.jahia.engines.importexport.import.definition =3D D=C3=A9finition non t=
rouv=C3=A9e pour l''objet {0} ({1}), in {2} (template {3}) ({4}, ligne {5})
 org.jahia.engines.importexport.import.definitionInCtn =3D D=C3=A9finition =
non trouv=C3=A9e pour l''objet {0} ({1}), in {2} (container {4} dans la tem=
plate {3}) ({5}, ligne {6})
 org.jahia.engines.importexport.import.empty =3D Fichier d''import ({0}) vi=
de

Modified: trunk/core/src/java/org/jahia/services/importexport/ImportExportB=
aseService.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/importexport/ImportExportBaseService.java&rev=3D19493&rep=
name=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/java/org/jahia/services/importexport/ImportExportBaseSer=
vice.java (original)
+++ trunk/core/src/java/org/jahia/services/importexport/ImportExportBaseSer=
vice.java Fri Jan 11 15:02:33 2008
@@ -2428,7 +2428,9 @@
         HttpURL folderURL =3D new HttpURL(folder);
         WebdavResource folderRes =3D new WebdavResource(folderURL, credent=
ials, WebdavResource.NOACTION, 0);
         if (!folderRes.exists()) {
-            folderRes.mkcolMethod();
+            if (!folderRes.mkcolMethod()) {
+                throw new IOException();
+            }
         }
 =

         String name =3D "importFromSite_" + site.getSiteKey() + "_" + date=
OfExport + ".zip";

Modified: trunk/core/src/java/org/jahia/services/importexport/ProductionJob=
.java
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/importexport/ProductionJob.java&rev=3D19493&repname=3Djah=
ia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/java/org/jahia/services/importexport/ProductionJob.java =
(original)
+++ trunk/core/src/java/org/jahia/services/importexport/ProductionJob.java =
Fri Jan 11 15:02:33 2008
@@ -19,6 +19,9 @@
 import org.apache.commons.httpclient.HttpStatus;
 import org.apache.log4j.Logger;
 import org.apache.webdav.lib.WebdavResource;
+import org.jahia.content.NodeOperationResult;
+import org.jahia.content.TreeOperationResult;
+import org.jahia.engines.EngineMessage;
 import org.jahia.exceptions.JahiaException;
 import org.jahia.params.ProcessingContext;
 import org.jahia.registries.ServicesRegistry;
@@ -32,6 +35,7 @@
 =

 import java.io.IOException;
 import java.util.Date;
+import java.util.Map;
 =

 /**
  * Created by IntelliJ IDEA.
@@ -72,7 +76,7 @@
             String servletname =3D jobDataMap.getString(SERVLET_NAME);
 =

             if (contextname =3D=3D null) contextname =3D "";
-
+            TreeOperationResult result =3D new TreeOperationResult();
             boolean metadata =3D !"false".equals(jobDataMap.getString(WITH=
_METADATA));
             try {
                 ServicesRegistry instance =3D ServicesRegistry.getInstance=
();
@@ -95,16 +99,16 @@
                             {
                                 logger.info("Production job execute well f=
or site " + site.getSiteKey() + " to target " + targetName);
                             } else {
-                                logger.info("Production job execute fail f=
or site " + site.getSiteKey() + " to target " + targetName + " with error "=
 + webdavSession.getStatusMessage());
+                                failed(result, null, targetName, sitename,=
 "org.jahia.engines.importexport.export.productionFailed.label", jobDataMap=
);
                             }
                             webdavSession.close();
                         } else {
-                            logger.error("Production job execute fail for =
site " + sitename + " to target " + targetName + ", cannot acquire lock");
+                            failed(result, null, targetName, sitename, "or=
g.jahia.engines.importexport.export.cannotAcquireLock.label", jobDataMap);
                         }
                     } catch (IOException e) {
-                        logger.error("Production job execute fail for site=
 " + sitename + " to target " + targetName + " with error ", e);
+                        failed(result, e, targetName, sitename, "org.jahia=
.engines.importexport.export.productionFailed.label", jobDataMap);
                     } catch (SAXException e) {
-                        logger.error("Production job execute fail for site=
 " + sitename + " to target " + targetName + " with error ", e);
+                        failed(result, e, targetName, sitename, "org.jahia=
.engines.importexport.export.productionFailed.label", jobDataMap);
                     } finally{
                         ServicesRegistry.getInstance().getLockService().re=
lease(lock, member, jobDetail.getName());
                     }
@@ -115,10 +119,22 @@
                     jobExecutionContext.getScheduler().deleteJob(jobDetail=
.getName(), jobDetail.getGroup());
                 }
             } catch (SchedulerException e) {
-                logger.error("Production job execute fail for site " + sit=
ename + " to target " + targetName + " with error ", e);
+                failed(result, e, targetName, sitename, "org.jahia.engines=
.importexport.export.productionFailed.label", jobDataMap);
             } catch (JahiaException e) {
-                logger.error("Production job execute fail for site " + sit=
ename + " to target " + targetName + " with error ", e);
+                failed(result, e, targetName, sitename, "org.jahia.engines=
.importexport.export.productionFailed.label", jobDataMap);
             }
+            jobDataMap.put(RESULT, result);
+        }
+    }
+
+    private void failed(TreeOperationResult result, Throwable e, String ta=
rgetName, String sitename, String msgKey, Map jobDataMap) {
+        jobDataMap.put(RESULT, STATUS_FAILED);
+        result.setStatus(TreeOperationResult.FAILED_OPERATION_STATUS);
+        result.appendError(new NodeOperationResult(null,null,null,new Engi=
neMessage(msgKey, new Object[0])));
+        if (e !=3D null) {
+            logger.error("Production job execute fail for site " + sitenam=
e + " to target " + targetName,e);
+        } else {
+            logger.error("Production job execute fail for site " + sitenam=
e + " to target " + targetName);
         }
     }
 }

Modified: trunk/core/src/webapp/jsp/jahia/processing/processing.jsp
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/webapp=
/jsp/jahia/processing/processing.jsp&rev=3D19493&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/webapp/jsp/jahia/processing/processing.jsp (original)
+++ trunk/core/src/webapp/jsp/jahia/processing/processing.jsp Fri Jan 11 15=
:02:33 2008
@@ -851,6 +851,12 @@
                     nextfired =3D printFriendlyRange(f2, locale);
                     //String prefix_fired =3D getRessource("org.jahia.engi=
nes.processDisplay.status.running", locale);
 =

+
+                    boolean failedjob =3D ((String) jd.getJobDataMap().get=
(BackgroundJob.JOB_STATUS)).equalsIgnoreCase(BackgroundJob.STATUS_FAILED);
+                    TreeOperationResult result =3D (TreeOperationResult) j=
d.getJobDataMap().get("result");
+                    String jname =3D jd.getName();
+                    String infoasked =3D request.getParameter("info");
+
 %>
 <tr valign=3D"top" class=3D"crons">
     <td align=3D"center">Cron job</td>
@@ -871,14 +877,98 @@
 =

 =

                 <td width=3D"30px">&nbsp;&nbsp;</td>
-                <td align=3D"center"></td>
+
+                <td align=3D"right" valign=3D"bottom">
+                    <%
+
+
+                        if (result !=3D null) {
+                            String urlinfo;
+                            pars =3D "";
+
+                            if (infoasked !=3D null) pars +=3D ("&info=3D"=
 + infoasked);
+
+                            int jobstatus =3D result.getStatus();
+
+                            if (infoasked !=3D null && infoasked.equalsIgn=
oreCase(jname)) {
+                                pars =3D "";
+                                if (size !=3D null) pars +=3D ("&size=3D" =
+ size);
+                                if (order !=3D null) pars +=3D ("&order=3D=
" + order);
+                                if (cronlimit !=3D null) pars +=3D ("&cl=
=3D" + cronlimit);
+                                urlinfo =3D "<a href=3D'processing.jsp?com=
mand=3Dcurrent" + pars + "' title=3D'fermer les infos'><img src=3D'" + requ=
est.getContextPath() + "/jsp/jahia/engines/images/about.gif' width=3D'16' h=
eight=3D'16' border=3D'0'></a>";
+                            } else if (!failedjob) {
+                                urlinfo =3D "";
+
+                                if (size !=3D null) pars +=3D ("&size=3D" =
+ size);
+                                if (order !=3D null) pars +=3D ("&order=3D=
" + order);
+                                if (cronlimit !=3D null) pars +=3D ("&cl=
=3D" + cronlimit);
+                                if (jobstatus =3D=3D 0)
+                                    urlinfo =3D "<img src=3D'" + request.g=
etContextPath() + "/jsp/jahia/engines/images/icons/workflow/errors.gif' wid=
th=3D'9' height=3D'10' border=3D'0'>";
+                                if (jobstatus =3D=3D 1)
+                                    urlinfo =3D "<img src=3D'" + request.g=
etContextPath() + "/jsp/jahia/engines/images/icons/workflow/accept.gif' wid=
th=3D'9' height=3D'10' border=3D'0'>";
+                                if (jobstatus =3D=3D 2)
+                                    urlinfo =3D "<img src=3D'" + request.g=
etContextPath() + "/jsp/jahia/engines/images/icons/workflow/warnings.gif' w=
idth=3D'9' height=3D'10' border=3D'0'>";
+                                urlinfo +=3D "&nbsp;&nbsp;<a href=3D'proce=
ssing.jsp?command=3Dcurrent&info=3D" + jd.getName() + pars + "' title=3D'vo=
ir les infos'><img src=3D'" + request.getContextPath() + "/jsp/jahia/engine=
s/images/about.gif' width=3D'16' height=3D'16' border=3D'0'></a>";
+                            } else {
+                                urlinfo =3D getRessource("org.jahia.engine=
s.processDisplay.failed.label", locale);
+                            }
+
+                    %>
+                    <%=3Durlinfo%>
+                    <% }%>
+                </td>
+
             </tr>
         </table>
 =

     </td>
 </tr>
+<% if (infoasked !=3D null && infoasked.equalsIgnoreCase(jname)) {
 =

+    int jobstatus =3D result.getStatus();
+%>
+<tr>
+    <td colspan=3D"3"></td>
+    <td bgcolor=3D"#eeeeee"><br>
+        <b><%=3DgetRessource("org.jahia.engines.processDisplay.jobresult.l=
abel", locale)%>:</b><br>
+        status:<%
+
+        switch (jobstatus) {
+            case 0:
+    %>
+        <img src=3D"<%=3Drequest.getContextPath()%>/jsp/jahia/engines/imag=
es/icons/workflow/errors.gif" width=3D"9"
+             height=3D"10"
+             border=3D"0"> <%=3DgetRessource("org.jahia.engines.processDis=
play.error.message", locale)%>
+        <%
+                break;
+            case 1:
+        %>
+        <img src=3D"<%=3Drequest.getContextPath()%>/jsp/jahia/engines/imag=
es/icons/workflow/accept.gif" width=3D"9"
+             height=3D"10"
+             border=3D"0"> <%=3DgetRessource("org.jahia.engines.processDis=
play.success.message", locale)%>
+        <%
+                break;
+            case 2:
+        %>
+        <img src=3D"<%=3Drequest.getContextPath()%>/jsp/jahia/engines/imag=
es/icons/workflow/warnings.gif" width=3D"9"
+             height=3D"10"
+             border=3D"0"> <%=3DgetRessource("org.jahia.engines.processDis=
play.error.message", locale)%>
+        <%
+                    break;
+            }
+            if (result.getErrors().size() > 0 || result.getWarnings().size=
() > 0) {
+        %>
+        <a href=3D"displaylog.jsp?jd=3D<%=3Djd.getName()%>"><%=3DgetRessou=
rce("org.jahia.engines.processDisplay.allmessages.message", locale)%>
+        </a>
+        <%
+            }
+        %>
+        <br>
+        <br>
+    </td>
+</tr>
 <%
+                }//end of infoasked
             }//end running ok
         }//next row
     } //end display of crons process

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to