Disclaimer: this question is not intended to be "opinion based". I am looking for strong pros & cons.
In the CDI application what is more conventional and proper to use: a static logger:
private static final Logger LOGGER = LoggerFactory.getLogger...;
or inject it having a specific producer?
@Inject
private Logger logger;
As an advantage of the former one is that we can create our own LoggerFactory wrapper (for some purposes) and use it all places without being care that somebody has misused another factory. But are any other disadvantages/advantages or this approach? What is more "canonical"?