File tree Expand file tree Collapse file tree
core/shared/src/main/scala/org/typelevel/log4cats
main/scala/org/typelevel/log4cats/slf4j
test/scala/org/typelevel/log4cats/slf4j Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -27,16 +27,22 @@ trait LoggerFactoryGen[F[_]] {
2727}
2828
2929private [log4cats] trait LoggerFactoryGenCompanion {
30+ @ deprecated(" LoggerFactories should be passed explicitly, not implicitly" , " 2.5.0" )
3031 def getLogger [F [_]](implicit lf : LoggerFactoryGen [F ], name : LoggerName ): lf.LoggerType =
3132 lf.getLogger
33+ @ deprecated(" LoggerFactories should be passed explicitly, not implicitly" , " 2.5.0" )
3234 def getLoggerFromName [F [_]](name : String )(implicit lf : LoggerFactoryGen [F ]): lf.LoggerType =
3335 lf.getLoggerFromName(name)
36+ @ deprecated(" LoggerFactories should be passed explicitly, not implicitly" , " 2.5.0" )
3437 def getLoggerFromClass [F [_]](clazz : Class [_])(implicit lf : LoggerFactoryGen [F ]): lf.LoggerType =
3538 lf.getLoggerFromClass(clazz)
39+ @ deprecated(" LoggerFactories should be passed explicitly, not implicitly" , " 2.5.0" )
3640 def create [F [_]](implicit lf : LoggerFactoryGen [F ], name : LoggerName ): F [lf.LoggerType ] =
3741 lf.create
42+ @ deprecated(" LoggerFactories should be passed explicitly, not implicitly" , " 2.5.0" )
3843 def fromName [F [_]](name : String )(implicit lf : LoggerFactoryGen [F ]): F [lf.LoggerType ] =
3944 lf.fromName(name)
45+ @ deprecated(" LoggerFactories should be passed explicitly, not implicitly" , " 2.5.0" )
4046 def fromClass [F [_]](clazz : Class [_])(implicit lf : LoggerFactoryGen [F ]): F [lf.LoggerType ] =
4147 lf.fromClass(clazz)
4248}
Original file line number Diff line number Diff line change 1717package org .typelevel .log4cats
1818package slf4j
1919
20+ import cats .effect .kernel .Sync
2021import org .slf4j .{Logger => JLogger }
2122
2223trait Slf4jFactory [F [_]] extends LoggerFactory [F ] {
@@ -26,8 +27,23 @@ trait Slf4jFactory[F[_]] extends LoggerFactory[F] {
2627}
2728
2829object Slf4jFactory extends LoggerFactoryGenCompanion {
30+ @ deprecated(" LoggerFactories should be passed explicitly, not implicitly" , " 2.5.0" )
2931 def apply [F [_]: Slf4jFactory ]: Slf4jFactory [F ] = implicitly
3032
33+ def create [F [_]: Sync ]: Slf4jFactory [F ] = new Slf4jFactory [F ] {
34+ override def getLoggerFromName (name : String ): SelfAwareStructuredLogger [F ] =
35+ Slf4jLogger .getLoggerFromName(name)
36+
37+ override def getLoggerFromSlf4j (logger : JLogger ): SelfAwareStructuredLogger [F ] =
38+ Slf4jLogger .getLoggerFromSlf4j(logger)
39+
40+ override def fromName (name : String ): F [SelfAwareStructuredLogger [F ]] =
41+ Slf4jLogger .fromName(name)
42+
43+ override def fromSlf4j (logger : JLogger ): F [SelfAwareStructuredLogger [F ]] =
44+ Slf4jLogger .fromSlf4j(logger)
45+ }
46+
3147 def getLoggerFromSlf4j [F [_]](logger : JLogger )(implicit
3248 lf : Slf4jFactory [F ]
3349 ): SelfAwareStructuredLogger [F ] = lf.getLoggerFromSlf4j(logger)
Original file line number Diff line number Diff line change 1717package org .typelevel .log4cats
1818
1919import cats .effect .Sync
20- import org .slf4j .{Logger => JLogger }
2120
2221package object slf4j {
23- implicit def loggerFactoryforSync [F [_]: Sync ]: Slf4jFactory [F ] = new Slf4jFactory [F ] {
24- override def getLoggerFromName (name : String ): SelfAwareStructuredLogger [F ] =
25- Slf4jLogger .getLoggerFromName(name)
2622
27- override def getLoggerFromSlf4j (logger : JLogger ): SelfAwareStructuredLogger [F ] =
28- Slf4jLogger .getLoggerFromSlf4j(logger)
29-
30- override def fromName (name : String ): F [SelfAwareStructuredLogger [F ]] =
31- Slf4jLogger .fromName(name)
32-
33- override def fromSlf4j (logger : JLogger ): F [SelfAwareStructuredLogger [F ]] =
34- Slf4jLogger .fromSlf4j(logger)
35- }
23+ @ deprecated(" LoggerFactories should be passed explicitly, not implicitly" , " 2.5.0" )
24+ implicit def loggerFactoryforSync [F [_]](implicit F : Sync [F ]): Slf4jFactory [F ] =
25+ Slf4jFactory .create(F )
3626}
Original file line number Diff line number Diff line change @@ -48,7 +48,7 @@ class Slf4jLoggerOuterClassMacroTest {
4848
4949object LoggingBaseline {
5050 val t = new Throwable
51- def logger [F [_]: Sync ]: SelfAwareStructuredLogger [F ] = Slf4jFactory .getLogger [F ]
51+ def logger [F [_]: Sync ]: SelfAwareStructuredLogger [F ] = Slf4jFactory .create [F ].getLogger
5252
5353 val traceM = logger[IO ].trace(" " )
5454 val traceTM = logger[IO ].trace(t)(" " )
You can’t perform that action at this time.
0 commit comments