Use slf4j instead of log4j everywhere in the project
- Dominant language
- Scala
- Stars
- 33
- Forks
- 16
- PR merge metrics
- No merged PRs in 30d
Description
## Background
Reported by @GeorgiChochov.
Slf4j is an abstraction layer for logging and exact implementation to use is determined at deployment time. Currently, Spark is our root project dependency and it uses log4j implementation. Rather than depending on a concrete logging backend, it is a good practice to make modules depend on interfaces provided by slf4j. In our case, the logging backend is provided by Spark. So another reason to use slf4j.
## Feature
Use slf4j instead of log4j everywhere in the project. Especially everywhere we have Spark dependency.
## Proposed Solution [Optional]
Basically,
replace
```scala
import org.apache.log4j.LogManager
private val log = LogManager.getLogger(this.getClass)
```
with
```scala
import org.slf4j.{Logger, LoggerFactory}
private val log: Logger = LoggerFactory.getLogger(this.getClass)
```
Contributor guide
Assessment
This issue has not been assessed yet.