diff --git a/CHANGELOG.md b/CHANGELOG.md index d900ae9552fd364a2bbb0604bde450cbf5385ffa..2b4c8f976e83cfb73ebde3904b6aa5991dfca94c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -74,6 +74,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * The `identifiable_adapters.IdentifiableAdapter` uses entity ids (negative for entities that don't exist remotely) instead of entity objects for keeping track of references. +* Log output is either written to $SHARED_DIR/ (when this variable is set) or just to the terminal. ### Deprecated ### diff --git a/src/caoscrawler/crawl.py b/src/caoscrawler/crawl.py index d21e6e2521578dc407e445d8220506677be84e26..c926df4443fa461505d428e1738db43f8683def2 100644 --- a/src/caoscrawler/crawl.py +++ b/src/caoscrawler/crawl.py @@ -1550,11 +1550,19 @@ def crawler_main(crawled_directory_path: str, try: crawler = Crawler(securityMode=securityMode) - # setup logging and reporting if serverside execution - if "SHARED_DIR" in os.environ: + if "SHARED_DIR" in os.environ: # setup logging and reporting if serverside execution userlog_public, htmluserlog_public, debuglog_public = configure_server_side_logging() + # TODO make this optional _create_status_record( - get_config_setting("public_host_url") + "/Shared/" + htmluserlog_public, crawler.run_id) + get_config_setting("public_host_url") + "/Shared/" + htmluserlog_public, + crawler.run_id) + else: # setup stdout logging for other cases + root_logger = logging.getLogger() + root_logger.setLevel(level=(logging.DEBUG if debug else logging.INFO)) + handler = logging.StreamHandler(stream=sys.stdout) + handler.setLevel(logging.DEBUG if debug else logging.INFO) + root_logger.addHandler(handler) + logger.handlers.clear() debug_tree = DebugTree() crawled_data = scan_directory(