[ 
https://issues.apache.org/jira/browse/ATLAS-3610?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17037501#comment-17037501
 ] 

Mariusz Górski edited comment on ATLAS-3610 at 2/15/20 12:54 PM:
-----------------------------------------------------------------

I have made another go (*ATLAS-3610-2.patch*)  which covers only *atlas_start* 
and *cputil*  scripts. 

All remaining invocations are left untouched as logconsole doesn't play well 
with processes requiring user input.

I've added the necessary option to *pom.xml* and *atlas-env.sh* (defaulting to 
*false*). 

With this approach when *ENABLE_LOGGING_TO_CONSOLE=false* then scripts behave 
in the atlas_start and cputil behave in the old way. When 
*ENABLE_LOGGING_TO_CONSOLE=true* then *atlas_start.py *is long running script.


Please test now [~Rahul_FI] [~vishal.suvagia] [~mehul]


was (Author: mrp1nk):
I have made another go (*ATLAS-3610-2.patch*)  which covers only *atlas_start* 
and *cputil*  scripts. 

All remaining invocations are left untouched as logconsole doesn't play well 
with processes requiring user input.

I've added the necessary option to *pom.xml* and *atlas-env.sh* (defaulting to 
*false*). 

With this approach when ENABLE_LOGGING_TO_CONSOLE=false then scripts behave in 
the atlas_start and cputil behave in the old way. When 
ENABLE_LOGGING_TO_CONSOLE=true then atlas_start.py is long running script.


Please test now [~Rahul_FI] [~vishal.suvagia] [~mehul]

> Enable logging to multiple targets (logdir, stdout)
> ---------------------------------------------------
>
>                 Key: ATLAS-3610
>                 URL: https://issues.apache.org/jira/browse/ATLAS-3610
>             Project: Atlas
>          Issue Type: Improvement
>          Components:  atlas-core
>    Affects Versions: 3.0.0
>            Reporter: Mariusz Górski
>            Priority: Minor
>             Fix For: 3.0.0
>
>         Attachments: ATLAS-3610-1.patch, ATLAS-3610-2.patch, ATLAS-3610.patch
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> *Problem description*
> When starting Atlas, Python scripts are invoked to spawn all necessary 
> processes. This is achieved with the use of _subprocess.Popen()_ in 
> _runProcess()_ function of _atlas_config.py_ script. While doing that, stdout 
> is being redirected to log files, which (for java processes) can override 
> log4j configuration (if configured with stdout handler). This creates 
> situation when log4j configuration cannot be relied upon and prevents logging 
> to stdout.
> *Proposed solution*
>  * Add possibility to log to stdout by using multiple stdout/stderr handlers
>  * Adjust _runProcess()_ function from _atlas_config.py_ script (and all 
> functions relying on it) to provide _logconsole_ kwarg which will add 
> additional handler to Popen stdout/stderr redirection
>  * Add _ENABLE_LOGGING_TO_CONSOLE_ env variable (defaulting to _False_) for 
> backwards compatibility.
>  * Adjust _atlas_start.py_ script to make use of _ENABLE_LOGGING_TO_CONSOLE_  
> and provide it in functions invoking atlas/solr/elasticsearch/zookeeper
> *Predicted Benefits*
> This improvement would bring the benefit of enabling logging to stdout (which 
> is supressed for now even if configured in spawned components), which could 
> be very useful when running Atlas in docker container or in Kubernetes/OC, 
> where some logging scraping is present.



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

Reply via email to