Skip to content

Commit 7adcf64

Browse files
committed
Made log_to_file default to true. Updated default data dir for webui.py when not running in docker.
1 parent e32574d commit 7adcf64

3 files changed

Lines changed: 13 additions & 5 deletions

File tree

config.ini

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ format = [%(levelname)s|%(module)s|L%(lineno)d] %(asctime)s: %(message)s
5151
# https://docs.python.org/3/library/time.html#time.strftime
5252
datefmt = %Y-%m-%dT%H:%M:%S%z
5353
# Enable logging to a file in addition to stdout
54-
log_to_file = False
54+
log_to_file = True
5555
# Log filename (resolved relative to the data/var directory)
5656
log_file = soularr.log
5757
# Maximum log file size in bytes before rotation (default: 1MB)

soularr.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1040,7 +1040,7 @@ def setup_logging(config, var_dir):
10401040

10411041
logging.basicConfig(level=level, format=fmt, datefmt=datefmt)
10421042

1043-
log_to_file = config.getboolean("Logging", "log_to_file", fallback=False)
1043+
log_to_file = config.getboolean("Logging", "log_to_file", fallback=True)
10441044
if log_to_file:
10451045
log_filename = config.get("Logging", "log_file", fallback="soularr.log")
10461046
log_file_path = os.path.join(var_dir, log_filename)

webui/webui.py

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,8 @@ def _fmt(msg, level="INFO"):
3333

3434
def get_var_dir():
3535
parser = argparse.ArgumentParser(add_help=False)
36-
parser.add_argument("--var-dir", default="/data")
36+
default = "/data" if os.environ.get("IN_DOCKER") else os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
37+
parser.add_argument("--var-dir", default=default)
3738
args, _ = parser.parse_known_args()
3839
return args.var_dir
3940

@@ -96,7 +97,13 @@ def stream():
9697

9798
def generate():
9899
while not os.path.exists(log_path):
99-
yield f"data: {_fmt(f'Waiting for log file: {log_path}')}\n\n"
100+
config = configparser.ConfigParser()
101+
config.read(get_config_path(get_var_dir()))
102+
log_to_file = config.getboolean("Logging", "log_to_file", fallback=False)
103+
if not log_to_file:
104+
yield f"data: {_fmt('Log file not found. Make sure log_to_file = True is set in your config.ini')}\n\n"
105+
else:
106+
yield f"data: {_fmt(f'Waiting for log file: {log_path}')}\n\n"
100107
time.sleep(5)
101108
with open(log_path, "r") as f:
102109
for line in f:
@@ -120,7 +127,8 @@ def generate():
120127

121128
if __name__ == "__main__":
122129
parser = argparse.ArgumentParser(description="Soularr Web UI")
123-
parser.add_argument("--var-dir", default="/data", help="Directory containing config.ini and soularr.log")
130+
default = "/data" if os.environ.get("IN_DOCKER") else os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
131+
parser.add_argument("--var-dir", default=default, help="Directory containing config.ini and soularr.log")
124132
parser.add_argument("--port", type=int, default=8265, help="Port to listen on (default: 8265)")
125133
parser.add_argument("--host", default="0.0.0.0", help="Host to bind to (default: 0.0.0.0)")
126134
args = parser.parse_args()

0 commit comments

Comments
 (0)