Coretex
_logger.py
1 # Copyright (C) 2023 Coretex LLC
2 
3 # This file is part of Coretex.ai
4 
5 # This program is free software: you can redistribute it and/or modify
6 # it under the terms of the GNU Affero General Public License as
7 # published by the Free Software Foundation, either version 3 of the
8 # License, or (at your option) any later version.
9 
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU Affero General Public License for more details.
14 
15 # You should have received a copy of the GNU Affero General Public License
16 # along with this program. If not, see <https://www.gnu.org/licenses/>.
17 
18 from datetime import datetime
19 
20 from ._folder_manager import folder_manager
21 from .logging import initializeLogger, LogSeverity
22 from .configuration import CONFIG_DIR
23 
24 
25 def _initializeDefaultLogger() -> None:
26  logName = datetime.now().strftime("%Y-%m-%d_%H-%M-%S.%f%z")
27  logPath = folder_manager.coretexpylibLogs.joinpath(logName).with_suffix(".log")
28 
29  initializeLogger(LogSeverity.info, logPath, jsonOutput = False)
30 
31 
32 def _initializeCLILogger() -> None:
33  logName = datetime.now().strftime("%Y-%m-%d_%H-%M-%S.%f%z")
34  logPath = CONFIG_DIR / "logs"
35  logPath.mkdir(exist_ok = True)
36 
37  initializeLogger(LogSeverity.info, logPath.joinpath(logName).with_suffix(".log"), jsonOutput = False)