Spaces:
Build error
Build error
File size: 1,247 Bytes
60e3a80 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
from typing import Any, Dict
import os
import yaml
def set_log_file_path(
log_config_path: str, new_filename: str = "chroma.log"
) -> Dict[str, Any]:
"""This works with the standard log_config.yml file.
It will not work with custom log configs that may use different handlers"""
with open(f"{log_config_path}", "r") as file:
log_config = yaml.safe_load(file)
for handler in log_config["handlers"].values():
if handler.get("class") == "logging.handlers.RotatingFileHandler":
handler["filename"] = new_filename
return log_config
def get_directory_size(directory: str) -> int:
"""Get the size of a directory in bytes"""
total = 0
with os.scandir(directory) as it:
for entry in it:
if entry.is_file():
total += entry.stat().st_size
elif entry.is_dir():
total += get_directory_size(entry.path)
return total
# https://stackoverflow.com/a/1094933
def sizeof_fmt(num: int, suffix: str = "B") -> str:
n: float = float(num)
for unit in ("", "Ki", "Mi", "Gi", "Ti", "Pi", "Ei", "Zi"):
if abs(n) < 1024.0:
return f"{n:3.1f}{unit}{suffix}"
n /= 1024.0
return f"{n:.1f}Yi{suffix}"
|