Introduce logger.py module.

This commit is contained in:
Sebastian Lenzlinger
2024-05-07 19:55:58 +02:00
parent 577ac9e5cf
commit 7b27ee7fa9
6 changed files with 73 additions and 38 deletions

View File

@@ -13,7 +13,7 @@ from iottb.models.device_metadata_model import DeviceMetadata
class CaptureMetadata(BaseModel):
# Required Fields
device_metadata = Field(DeviceMetadata, exclude=True)
device_metadata: DeviceMetadata = Field(exclude=True)
capture_id: uuid.UUID = Field(default_factory=lambda: str(uuid.uuid4()))
capture_dir: Path
capture_file: str
@@ -27,7 +27,7 @@ class CaptureMetadata(BaseModel):
packet_count: Optional[int]
pcap_filter: str = ""
tcpdump_command: str = ""
interface = Field(str, default="")
interface: str = ""
# Optional Fields
device_ip_address: Optional[str] = "No IP Address set"

View File

@@ -33,8 +33,8 @@ class DeviceMetadata(BaseModel):
super().__init__(**data)
self.device_name = device_name
self.device_short_name = device_name.lower().replace(" ", "_")
assert dir_contains_device_metadata(device_root_dir), \
f"Directory {device_root_dir} is missing a {DEVICE_METADATA_FILE} file"
# assert dir_contains_device_metadata(device_root_dir), \
# f"Directory {device_root_dir} is missing a {DEVICE_METADATA_FILE} file"
self.device_root_dir = device_root_dir
def get_device_id(self) -> str:
@@ -82,11 +82,10 @@ class DeviceMetadata(BaseModel):
self.date_updated = datetime.now().strftime('%d-%m-%YT%H:%M:%S')
@classmethod
def load_from_json(cls, root_path: Path):
assert root_path.is_file()
assert root_path.name == DEVICE_METADATA_FILE
assert dir_contains_device_metadata(root_path)
device_meta_filename = root_path / DEVICE_METADATA_FILE
def load_from_json(cls, device_file_path: Path):
assert device_file_path.is_file(), f"{device_file_path} is not a file"
assert device_file_path.name == DEVICE_METADATA_FILE, f"{device_file_path} is not a {DEVICE_METADATA_FILE}"
device_meta_filename = device_file_path
with device_meta_filename.open('r') as file:
metadata_json = json.load(file)
metadata_model_obj = cls.model_validate_json(metadata_json)
@@ -122,6 +121,7 @@ def dir_contains_device_metadata(dir_path: Path):
return False
else:
meta_file_path = dir_path / DEVICE_METADATA_FILE
print(f"Device metadata file path {str(meta_file_path)}")
if not meta_file_path.is_file():
return False
else: