You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Oleg Kalnichevski (Jira)" <ji...@apache.org> on 2020/07/09 09:37:00 UTC

[jira] [Resolved] (HTTPCLIENT-2096) Consider using static loggers instead of instance loggers

     [ https://issues.apache.org/jira/browse/HTTPCLIENT-2096?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Oleg Kalnichevski resolved HTTPCLIENT-2096.
-------------------------------------------
    Resolution: Fixed

> Consider using static loggers instead of instance loggers
> ---------------------------------------------------------
>
>                 Key: HTTPCLIENT-2096
>                 URL: https://issues.apache.org/jira/browse/HTTPCLIENT-2096
>             Project: HttpComponents HttpClient
>          Issue Type: Bug
>    Affects Versions: 5.0.1
>            Reporter: Carter Kozak
>            Priority: Major
>          Time Spent: 2h 10m
>  Remaining Estimate: 0h
>
> I'd like to consider replacing instance loggers with static loggers to avoid paying a penalty on instantiation. This would result in slightly different (and arguably better) behavior when classes are extended, as the logger origin would reflect the location that produced logging, not the subclass that happened to extend it. For example, if I want to debug hc5, I might set the {{org.apache.hc}} origin to {{TRACE}} level and add it to a separate appender. If I've extended a component it won't appear with my httpclient logs using the {{getClass()}} approach.
> From [~olegk]
> bq. As far as I know static loggers in low level libraries are considered evil and are to be avoided in favor of instance loggers. The overhead of logger instantiation is quite manageable if one injects logger through a constructor of frequently allocated and deallocated components.
> Conversation started here:
> https://github.com/apache/httpcomponents-client/pull/232#discussion_r448963006
> Some existing documentation:
> http://www.slf4j.org/faq.html#declared_static
> https://logging.apache.org/log4j/2.x/manual/usage.html#StaticVsNonStatic



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org