aboutsummaryrefslogtreecommitdiffstats
path: root/anteater/main.py
diff options
context:
space:
mode:
Diffstat (limited to 'anteater/main.py')
-rw-r--r--anteater/main.py44
1 files changed, 37 insertions, 7 deletions
diff --git a/anteater/main.py b/anteater/main.py
index 3a23ceb..ef127c2 100644
--- a/anteater/main.py
+++ b/anteater/main.py
@@ -25,33 +25,63 @@ Options:
"""
from __future__ import absolute_import
+import errno
+import logging
+
+import os
import six.moves.configparser
from docopt import docopt
-import os
+
+from anteater import LOG
from anteater.src.patch_scan import prepare_patchset
from anteater.src.project_scan import prepare_project
-from anteater.utils import anteater_logger as antlog
-
config = six.moves.configparser.RawConfigParser()
config.read('anteater.conf')
reports_dir = config.get('config', 'reports_dir')
-logger = antlog.Logger(__name__).getLogger()
__version__ = "0.1"
+logger = logging.getLogger(__name__)
+
+
+def _init_logging(anteater_log):
+ """ Setup root logger for package """
+
+ LOG.setLevel(logging.DEBUG)
+ ch = logging.StreamHandler()
+ formatter = logging.Formatter('%(asctime)s - %(name)s - '
+ '%(levelname)s - %(message)s')
+ ch.setFormatter(formatter)
+ ch.setLevel(logging.DEBUG)
+
+ # create the directory if it does not exist
+ path = os.path.dirname(anteater_log)
+ try:
+ os.makedirs(path)
+ except OSError as e:
+ if e.errno != errno.EEXIST:
+ raise
+
+ handler = logging.FileHandler(anteater_log)
+ handler.setFormatter(formatter)
+ handler.setLevel(logging.DEBUG)
+ del logging.root.handlers[:]
+ logging.root.addHandler(ch)
+ logging.root.addHandler(handler)
def check_dir():
""" Creates a directory for scan reports """
try:
os.makedirs(reports_dir)
- logger.info('Creating reports directory: {0}'.format(reports_dir))
+ logger.info('Creating reports directory: %s', reports_dir)
except OSError as e:
- if not os.path.isdir(reports_dir):
- logger.error(e)
+ if e.errno != errno.EEXIST:
+ raise
def main():
""" Main function, mostly for passing arguments """
+ _init_logging(config.get('config', 'anteater_log'))
check_dir()
arguments = docopt(__doc__, version=__version__)