diff --git a/src/main/java/se/su/dsv/scipro/data/controllers/impl/FinalSeminarUploadControllerImpl.java b/src/main/java/se/su/dsv/scipro/data/controllers/impl/FinalSeminarUploadControllerImpl.java
index 866dbc8ce7..1d3838e717 100644
--- a/src/main/java/se/su/dsv/scipro/data/controllers/impl/FinalSeminarUploadControllerImpl.java
+++ b/src/main/java/se/su/dsv/scipro/data/controllers/impl/FinalSeminarUploadControllerImpl.java
@@ -188,11 +188,11 @@ public class FinalSeminarUploadControllerImpl implements FinalSeminarUploadContr
 			}
 
 		} catch (IOException e) {
-			Logger.getRootLogger().log(Level.ERROR,
+			Logger.getLogger(this.getClass()).log(Level.ERROR,
 					"Error while storing seminardocument: " + e.getMessage());
 			throw new Exception(e);
 		} catch (PersistenceException e) {
-			Logger.getRootLogger().log(Level.ERROR,
+			Logger.getLogger(this.getClass()).log(Level.ERROR,
 					"Error while storing seminardocument : " + e.getMessage());
 			if (fd != null) {
 				fileDescriptionDao.delete(fd);
@@ -233,11 +233,11 @@ public class FinalSeminarUploadControllerImpl implements FinalSeminarUploadContr
 						SupervisorProjectsFinalSeminarPage.getAbsoluteURL());
 			}
 		} catch (IOException e) {
-			Logger.getRootLogger().log(Level.ERROR,
+			Logger.getLogger(this.getClass()).log(Level.ERROR,
 					"Error while storing opposition report: " + e.getMessage());
 			throw new Exception(e);
 		} catch (PersistenceException e) {
-			Logger.getRootLogger().log(Level.ERROR,
+			Logger.getLogger(this.getClass()).log(Level.ERROR,
 					"Error while storing opposition: " + e.getMessage());
 
 			if (fd != null) {
diff --git a/src/main/java/se/su/dsv/scipro/data/controllers/impl/HandInControllerImpl.java b/src/main/java/se/su/dsv/scipro/data/controllers/impl/HandInControllerImpl.java
index 75b28407b3..4d0cdd6ab9 100644
--- a/src/main/java/se/su/dsv/scipro/data/controllers/impl/HandInControllerImpl.java
+++ b/src/main/java/se/su/dsv/scipro/data/controllers/impl/HandInControllerImpl.java
@@ -111,7 +111,7 @@ public class HandInControllerImpl implements HandInController, IClusterable {
 			return true;
 		} catch (Exception e) {
 			//Something went wrong...
-			Logger.getRootLogger().log(Level.ERROR, "An error occured while storing a handin..."+ e.getMessage());
+			Logger.getLogger(this.getClass()).log(Level.ERROR, "An error occured while storing a handin..."+ e.getMessage());
 			
 			//Delete from repository
 			//TODO: Possible delete the hand in activity folder for the event as well if it's empty
diff --git a/src/main/java/se/su/dsv/scipro/data/controllers/impl/HandInFeedbackControllerImpl.java b/src/main/java/se/su/dsv/scipro/data/controllers/impl/HandInFeedbackControllerImpl.java
index 54330e8616..e5eb7539de 100644
--- a/src/main/java/se/su/dsv/scipro/data/controllers/impl/HandInFeedbackControllerImpl.java
+++ b/src/main/java/se/su/dsv/scipro/data/controllers/impl/HandInFeedbackControllerImpl.java
@@ -81,7 +81,7 @@ public class HandInFeedbackControllerImpl implements HandInFeedbackController {
 			handIn.setStatus(oldStatus);
 			handInFeedbackDao.save(handIn.getFeedback());
 			handInDao.save(handIn);
-			Logger.getRootLogger().log(Level.ERROR, "Failed to store feedback " + e.getMessage());
+			Logger.getLogger(this.getClass()).log(Level.ERROR, "Failed to store feedback " + e.getMessage());
 			return false;
 		}
 	}
diff --git a/src/main/java/se/su/dsv/scipro/json/DefaultUserFullLookup.java b/src/main/java/se/su/dsv/scipro/json/DefaultUserFullLookup.java
index 17c7d943c9..8f9725f62f 100644
--- a/src/main/java/se/su/dsv/scipro/json/DefaultUserFullLookup.java
+++ b/src/main/java/se/su/dsv/scipro/json/DefaultUserFullLookup.java
@@ -40,7 +40,7 @@ public class DefaultUserFullLookup implements IUserLookup {
 	private Logger logger;
 	
 	public DefaultUserFullLookup(){
-		logger = Logger.getRootLogger();
+		logger = Logger.getLogger(this.getClass());
 	}
 	
 	/**
diff --git a/src/main/java/se/su/dsv/scipro/json/DefaultUserLookup.java b/src/main/java/se/su/dsv/scipro/json/DefaultUserLookup.java
index 8dda89b732..8fcb09944b 100644
--- a/src/main/java/se/su/dsv/scipro/json/DefaultUserLookup.java
+++ b/src/main/java/se/su/dsv/scipro/json/DefaultUserLookup.java
@@ -39,7 +39,7 @@ public class DefaultUserLookup implements IUserLookup {
 	private Logger logger;
 	
 	public DefaultUserLookup(){
-		logger = Logger.getRootLogger();
+		logger = Logger.getLogger(this.getClass());
 	}
 	
 	/**
diff --git a/src/main/java/se/su/dsv/scipro/json/ImportWorkerLookup.java b/src/main/java/se/su/dsv/scipro/json/ImportWorkerLookup.java
index 2b027be9c7..8d9742f3a6 100644
--- a/src/main/java/se/su/dsv/scipro/json/ImportWorkerLookup.java
+++ b/src/main/java/se/su/dsv/scipro/json/ImportWorkerLookup.java
@@ -33,7 +33,7 @@ public class ImportWorkerLookup {
 	private Logger logger;
 	
 	public ImportWorkerLookup(){
-		logger = Logger.getRootLogger();
+		logger = Logger.getLogger(this.getClass());
 	}
 	
 	public void lookup(Date updatedAfter, String type) throws IOException{
diff --git a/src/main/java/se/su/dsv/scipro/json/JsonResponseHandler.java b/src/main/java/se/su/dsv/scipro/json/JsonResponseHandler.java
index cfddb955c7..f2932281e0 100644
--- a/src/main/java/se/su/dsv/scipro/json/JsonResponseHandler.java
+++ b/src/main/java/se/su/dsv/scipro/json/JsonResponseHandler.java
@@ -71,7 +71,7 @@ public abstract class JsonResponseHandler implements IResponseHandler {
 	
 	public JsonResponseHandler(){
 		super();
-		logger = Logger.getRootLogger();
+		logger = Logger.getLogger(this.getClass());
 	}
 	
 	
diff --git a/src/main/java/se/su/dsv/scipro/json/RequestSender.java b/src/main/java/se/su/dsv/scipro/json/RequestSender.java
index c75ab5131d..a2f4629e2e 100644
--- a/src/main/java/se/su/dsv/scipro/json/RequestSender.java
+++ b/src/main/java/se/su/dsv/scipro/json/RequestSender.java
@@ -52,7 +52,7 @@ public class RequestSender {
 	
 	public RequestSender(IResponseHandler responseHandler, String url, Map<String, String> parameters, int requestType){
 		
-		logger = Logger.getRootLogger();
+		logger = Logger.getLogger(this.getClass());
 		
 		if(requestType != REQUEST_TYPE_GET && requestType != REQUEST_TYPE_POST){
 			logger.log(Level.ERROR, "Could not send request, no request type specified");
diff --git a/src/main/java/se/su/dsv/scipro/peer/data/dao/controllers/PeerPortalControllerImpl.java b/src/main/java/se/su/dsv/scipro/peer/data/dao/controllers/PeerPortalControllerImpl.java
index 4aa454fe5e..976f6c49c9 100644
--- a/src/main/java/se/su/dsv/scipro/peer/data/dao/controllers/PeerPortalControllerImpl.java
+++ b/src/main/java/se/su/dsv/scipro/peer/data/dao/controllers/PeerPortalControllerImpl.java
@@ -237,7 +237,7 @@ public class PeerPortalControllerImpl implements PeerPortalController {
 
 			return review;
 		} catch (Exception e) {
-			Logger.getRootLogger().log(Level.ERROR,
+			Logger.getLogger(this.getClass()).log(Level.ERROR,
 					"Error while accepting peer request: " + e.getMessage());
 			if (review.getId() != null) {
 				// Something must have gone wrong while updating request status
@@ -286,7 +286,7 @@ public class PeerPortalControllerImpl implements PeerPortalController {
 				return peerRequestDao.save(request);
 			}
 		} catch (Exception e) {
-			Logger.getRootLogger().log(Level.ERROR,
+			Logger.getLogger(this.getClass()).log(Level.ERROR,
 					"Error while storing Peer Request: " + e.getMessage());
 			if (request.getId() != null) {
 				peerRequestDao.delete(request);
@@ -328,7 +328,7 @@ public class PeerPortalControllerImpl implements PeerPortalController {
 			review.setFile(fdesc.get(0));
 			return true;
 		} catch (Exception e) {
-			Logger.getRootLogger().log(Level.ERROR,
+			Logger.getLogger(this.getClass()).log(Level.ERROR,
 					"Error while storing file for peer review: " + e.getMessage());
 			if (review.getFile() != null) {
 				// Clean up the repository
diff --git a/src/main/java/se/su/dsv/scipro/peer/workerthreads/ExpiredReviewResetWorker.java b/src/main/java/se/su/dsv/scipro/peer/workerthreads/ExpiredReviewResetWorker.java
index 17a3710fc9..2c4760b0bf 100644
--- a/src/main/java/se/su/dsv/scipro/peer/workerthreads/ExpiredReviewResetWorker.java
+++ b/src/main/java/se/su/dsv/scipro/peer/workerthreads/ExpiredReviewResetWorker.java
@@ -43,7 +43,7 @@ public class ExpiredReviewResetWorker extends AbstractWorker {
 			Date expirationDate = new DateTime().minusDays(settings.getNumDaysToSubmitPeerReview()).toDate();
 			
 			if( peerReview.getDateCreated().compareTo( expirationDate ) < 0 ) {
-				Logger logger = Logger.getRootLogger();
+				Logger logger = Logger.getLogger(this.getClass());
 				logger.log(Level.INFO,"Expiring peerReview: "+peerReview+" and making "+peerRequest+" available for review again");
 
 				peerReview.setAborted(true);
diff --git a/src/main/java/se/su/dsv/scipro/security/auth/Authenticator.java b/src/main/java/se/su/dsv/scipro/security/auth/Authenticator.java
index 4c53a0580d..bf7bf940ee 100644
--- a/src/main/java/se/su/dsv/scipro/security/auth/Authenticator.java
+++ b/src/main/java/se/su/dsv/scipro/security/auth/Authenticator.java
@@ -39,7 +39,7 @@ public class Authenticator {
 		
 		//Catch exceptions if 	
 		} catch (LoginException le){
-			Logger logger = Logger.getRootLogger();
+			Logger logger = Logger.getLogger(this.getClass());
 			logger.log(Level.ERROR, "System error, Failed to create logincontext:" + le.getMessage());
 			throw le;
 		} catch (SecurityException se){
diff --git a/src/main/java/se/su/dsv/scipro/workerthreads/AbstractWorker.java b/src/main/java/se/su/dsv/scipro/workerthreads/AbstractWorker.java
index 432331f33e..09a66a5fcd 100644
--- a/src/main/java/se/su/dsv/scipro/workerthreads/AbstractWorker.java
+++ b/src/main/java/se/su/dsv/scipro/workerthreads/AbstractWorker.java
@@ -105,7 +105,7 @@ public abstract class AbstractWorker extends Thread {
 				this.commitTransaction();
 			} catch ( Exception e ){
 				this.rollbackTransaction();
-				Logger logger = Logger.getRootLogger();
+				Logger logger = Logger.getLogger(this.getClass());
 				logger.log(Level.ERROR, getNameString(this.getClass())+" failed to save it's workerdata!");
 			}			
 
diff --git a/src/main/java/se/su/dsv/scipro/workerthreads/UserAndProjectImportWorker.java b/src/main/java/se/su/dsv/scipro/workerthreads/UserAndProjectImportWorker.java
index bdf7e909c9..b7d37410bd 100644
--- a/src/main/java/se/su/dsv/scipro/workerthreads/UserAndProjectImportWorker.java
+++ b/src/main/java/se/su/dsv/scipro/workerthreads/UserAndProjectImportWorker.java
@@ -27,7 +27,7 @@ public class UserAndProjectImportWorker extends AbstractWorker{
 	@Override
 	protected void doManualTransactionWork(){
 		Date startDate = this.getStartedWorkingDate();
-		Logger logger = Logger.getRootLogger();
+		Logger logger = Logger.getLogger(this.getClass());
 		logger.log(Level.INFO,"Starting import-from-matchsystem ImportWorker:"+startDate);
 				
 		//Get stats of how many Users and Projects changed scince last update