Sorry, I don't understand the logging config changes - what is in the root context that you don't want to send to the rolling log?

Thanks,
Brett

On 02/07/2008, at 3:01 PM, [EMAIL PROTECTED] wrote:

Author: oching
Date: Tue Jul  1 22:01:08 2008
New Revision: 673280

URL: http://svn.apache.org/viewvc?rev=673280&view=rev
Log:
[MRM-810]
-implemented the Auditable for UploadAction
-cleaned up the logging config

Modified:
archiva/trunk/archiva-modules/archiva-base/archiva-repository- layer/src/main/java/org/apache/maven/archiva/repository/audit/ AuditEvent.java archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/ java/org/apache/maven/archiva/web/action/UploadAction.java archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/ resources/log4j.xml

Modified: archiva/trunk/archiva-modules/archiva-base/archiva- repository-layer/src/main/java/org/apache/maven/archiva/repository/ audit/AuditEvent.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-base/archiva-repository-layer/src/main/java/org/apache/maven/archiva/repository/audit/AuditEvent.java?rev=673280&r1=673279&r2=673280&view=diff
= = = = = = = = ====================================================================== --- archiva/trunk/archiva-modules/archiva-base/archiva-repository- layer/src/main/java/org/apache/maven/archiva/repository/audit/ AuditEvent.java (original) +++ archiva/trunk/archiva-modules/archiva-base/archiva-repository- layer/src/main/java/org/apache/maven/archiva/repository/audit/ AuditEvent.java Tue Jul 1 22:01:08 2008
@@ -37,6 +37,8 @@

    public static final String MODIFY_FILE = "Modify File";

+    public static final String UPLOAD_FILE = "Uploaded File";
+
    private String repositoryId;

    private String userId;

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp/ src/main/java/org/apache/maven/archiva/web/action/UploadAction.java
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/java/org/apache/maven/archiva/web/action/UploadAction.java?rev=673280&r1=673279&r2=673280&view=diff
= = = = = = = = ====================================================================== --- archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/ main/java/org/apache/maven/archiva/web/action/UploadAction.java (original) +++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/ main/java/org/apache/maven/archiva/web/action/UploadAction.java Tue Jul 1 22:01:08 2008
@@ -42,6 +42,9 @@
import org.apache.maven.archiva.repository.RepositoryException;
import org.apache.maven.archiva.repository.RepositoryNotFoundException; import org .apache.maven.archiva.repository.scanner.RepositoryContentConsumers;
+import org.apache.maven.archiva.repository.audit.AuditEvent;
+import org.apache.maven.archiva.repository.audit.AuditListener;
+import org.apache.maven.archiva.repository.audit.Auditable;
import org.apache.maven.archiva.repository.metadata.MetadataTools;
import org .apache.maven.archiva.repository.metadata.RepositoryMetadataException; import org.apache.maven.archiva.repository.metadata.RepositoryMetadataReader;
@@ -55,6 +58,7 @@
import org.apache.maven.archiva.security.ArchivaXworkUser;
import org.codehaus.plexus.xwork.action.PlexusActionSupport;

+import com.opensymphony.webwork.ServletActionContext;
import com.opensymphony.xwork.ActionContext;
import com.opensymphony.xwork.Preparable;
import com.opensymphony.xwork.Validateable;
@@ -69,7 +73,7 @@
 */
public class UploadAction
    extends PlexusActionSupport
