You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Gradle automatically downloads dependencies during the build. Configuration files:
50
52
-`build.gradle.kts` - Build configuration and dependency declarations
@@ -777,7 +779,9 @@ Output goes to `doc/` directory.
777
779
778
780
## Logging
779
781
780
-
The application uses SLF4J with Logback for logging. This provides flexible log configuration and runtime control.
782
+
The application uses **kotlin-logging** (a Kotlin wrapper for SLF4J) with Logback as the backend. This provides flexible log configuration, runtime control, and lambda-based lazy evaluation to eliminate verbose guard checks.
783
+
784
+
**Migration Status (January 2026):** Migrated from SLF4J to kotlin-logging. All logger declarations now use `KotlinLogging.logger {}` for automatic lazy evaluation and cleaner syntax.
781
785
782
786
### Configuration Files
783
787
@@ -786,7 +790,7 @@ The application uses SLF4J with Logback for logging. This provides flexible log
786
790
787
791
### Log Levels
788
792
789
-
Standard SLF4J log levels (most to least verbose):
793
+
Standard log levels (most to least verbose):
790
794
-`TRACE` - Very detailed diagnostic information
791
795
-`DEBUG` - Detailed debugging information
792
796
-`INFO` - General informational messages (default for most loggers)
@@ -842,20 +846,39 @@ The following loggers are configured in `logback.xml`:
842
846
843
847
### Adding Logging to Code
844
848
845
-
When modifying Java source code (following the conservative approach), use SLF4J logging:
849
+
When adding logging to Kotlin code, use kotlin-logging for automatic lazy evaluation:
846
850
847
-
```java
848
-
importorg.slf4j.Logger;
849
-
importorg.slf4j.LoggerFactory;
851
+
```kotlin
852
+
importio.github.oshai.kotlinlogging.KotlinLogging
853
+
854
+
privateval logger =KotlinLogging.logger {}
855
+
856
+
// In methods - lambda-based lazy evaluation (no manual guard checks needed):
857
+
logger.trace { "Very detailed trace message" }
858
+
logger.debug { "Debug message with context: $variable" }
0 commit comments