get current function name inside that function using python

前端 未结 4 1027
囚心锁ツ
囚心锁ツ 2021-02-01 07:12

For my logging purpose i want to log all the names of functions where my code is going

Does not matter who is calling the function , i want the the function name in whic

4条回答
  •  孤街浪徒
    2021-02-01 07:56

    Actually, Eric's answer points the way if this is about logging:

    For my logging purpose i want to log all the names of functions where my code is going

    You can adjust the formatter to log the function name:

    import logging               
    
    def whoami():
        logging.info("Now I'm there")
    
    def foo():
        logging.info("I'm here")
        whoami()
        logging.info("I'm back here again")
    
    logging.basicConfig(
        format="%(asctime)-15s [%(levelname)s] %(funcName)s: %(message)s",
        level=logging.INFO)
    foo()
    

    prints

    2015-10-16 16:29:34,227 [INFO] foo: I'm here
    2015-10-16 16:29:34,227 [INFO] whoami: Now I'm there
    2015-10-16 16:29:34,227 [INFO] foo: I'm back here again
    

提交回复
热议问题