-    implements Validateable, Preparable
+    implements Validateable, Preparable, Auditable
{
    /**
      * @plexus.requirement
@@ -161,6 +165,11 @@
     */
    private RepositoryContentFactory repositoryFactory;

+    /**
+ * @plexus.requirement role="org.apache.maven.archiva.repository.audit.AuditListener"
+     */
+ private List<AuditListener> auditListeners = new ArrayList<AuditListener>();
+
private ChecksumAlgorithm[] algorithms = new ChecksumAlgorithm[] { ChecksumAlgorithm.SHA1, ChecksumAlgorithm.MD5 };

private ProjectModelWriter pomWriter = new ProjectModel400Writer();
@@ -383,9 +392,8 @@

String msg = "Artifact \'" + groupId + ":" + artifactId + ":" + version + "\' was successfully deployed to repository \'" + repositoryId + "\'";
-
- //TODO: MRM-810 (this writes to archiva.log, should be audit.log)
-            getLogger().info( msg + " by " + getPrincipal() );
+
+ triggerAuditEvent( getPrincipal(), repositoryId, groupId + ":" + artifactId + ":" + version, AuditEvent.UPLOAD_FILE );

            addActionMessage( msg );

@@ -536,4 +544,30 @@
            addActionError( ae.getMessage() );
        }
    }
+
+    public void addAuditListener( AuditListener listener )
+    {
+        this.auditListeners.add( listener );
+    }
+
+    public void clearAuditListeners()
+    {
+        this.auditListeners.clear();
+    }
+
+    public void removeAuditListener( AuditListener listener )
+    {
+        this.auditListeners.remove( listener );
+    }
+
+ private void triggerAuditEvent( String user, String repositoryId, String resource, String action )
+    {
+ AuditEvent event = new AuditEvent( repositoryId, user, resource, action ); + event .setRemoteIP( ServletActionContext.getRequest().getRemoteAddr() );
+
+        for ( AuditListener listener : auditListeners )
+        {
+            listener.auditEvent( event );
+        }
+    }
}

Modified: archiva/trunk/archiva-modules/archiva-web/archiva-webapp/ src/main/resources/log4j.xml
URL: 
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/resources/log4j.xml?rev=673280&r1=673279&r2=673280&view=diff
= = = = = = = = ====================================================================== --- archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/ main/resources/log4j.xml (original) +++ archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/ main/resources/log4j.xml Tue Jul 1 22:01:08 2008
@@ -22,16 +22,14 @@
  </appender>

  <!-- Help identify bugs during testing -->
-  <logger name="org.apache.maven">
-    <level value="info"/>
-  </logger>
-
  <logger name="org.apache.maven.archiva">
-    <level value="info" />
+    <level value="info"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="org.apache.maven.archiva.repository.scanner">
    <level value="info" />
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="org.apache.archiva.AuditLog">
@@ -41,72 +39,87 @@

  <logger name="org.codehaus.plexus.security">
    <level value="info"/>
+    <appender-ref ref="rolling" />
  </logger>

  <!-- squelch noisy objects (for now) -->
  <logger name="org.apache.commons">
    <level value="warn"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="net.sf.ehcache">
    <level value="warn"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="org.codehaus.plexus.mailsender.MailSender">
    <level value="info"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="org.codehaus.plexus.velocity">
    <level value="error"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="org.quartz">
    <level value="info"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="org.apache.jasper">
    <level value="info"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="com.opensymphony.xwork">
    <level value="info"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="com.opensymphony.webwork">
    <level value="info"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="org.codehaus.plexus.PlexusContainer">
    <level value="info"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="JPOX">
    <level value="warn"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="JPOX.MetaData">
    <level value="error"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="JPOX.RDBMS.SQL">
    <level value="error"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="SQL">
    <level value="error"/>
+    <appender-ref ref="rolling" />
  </logger>

  <logger name="freemarker">
    <level value="warn"/>
+    <appender-ref ref="rolling" />
  </logger>

<logger name = "org .codehaus.plexus.component.manager.ClassicSingletonComponentManager">
    <level value="error"/>
+    <appender-ref ref="rolling" />
  </logger>

  <root>
    <priority value ="info" />
-    <appender-ref ref="rolling" />
  </root>

-</log4j:configuration>
+</log4j:configuration>
\ No newline at end of file



--
Brett Porter
[EMAIL PROTECTED]
http://blogs.exist.com/bporter/

Reply via email to