python便利コード

# -*- coding: utf-8 -*-

import os
import sys
sys.path.append( os.path.dirname(__file__) )

import logging.config
from ast.ast_processor import AstProcessor
from ast.basic_info_listener import BasicInfoListener
import sys
import yaml
import pprint
import json

log_conf = './log_conf.yaml'  # 

def main():
    logging.config.dictConfig(yaml.load(open(log_conf).read(),
                                        Loader=yaml.SafeLoader))
    logger = logging.getLogger('mainLogger')

    target_file_path = sys.argv[1]
    ast_info = \
        AstProcessor(logging, BasicInfoListener()).execute(target_file_path)

    #print (pprint.pformat(ast_info, width=80)) # 
    print(json.dumps(ast_info, ensure_ascii=False, indent=2))
#    pprint.pprint(ast_info)


if __name__ == "__main__":
    main()
    
version: 1

formatters:
 mainFormatter:
   format: '%(asctime)s - %(name)s - %(levelname)s - %(message)s'
   datefmt: '%Y/%m/%d %I:%M:%S'

handlers:
 file:
   class: logging.handlers.RotatingFileHandler
   level: INFO
   formatter: mainFormatter
   filename: antlr.log
   maxBytes: 1000
   backupCount: 1

loggers:
 mainLogger:
   level: INFO
   handlers: [file]
   propagate: no

root:
 level: INFO
 handlers: []

この記事が気に入ったらサポートをしてみませんか?