diff --git a/alfa-service/pom.xml b/alfa-service/pom.xml
index 525cf2e219bd65e3edfade89158b536bd1fc71d8..67e37c00dbdaa4eaadd4696180e0a39f18ed092e 100644
--- a/alfa-service/pom.xml
+++ b/alfa-service/pom.xml
@@ -132,16 +132,6 @@
 			<artifactId>mapstruct</artifactId>
 		</dependency>
 
-		<!-- aspectJ -->
-		<dependency>
-			<groupId>org.aspectj</groupId>
-			<artifactId>aspectjweaver</artifactId>
-		</dependency>
-		<dependency>
-			<groupId>org.aspectj</groupId>
-			<artifactId>aspectjrt</artifactId>
-		</dependency>
-
 		<!-- Dev -->
 		<dependency>
 			<groupId>org.projectlombok</groupId>
diff --git a/goofy-server/pom.xml b/goofy-server/pom.xml
index d8828e90c1595e36866312085376c49d5d71dfad..d351cacb8fcb1679640a44ad52bd7e6b124c34b6 100644
--- a/goofy-server/pom.xml
+++ b/goofy-server/pom.xml
@@ -35,6 +35,16 @@
 			<groupId>org.springframework.boot</groupId>
 			<artifactId>spring-boot-starter</artifactId>
 		</dependency>
+
+        <!-- aspectJ -->
+        <dependency>
+          <groupId>org.aspectj</groupId>
+          <artifactId>aspectjweaver</artifactId>
+        </dependency>
+        <dependency>
+          <groupId>org.aspectj</groupId>
+          <artifactId>aspectjrt</artifactId>
+        </dependency>
 	</dependencies>
 
   <build>
diff --git a/goofy-server/src/main/java/de/ozgcloud/alfa/logging/AlfaAspectPointcuts.java b/goofy-server/src/main/java/de/ozgcloud/alfa/logging/AlfaAspectPointcuts.java
new file mode 100644
index 0000000000000000000000000000000000000000..7f72dd6b7afa91fc5466381f258ddba7a6440003
--- /dev/null
+++ b/goofy-server/src/main/java/de/ozgcloud/alfa/logging/AlfaAspectPointcuts.java
@@ -0,0 +1,31 @@
+package de.ozgcloud.alfa.logging;
+
+import org.aspectj.lang.annotation.Pointcut;
+
+public class AlfaAspectPointcuts {
+
+	@Pointcut("execution(public * *(..))")
+	void anyPublicMethods() {
+		// aspect pointcut - no implementation needed
+	}
+
+	@Pointcut("within(de.ozgcloud..*)")
+	void anythingInOzgCloud() {
+		// aspect pointcut - no implementation needed
+	}
+
+	@Pointcut("anyPublicMethods() && anythingInOzgCloud()")
+	void anyPublicMethodInOzgCloud() {
+		// aspect pointcut - no implementation needed
+	}
+
+	@Pointcut("anyPublicMethodInOzgCloud() && @target(org.springframework.stereotype.Service)")
+	void anyPublicServiceMethod() {
+		// aspect pointcut - no implementation needed
+	}
+
+	@Pointcut("anyPublicMethodInOzgCloud() && @target(org.springframework.web.bind.annotation.RestController)")
+	void anyPublicRestControllerMethod() {
+		// aspect pointcut - no implementation needed
+	}
+}
diff --git a/goofy-server/src/main/java/de/ozgcloud/alfa/logging/AlfaLoggingAspect.java b/goofy-server/src/main/java/de/ozgcloud/alfa/logging/AlfaLoggingAspect.java
new file mode 100644
index 0000000000000000000000000000000000000000..410c9eb5301836991c52fe70448291efa3bd8948
--- /dev/null
+++ b/goofy-server/src/main/java/de/ozgcloud/alfa/logging/AlfaLoggingAspect.java
@@ -0,0 +1,31 @@
+package de.ozgcloud.alfa.logging;
+
+import org.aspectj.lang.JoinPoint;
+import org.aspectj.lang.annotation.AfterReturning;
+import org.aspectj.lang.annotation.AfterThrowing;
+import org.aspectj.lang.annotation.Aspect;
+import org.aspectj.lang.annotation.Before;
+import org.springframework.stereotype.Component;
+
+import de.itvsh.kop.common.logging.AspectLoggingUtils;
+
+@Aspect
+@Component
+public class AlfaLoggingAspect extends AlfaAspectPointcuts {
+
+	@Before("anyPublicServiceMethod() || anyPublicRestControllerMethod()")
+	public void onServiceMethod(JoinPoint joinPoint) {
+		AspectLoggingUtils.log(joinPoint);
+	}
+
+	@AfterThrowing(pointcut = "anyPublicServiceMethod() || anyPublicRestControllerMethod()", throwing = "ex")
+	public void afterExceptionInServiceMethod(JoinPoint joinPoint, Exception ex) {
+		AspectLoggingUtils.logException(joinPoint, ex);
+	}
+
+	@AfterReturning(pointcut = "anyPublicServiceMethod() || anyPublicRestControllerMethod()", returning = "returnValue")
+	public void afterServiceMethod(JoinPoint joinPoint, Object returnValue) {
+		AspectLoggingUtils.logReturnValue(joinPoint, returnValue);
+	}
+
+}