hadoop streaming: how to see application logs?

邮差的信 提交于 2019-11-28 06:04:36

问题


I can see all hadoop logs on my /usr/local/hadoop/logs path

but where can I see application level logs? for example :

mapper.py

import logging

def main():
    logging.info("starting map task now")
    // -- do some task -- //
    print statement  

reducer.py

import logging
def main():
    for line in sys.stdin:
        logging.info("received input to reducer - " + line)  
        // -- do some task -- //
        print statement

Where I can see logging.info or related log statements of my application?
I am using Python and using hadoop-streaming

Thank you


回答1:


Hadoop streaming uses STDIN/STDOUT for passing the key/value pairs between the mappers and reducers, so the log messages have to be written to a specific log file - check the sample code and the python logging documentation for more details. This Query might also help.




回答2:


Hadoop gathers stderr, which can be viewed on hadoop map/reduce status site. So you can just write to stderr.



来源:https://stackoverflow.com/questions/7894770/hadoop-streaming-how-to-see-application-logs

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!