Author: oching
Date: Wed Jul 29 09:55:18 2009
New Revision: 798827
URL: http://svn.apache.org/viewvc?rev=798827&view=rev
Log:
[MRM-1163] Add some decent logs in webdav for debugging purposes
Submitted by: Jevica Arianne Zurbano
o added debug logs in ArchivaDavResource and ArchivaDavResourceFactory with the
filename, directory, repository, and/or current user included in logs
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webapp/src/main/resources/log4j.xml
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java
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=798827&r1=798826&r2=798827&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
Wed Jul 29 09:55:18 2009
@@ -86,6 +86,15 @@
</logger>
-->
+ <!-- WebDav objects -->
+ <logger name="org.apache.maven.archiva.webdav.ArchivaDavResource">
+ <level value="info"/>
+ </logger>
+
+ <logger name="org.apache.maven.archiva.webdav.ArchivaDavResourceFactory">
+ <level value="info"/>
+ </logger>
+
<!-- squelch noisy objects (for now) -->
<logger name="org.apache.commons">
<level value="warn"/>
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java?rev=798827&r1=798826&r2=798827&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResource.java
Wed Jul 29 09:55:18 2009
@@ -313,12 +313,16 @@
queueRepositoryTask( localFile );
+ log.debug( "File '" + resource.getDisplayName() + ( exists ? "'
modified " : "' created ") + "(current user '" + this.principal + "')" );
+
triggerAuditEvent( resource, exists ? AuditEvent.MODIFY_FILE :
AuditEvent.CREATE_FILE );
}
else if ( !inputContext.hasStream() && isCollection() ) // New
directory
{
localFile.mkdir();
+ log.debug( "Directory '" + resource.getDisplayName() + "' (current
user '" + this.principal + "')" );
+
triggerAuditEvent( resource, AuditEvent.CREATE_DIR );
}
else
@@ -343,10 +347,12 @@
DavResourceLocator resourceLocator =
locator.getFactory().createResourceLocator(
locator.getPrefix(), path );
DavResource resource = factory.createResource(
resourceLocator, session );
+
if ( resource != null )
{
list.add( resource );
}
+ log.debug( "Resource '" + item + "' retrieved by '" +
this.principal + "'" );
}
}
catch ( DavException e )
@@ -382,6 +388,7 @@
triggerAuditEvent( member, AuditEvent.REMOVE_FILE );
}
+ log.debug( ( resource.isDirectory() ? "Directory '" : "File '"
) + member.getDisplayName() + "' removed (current user '" + this.principal +
"')" );
}
catch ( IOException e )
{
@@ -425,6 +432,9 @@
triggerAuditEvent( remoteAddr, locator.getRepositoryId(),
logicalResource, AuditEvent.MOVE_FILE );
}
+
+ log.debug( ( isCollection() ? "Directory '" : "File '" ) +
getLocalResource().getName() + "' moved to '" +
+ destination + "' (current user '" + this.principal +
"')" );
}
catch ( IOException e )
{
@@ -460,6 +470,8 @@
triggerAuditEvent( remoteAddr, locator.getRepositoryId(),
logicalResource, AuditEvent.COPY_FILE );
}
+ log.debug( ( isCollection() ? "Directory '" : "File '" ) +
getLocalResource().getName() + "' copied to '" +
+ destination + "' (current user '" + this.principal +
"')" );
}
catch ( IOException e )
{
Modified:
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java
URL:
http://svn.apache.org/viewvc/archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java?rev=798827&r1=798826&r2=798827&view=diff
==============================================================================
---
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java
(original)
+++
archiva/trunk/archiva-modules/archiva-web/archiva-webdav/src/main/java/org/apache/maven/archiva/webdav/ArchivaDavResourceFactory.java
Wed Jul 29 09:55:18 2009
@@ -190,6 +190,8 @@
throw new DavException(
HttpServletResponse.SC_METHOD_NOT_ALLOWED,
"Write method not allowed for
repository groups." );
}
+
+ log.debug( "Repository group '" + repoGroupConfig.getId() + "'
accessed by '" + activePrincipal + "'" );
// handle browse requests for virtual repos
if ( RepositoryPathUtil.getLogicalResource(
archivaLocator.getOrigResourcePath() ).endsWith( "/" ) )
@@ -221,6 +223,8 @@
throw new DavException(
HttpServletResponse.SC_INTERNAL_SERVER_ERROR, e );
}
+ log.debug( "Managed repository '" + managedRepository.getId() + "'
accessed by '" + activePrincipal + "'" );
+
resource = processRepository( request, archivaLocator,
activePrincipal, managedRepository );
String logicalResource = RepositoryPathUtil.getLogicalResource(
locator.getResourcePath() );
@@ -421,7 +425,7 @@
if ( !resource.isCollection() )
{
boolean previouslyExisted = resourceFile.exists();
-
+
// Attempt to fetch the resource from any defined
proxy.
boolean fromProxy = fetchContentFromProxies(
managedRepository, request, logicalResource );
@@ -453,6 +457,10 @@
String event =
( previouslyExisted ? AuditEvent.MODIFY_FILE :
AuditEvent.CREATE_FILE )
+ PROXIED_SUFFIX;
+
+ log.debug( "Proxied artifact '" +
resourceFile.getName() + "' in repository '" +
+ managedRepository.getId() + "' (current
user '" + activePrincipal + "')" );
+
triggerAuditEvent( request.getRemoteAddr(),
archivaLocator.getRepositoryId(),
logicalResource.getPath(),
event, activePrincipal );
}
@@ -481,6 +489,9 @@
{
destDir.mkdirs();
String relPath = PathUtil.getRelative(
rootDirectory.getAbsolutePath(), destDir );
+
+ log.debug( "Creating destination directory '" +
destDir.getName() + "' (current user '" + activePrincipal + "')" );
+
triggerAuditEvent( request.getRemoteAddr(),
logicalResource.getPath(), relPath,
AuditEvent.CREATE_DIR, activePrincipal
);
}
@@ -554,6 +565,8 @@
File proxiedFile = connectors.fetchFromProxies(
managedRepository, artifact );
resource.setPath( managedRepository.toPath( artifact ) );
+
+ log.debug( "Proxied artifact '" + artifact.getGroupId() + ":"
+ artifact.getArtifactId() + ":" + artifact.getVersion() + "'" );
return ( proxiedFile != null );
}
@@ -852,6 +865,7 @@
if ( isAuthorized( request, repository ) )
{
mergedRepositoryContents.add( resourceFile );
+ log.debug( "Repository '" + repository + "'
accessed by '" + activePrincipal + "'" );
}
}
catch ( DavException e )
@@ -870,6 +884,7 @@
WebdavMethodUtil.getMethodPermission( request.getMethod() ) ) )
{
mergedRepositoryContents.add( resourceFile );
+ log.debug( "Repository '" + repository + "'
accessed by '" + activePrincipal + "'" );
}
}
catch ( UnauthorizedException e )