#95540: adding unknown component and subcoponent LogFormatter_root
authorjsedek@netbeans.org
Thu, 15 Feb 2007 15:41:44 +0000
changeset 192584e7fbe4652b
parent 1924 d307f953c303
child 1926 5b8a98564a3f
#95540: adding unknown component and subcoponent
logger/uihandlerserver/src/java/org/netbeans/server/uihandler/DbInsertion.java
logger/uihandlerserver/test/org/netbeans/server/uihandler/3.log
logger/uihandlerserver/test/org/netbeans/server/uihandler/ExceptionsTest.java
     1.1 --- a/logger/uihandlerserver/src/java/org/netbeans/server/uihandler/DbInsertion.java	Thu Feb 15 03:53:49 2007 +0000
     1.2 +++ b/logger/uihandlerserver/src/java/org/netbeans/server/uihandler/DbInsertion.java	Thu Feb 15 15:41:44 2007 +0000
     1.3 @@ -35,6 +35,7 @@
     1.4   */
     1.5  public class DbInsertion implements Runnable{
     1.6      private static final String GUEST_USER = "GUEST";
     1.7 +    private static final String UNKNOWN = "unknown";
     1.8      private static final int MAXUsrName = 30;
     1.9      private static final int MAXMethodName = 100;
    1.10      private static final int MAXMessage = 100;
    1.11 @@ -136,13 +137,18 @@
    1.12          }
    1.13          // adding issue
    1.14          Component comp = Matcher.getDefault().match(thrown.getStackTrace());
    1.15 +        String component=UNKNOWN, subComponent=UNKNOWN;
    1.16 +        if (comp != null){
    1.17 +            component = comp.getComponent();
    1.18 +            subComponent = comp.getSubComponent();
    1.19 +        }
    1.20          pStmt =  getConnection().prepareStatement(INSERT_ISSUE);
    1.21          pStmt.setInt(1, issueId);
    1.22          pStmt.setString(2, params[summary_idx]);
    1.23          pStmt.setString(3, params[vm_idx]);
    1.24          pStmt.setString(4, params[version_idx]);
    1.25 -        pStmt.setString(5, comp.getComponent());
    1.26 -        pStmt.setString(6, comp.getSubComponent());
    1.27 +        pStmt.setString(5, component);
    1.28 +        pStmt.setString(6, subComponent);
    1.29          pStmt.setString(7, "");//assign to
    1.30          pStmt.setString(8, params[os_idx]);
    1.31          pStmt.setInt(9, 0);
     2.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     2.2 +++ b/logger/uihandlerserver/test/org/netbeans/server/uihandler/3.log	Thu Feb 15 15:41:44 2007 +0000
     2.3 @@ -0,0 +1,174 @@
     2.4 +<record>
     2.5 +  <date>2007-02-14T13:30:05</date>
     2.6 +  <millis>1171456205690</millis>
     2.7 +  <sequence>810</sequence>
     2.8 +  <level>CONFIG</level>
     2.9 +  <thread>11</thread>
    2.10 +  <message>The operating system is Linux, 2.6.13-15.13-smp, i386, virtual machine Java HotSpot(TM) Client VM, 1.6.0-rc-b102, NetBeans version NetBeans IDE Dev (Build 200702071900) and user name .</message>
    2.11 +  <key>UI_USER_CONFIGURATION</key>
    2.12 +  <catalog>&lt;null&gt;</catalog>
    2.13 +  <param>Linux, 2.6.13-15.13-smp, i386</param>
    2.14 +  <param>Java HotSpot(TM) Client VM, 1.6.0-rc-b102</param>
    2.15 +  <param>NetBeans IDE Dev (Build 200702071900)</param>
    2.16 +  <param></param>
    2.17 +  <param>NullPointerException</param>
    2.18 +  <param></param>
    2.19 +</record>
    2.20 +<record>
    2.21 +  <date>2007-02-14T13:26:01</date>
    2.22 +  <millis>1171455961943</millis>
    2.23 +  <sequence>797</sequence>
    2.24 +  <logger>org.netbeans.ui.actions</logger>
    2.25 +  <level>FINER</level>
    2.26 +  <thread>11</thread>
    2.27 +  <message>Invoking &amp;Undo  implemented as org.openide.actions.UndoAction thru org.openide.awt.Actions$ToolbarButton</message>
    2.28 +  <key>UI_ACTION_BUTTON_PRESS</key>
    2.29 +  <catalog>&lt;null&gt;</catalog>
    2.30 +  <param>org.openide.awt.Actions$ToolbarButton[,119,4,36x36,alignmentX=0.0,alignmentY=0.5,border=javax.swing.border.CompoundBorder@1a38f6d,flags=16777504,maximumSize=,minimumSize=,preferredSize=,defaultIcon=javax.swing.ImageIcon@194b554,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=false,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=false]</param>
    2.31 +  <param>org.openide.awt.Actions$ToolbarButton</param>
    2.32 +  <param>org.openide.actions.UndoAction@b38dba</param>
    2.33 +  <param>org.openide.actions.UndoAction</param>
    2.34 +  <param>&amp;Undo </param>
    2.35 +</record>
    2.36 +<record>
    2.37 +  <date>2007-02-14T13:27:20</date>
    2.38 +  <millis>1171456040534</millis>
    2.39 +  <sequence>800</sequence>
    2.40 +  <logger>sun.awt.X11.XToolkit</logger>
    2.41 +  <level>WARNING</level>
    2.42 +  <thread>52</thread>
    2.43 +  <message>Exception on Toolkit thread</message>
    2.44 +  <exception>
    2.45 +    <message>java.lang.NullPointerException</message>
    2.46 +    <frame>
    2.47 +      <class>sun.awt.X11.XSelection</class>
    2.48 +      <method>checkChange</method>
    2.49 +      <line>749</line>
    2.50 +    </frame>
    2.51 +    <frame>
    2.52 +      <class>sun.awt.X11.XSelection</class>
    2.53 +      <method>access$200</method>
    2.54 +      <line>30</line>
    2.55 +    </frame>
    2.56 +    <frame>
    2.57 +      <class>sun.awt.X11.XSelection$SelectionEventHandler</class>
    2.58 +      <method>dispatchEvent</method>
    2.59 +      <line>758</line>
    2.60 +    </frame>
    2.61 +    <frame>
    2.62 +      <class>sun.awt.X11.XToolkit</class>
    2.63 +      <method>dispatchEvent</method>
    2.64 +      <line>482</line>
    2.65 +    </frame>
    2.66 +    <frame>
    2.67 +      <class>sun.awt.X11.XToolkit</class>
    2.68 +      <method>run</method>
    2.69 +      <line>626</line>
    2.70 +    </frame>
    2.71 +    <frame>
    2.72 +      <class>sun.awt.X11.XToolkit</class>
    2.73 +      <method>run</method>
    2.74 +      <line>560</line>
    2.75 +    </frame>
    2.76 +    <frame>
    2.77 +      <class>java.lang.Thread</class>
    2.78 +      <method>run</method>
    2.79 +      <line>619</line>
    2.80 +    </frame>
    2.81 +  </exception>
    2.82 +</record>
    2.83 +<record>
    2.84 +  <date>2007-02-14T13:27:25</date>
    2.85 +  <millis>1171456045122</millis>
    2.86 +  <sequence>802</sequence>
    2.87 +  <logger>org.netbeans.ui.actions</logger>
    2.88 +  <level>FINER</level>
    2.89 +  <thread>11</thread>
    2.90 +  <message>Invoking &amp;Undo  implemented as org.openide.actions.UndoAction thru org.openide.awt.Actions$ToolbarButton</message>
    2.91 +  <key>UI_ACTION_BUTTON_PRESS</key>
    2.92 +  <catalog>&lt;null&gt;</catalog>
    2.93 +  <param>org.openide.awt.Actions$ToolbarButton[,119,4,36x36,alignmentX=0.0,alignmentY=0.5,border=javax.swing.border.CompoundBorder@1a38f6d,flags=16777504,maximumSize=,minimumSize=,preferredSize=,defaultIcon=javax.swing.ImageIcon@194b554,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=false,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=false]</param>
    2.94 +  <param>org.openide.awt.Actions$ToolbarButton</param>
    2.95 +  <param>org.openide.actions.UndoAction@b38dba</param>
    2.96 +  <param>org.openide.actions.UndoAction</param>
    2.97 +  <param>&amp;Undo </param>
    2.98 +</record>
    2.99 +<record>
   2.100 +  <date>2007-02-14T13:27:30</date>
   2.101 +  <millis>1171456050242</millis>
   2.102 +  <sequence>804</sequence>
   2.103 +  <logger>org.netbeans.ui.actions</logger>
   2.104 +  <level>FINER</level>
   2.105 +  <thread>11</thread>
   2.106 +  <message>Invoking &amp;Undo  implemented as org.openide.actions.UndoAction thru org.openide.awt.Actions$ToolbarButton</message>
   2.107 +  <key>UI_ACTION_BUTTON_PRESS</key>
   2.108 +  <catalog>&lt;null&gt;</catalog>
   2.109 +  <param>org.openide.awt.Actions$ToolbarButton[,119,4,36x36,alignmentX=0.0,alignmentY=0.5,border=javax.swing.border.CompoundBorder@1a38f6d,flags=16777504,maximumSize=,minimumSize=,preferredSize=,defaultIcon=javax.swing.ImageIcon@194b554,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=14,bottom=2,right=14],paintBorder=false,paintFocus=true,pressedIcon=,rolloverEnabled=true,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=,defaultCapable=false]</param>
   2.110 +  <param>org.openide.awt.Actions$ToolbarButton</param>
   2.111 +  <param>org.openide.actions.UndoAction@b38dba</param>
   2.112 +  <param>org.openide.actions.UndoAction</param>
   2.113 +  <param>&amp;Undo </param>
   2.114 +</record>
   2.115 +<record>
   2.116 +  <date>2007-02-14T13:28:15</date>
   2.117 +  <millis>1171456095590</millis>
   2.118 +  <sequence>806</sequence>
   2.119 +  <logger>org.netbeans.ui.actions</logger>
   2.120 +  <level>FINER</level>
   2.121 +  <thread>11</thread>
   2.122 +  <message>Invoking &amp;Delete implemented as org.openide.util.actions.CallbackSystemAction$DelegateAction thru org.openide.awt.Actions$MenuItem</message>
   2.123 +  <key>UI_ACTION_BUTTON_PRESS</key>
   2.124 +  <catalog>&lt;null&gt;</catalog>
   2.125 +  <param>org.openide.awt.Actions$MenuItem[,1,194,203x19,alignmentX=0.0,alignmentY=0.0,border=javax.swing.plaf.metal.MetalBorders$MenuItemBorder@a21ac2,flags=392,maximumSize=,minimumSize=,preferredSize=,defaultIcon=,disabledIcon=,disabledSelectedIcon=,margin=javax.swing.plaf.InsetsUIResource[top=2,left=2,bottom=2,right=2],paintBorder=true,paintFocus=false,pressedIcon=,rolloverEnabled=false,rolloverIcon=,rolloverSelectedIcon=,selectedIcon=,text=Delete]</param>
   2.126 +  <param>org.openide.awt.Actions$MenuItem</param>
   2.127 +  <param>org.openide.util.actions.CallbackSystemAction$DelegateAction@1679b3a[delegate=org.openide.actions.DeleteAction@7262b6]</param>
   2.128 +  <param>org.openide.util.actions.CallbackSystemAction$DelegateAction</param>
   2.129 +  <param>&amp;Delete</param>
   2.130 +</record>
   2.131 +<record>
   2.132 +  <date>2007-02-14T13:29:56</date>
   2.133 +  <millis>1171456196868</millis>
   2.134 +  <sequence>808</sequence>
   2.135 +  <logger>sun.awt.X11.XToolkit</logger>
   2.136 +  <level>WARNING</level>
   2.137 +  <thread>52</thread>
   2.138 +  <message>Exception on Toolkit thread</message>
   2.139 +  <exception>
   2.140 +    <message>java.lang.NullPointerException</message>
   2.141 +    <frame>
   2.142 +      <class>sun.awt.X11.XSelection</class>
   2.143 +      <method>checkChange</method>
   2.144 +      <line>749</line>
   2.145 +    </frame>
   2.146 +    <frame>
   2.147 +      <class>sun.awt.X11.XSelection</class>
   2.148 +      <method>access$200</method>
   2.149 +      <line>30</line>
   2.150 +    </frame>
   2.151 +    <frame>
   2.152 +      <class>sun.awt.X11.XSelection$SelectionEventHandler</class>
   2.153 +      <method>dispatchEvent</method>
   2.154 +      <line>758</line>
   2.155 +    </frame>
   2.156 +    <frame>
   2.157 +      <class>sun.awt.X11.XToolkit</class>
   2.158 +      <method>dispatchEvent</method>
   2.159 +      <line>482</line>
   2.160 +    </frame>
   2.161 +    <frame>
   2.162 +      <class>sun.awt.X11.XToolkit</class>
   2.163 +      <method>run</method>
   2.164 +      <line>626</line>
   2.165 +    </frame>
   2.166 +    <frame>
   2.167 +      <class>sun.awt.X11.XToolkit</class>
   2.168 +      <method>run</method>
   2.169 +      <line>560</line>
   2.170 +    </frame>
   2.171 +    <frame>
   2.172 +      <class>java.lang.Thread</class>
   2.173 +      <method>run</method>
   2.174 +      <line>619</line>
   2.175 +    </frame>
   2.176 +  </exception>
   2.177 +</record>
     3.1 --- a/logger/uihandlerserver/test/org/netbeans/server/uihandler/ExceptionsTest.java	Thu Feb 15 03:53:49 2007 +0000
     3.2 +++ b/logger/uihandlerserver/test/org/netbeans/server/uihandler/ExceptionsTest.java	Thu Feb 15 15:41:44 2007 +0000
     3.3 @@ -20,6 +20,8 @@
     3.4  package org.netbeans.server.uihandler;
     3.5  
     3.6  import java.io.File;
     3.7 +import java.sql.ResultSet;
     3.8 +import java.sql.Statement;
     3.9  import java.util.Map;
    3.10  import java.util.logging.Level;
    3.11  import java.util.logging.LogRecord;
    3.12 @@ -81,14 +83,35 @@
    3.13          
    3.14          log = LogsManagerTest.extractResourceAs(data, "1.log", "log4442.2");
    3.15          logsManager.addLog(log);
    3.16 -        
    3.17          logsManager.preparePageContext(page, "log4442");
    3.18 +        // wait for database to insert LOG 2
    3.19 +        Thread.currentThread().sleep(1000);
    3.20          mapa = (Map<Integer, LogRecord>) page.getAttribute("lastExceptions");
    3.21          assertNotNull("MAPA SHOULD BE NOT NULL", mapa);
    3.22          assertNotNull("MORE SESSIONS ARE ALREADY LOGGED", mapa.get(2));
    3.23          issueId = Integer.parseInt(mapa.get(2).getMessage());
    3.24          assertEquals("THIS IS NOT AN ERROR REPORT", -2, issueId);
    3.25          
    3.26 +        /** test issue   #95540 */
    3.27 +        log = LogsManagerTest.extractResourceAs(data, "3.log", "log4445.1");
    3.28 +        logsManager.addLog(log);
    3.29 +        logsManager.preparePageContext(page, "log4445");
    3.30 +        // wait for database to insert LOG 3
    3.31 +        Thread.currentThread().sleep(1000);
    3.32 +        mapa = (Map<Integer, LogRecord>) page.getAttribute("lastExceptions");
    3.33 +        assertNotNull("MAPA SHOULD BE NOT NULL", mapa);
    3.34 +        assertNotNull("ONE SESSION IS ALREADY LOGGED", mapa.get(2));
    3.35 +        issueId = Integer.parseInt(mapa.get(2).getMessage());
    3.36 +        assertEquals("THIS SHOULD BE INSERTED AS A NEW ISSUE", -1, issueId);
    3.37 +
    3.38 +        Statement statement = Utils.getConnection().createStatement();
    3.39 +        ResultSet result = statement.executeQuery("SELECT * FROM ISSUE");
    3.40 +        assertTrue("THERE MUST BE TWO ISSUES", result.next());
    3.41 +        assertTrue("THERE MUST BE TWO ISSUES", result.next());
    3.42 +        assertFalse("THERE MUST BE TWO ISSUES", result.next());
    3.43 +        result.close();
    3.44 +        statement.close();
    3.45 +        
    3.46          Utils.closeConnection();
    3.47      }
    3.48