Hi Larry,

Here is my gateway-log4j.properties.

*app.log.dir=/var/log/knox*
*app.log.file=${launcher.name <http://launcher.name>}.log*
*app.audit.file=${launcher.name <http://launcher.name>}-audit.log*

*log4j.rootLogger=ERROR*

*log4j.logger.org.apache.knox.gateway=ERROR*

*log4j.logger.org.eclipse.jetty=ERROR*

*log4j.logger.org.apache.shiro=ERROR*
*log4j.logger.org.apache.http=ERROR*
*log4j.logger.org.apache.http.client=ERROR*
*log4j.logger.org.apache.http.headers=ERROR*
*log4j.logger.org.apache.http.wire=ERROR*

Even I changed it like this, I can still see lots of DEBUG log in
*gateway.out*. Seems it only affects* gateway.log*, not *gateway.out.*

On Wed, Sep 5, 2018 at 10:48 AM, larry mccay <lmc...@apache.org> wrote:

> Hi Guang -
>
> This certainly sounds frustrating.
> I have never had trouble turning it off.
> Can you share your gatway-log4j.properties file - just make sure there
> isn't anything sensitive in there?
>
> thanks,
>
> --larry
>
> On Wed, Sep 5, 2018 at 1:40 PM Guang Yang <k...@uber.com> wrote:
>
>> And we're not using Ambari. We just deploy manually.
>>
>> On Tue, Sep 4, 2018 at 11:02 PM, Guang Yang <k...@uber.com> wrote:
>>
>>> Hi guys,
>>>
>>> I'm working with Wei and we still don't figure it out. Let me clarify
>>> the question.
>>>
>>> Currently, we're seeing lots of DEBUG logs in file *gateway.out*, which
>>> is from here https://github.com/apache/knox/blob/master/gateway-
>>> release/home/bin/gateway.sh#L127. On the one hand, it prints the file
>>> content just like Wei talked about before, on the other hand we suspect it
>>> might be related to the performance issue when download a file through
>>> WEBHDFS. So we're trying to disable all these DEBUG logs. We tried simply
>>> removing this part *>>$APP_OUT_FILE*, although there is no such output
>>> file, but actually Knox still prints logs to console. So what we want to do
>>> is to disable all the DEBUG log thoroughly, so the service won't print logs
>>> to anywhere.
>>>
>>> We almost tried everything in *gateway-log4j.properties*, but it seems
>>> it only affects app.log.file=${launcher.name}.*log* instead of
>>> *gateway.out*. So, any idea guys?
>>>
>>> Thanks,
>>> Guang
>>>
>>> On Sun, Apr 15, 2018 at 11:08 AM, larry mccay <lmc...@apache.org> wrote:
>>>
>>>> +1 to Kevin's point.
>>>> Ambari rewrites all configs on server restart.
>>>>
>>>> On Sun, Apr 15, 2018 at 1:16 PM, Kevin Risden <kris...@apache.org>
>>>> wrote:
>>>>
>>>>> Are you using Ambari or deploying Knox manually?
>>>>>
>>>>> If you using Ambari, then Ambari will force overwrite the log4j
>>>>> configs during a restart. You must update the log4j settings in Ambari.
>>>>> Another option if using Ambari is to find the debug setting and set it to
>>>>> false (I don't have a cluster in front of me so can't look up the 
>>>>> setting).
>>>>>
>>>>> Kevin Risden
>>>>>
>>>>> On Sun, Apr 15, 2018 at 10:56 AM, Wei Han <wei...@uber.com> wrote:
>>>>>
>>>>>> Interesting. Thanks Larry. I'll dig more on my side.
>>>>>>
>>>>>> On Sun, Apr 15, 2018 at 4:54 AM, larry mccay <lmc...@apache.org>
>>>>>> wrote:
>>>>>>
>>>>>>> No, I cannot reproduce it.
>>>>>>> If you are modifying the correct gateway-log4j.properties and
>>>>>>> restarting the server you should not see that.
>>>>>>>
>>>>>>> In fact, turning on DEBUG for wire via:
>>>>>>> log4j.logger.org.apache.http.wire=DEBUG
>>>>>>>
>>>>>>> Doesn't result in output in gateway.out for me but instead
>>>>>>> gateway.log and turning it on and off certainly works for me.
>>>>>>>
>>>>>>> You may have enabled TRACE logging if you are seeing body content -
>>>>>>> those settings are like the following:
>>>>>>>
>>>>>>> #log4j.logger.org.apache.knox.gateway.access=TRACE,httpaccess
>>>>>>> #log4j.additivity.org.apache.knox.gateway.access=false
>>>>>>>
>>>>>>> #log4j.logger.org.apache.knox.gateway.http=TRACE,httpserver
>>>>>>> #log4j.additivity.org.apache.knox.gateway.http=false
>>>>>>> ##log4j.logger.org.apache.knox.gateway.http.request.headers=OFF
>>>>>>> ##log4j.logger.org.apache.knox.gateway.http.response.headers=OFF
>>>>>>> ##log4j.logger.org.apache.knox.gateway.http.request.body=OFF
>>>>>>> ##log4j.logger.org.apache.knox.gateway.http.response.body=OFF
>>>>>>>
>>>>>>> I suggest you back up to the gateway-log4j.properties from the
>>>>>>> original install and remove any other log4j config that you may have
>>>>>>> elsewhere.
>>>>>>>
>>>>>>> On Sun, Apr 15, 2018 at 1:58 AM, Wei Han <wei...@uber.com> wrote:
>>>>>>>
>>>>>>>> Hi Larry - Thanks a lot for getting back to me.
>>>>>>>>
>>>>>>>> Yes I made sure all DEBUG level is turned off in my 
>>>>>>>> gateway-log4j.properties
>>>>>>>> file, but that doesn't seem to be working. I also tried to
>>>>>>>> explicitly set log4j.logger.httpclient.wire.header to WARN (as
>>>>>>>> suggested in post
>>>>>>>> <https://stackoverflow.com/questions/4915414/disable-httpclient-logging>),
>>>>>>>> but that also didn't help.
>>>>>>>>
>>>>>>>> Actually it's very easy to reproduce this(at least on my side). If
>>>>>>>> you call knox with a webhdfs request (like 
>>>>>>>> webhdfs/v1/tmp/weihan/small.txt?op=OPEN),
>>>>>>>> you should be able to see a bunch of below logs in gateway.out. In 
>>>>>>>> fact it
>>>>>>>> outputs the actual content on the wire(security hole?)
>>>>>>>>
>>>>>>>>       06:52:49.751 [qtp1473205473-61] DEBUG org.apache.http.wire -
>>>>>>>> http-outgoing-2 << "[0x0][0x0
>>>>>>>>
>>>>>>>> Let me know if you're able to repro this.
>>>>>>>>
>>>>>>>> Thanks.
>>>>>>>>
>>>>>>>> On Sat, Apr 14, 2018 at 7:11 AM, larry mccay <lmc...@apache.org>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Hi Wei -
>>>>>>>>>
>>>>>>>>> If you look at your gateway-log4j.properties file, you should see
>>>>>>>>> something like the following near the top:
>>>>>>>>>
>>>>>>>>> app.log.dir=${launcher.dir}/../logs
>>>>>>>>> app.log.file=${launcher.name}.log
>>>>>>>>> app.audit.file=${launcher.name}-audit.log
>>>>>>>>>
>>>>>>>>> log4j.rootLogger=ERROR, drfa
>>>>>>>>>
>>>>>>>>> log4j.logger.org.apache.knox.gateway=INFO
>>>>>>>>> #log4j.logger.org.apache.knox.gateway=DEBUG
>>>>>>>>>
>>>>>>>>> #log4j.logger.org.eclipse.jetty=DEBUG
>>>>>>>>> #log4j.logger.org.apache.shiro=DEBUG
>>>>>>>>> #log4j.logger.org.apache.http=DEBUG
>>>>>>>>> #log4j.logger.org.apache.http.client=DEBUG
>>>>>>>>> #log4j.logger.org.apache.http.headers=DEBUG
>>>>>>>>> #log4j.logger.org.apache.http.wire=DEBUG
>>>>>>>>>
>>>>>>>>> Note that all of the DEBUG settings are commented out.
>>>>>>>>> Also note that the rootLogger is set to ERROR and not DEBUG.
>>>>>>>>>
>>>>>>>>> Can you compare and share with us what yours are set to?
>>>>>>>>>
>>>>>>>>> thanks,
>>>>>>>>>
>>>>>>>>> --larry
>>>>>>>>>
>>>>>>>>> On Sat, Apr 14, 2018 at 2:56 AM, Wei Han <wei...@uber.com> wrote:
>>>>>>>>>
>>>>>>>>>> Hi Knox experts -
>>>>>>>>>>
>>>>>>>>>> Has anyone successfully turn off the debug loggings
>>>>>>>>>> from org.apache.http.wire, like below?
>>>>>>>>>>
>>>>>>>>>>       06:52:49.751 [qtp1473205473-61] DEBUG org.apache.http.wire
>>>>>>>>>> - http-outgoing-2 << "[0x0][0x0
>>>>>>>>>>
>>>>>>>>>> I've tried almost everything in this stackoverflow post
>>>>>>>>>> <https://stackoverflow.com/questions/4915414/disable-httpclient-logging>,
>>>>>>>>>> but my gateway.out is still filled with all the debug logs from 
>>>>>>>>>> httpclient.
>>>>>>>>>>
>>>>>>>>>> Any tip would be appreciated.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>

Reply via email to