Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 2 additions & 25 deletions capability_manager/Capability.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import pathlib

project_root = pathlib.Path(__file__).parent.parent.resolve()
from utils.logging import setup_logger
class Capability:
"""
Base class for all capabilities.
Expand All @@ -22,31 +23,7 @@ def __init__(self, name, description):
self.storage_root = f"{project_root}/storage/capabilities/{self.name}"

# Set up logging
self.logger = logging.getLogger(name) # Create a logger for this layer
self.logger.setLevel(logging.DEBUG) # Set the logging level

# Create a console handler
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)

# Create a file handler
fh = logging.FileHandler(f'{project_root}/application.log')
fh.setLevel(logging.DEBUG)

# Create a formatter
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# Add the formatter to the console handler
ch.setFormatter(formatter)

# Add the formatter to the file handler
fh.setFormatter(formatter)

# Add the console handler to the logger
self.logger.addHandler(ch)

# Add the file handler to the logger
self.logger.addHandler(fh)
self.logger = setup_logger(name)

def execute(self):
"""
Expand Down
27 changes: 2 additions & 25 deletions layers/CognitiveLayer.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
from capability_manager import CapabilityManager
from resource_manager import ResourceManager
from product_manager import ProductManager
from utils.logging import setup_logger

project_root = pathlib.Path(__file__).parent.parent.resolve()

Expand Down Expand Up @@ -69,31 +70,7 @@ def __init__(self, name):
self.total_cost: float = 0

# Set up logging
self.logger = logging.getLogger(name) # Create a logger for this layer
self.logger.setLevel(logging.DEBUG) # Set the logging level

# Create a console handler
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)

# Create a file handler
fh = logging.FileHandler(f'{project_root}/application.log')
fh.setLevel(logging.DEBUG)

# Create a formatter
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# Add the formatter to the console handler
ch.setFormatter(formatter)

# Add the formatter to the file handler
fh.setFormatter(formatter)

# Add the console handler to the logger
self.logger.addHandler(ch)

# Add the file handler to the logger
self.logger.addHandler(fh)
self.logger = setup_logger(name)

def pass_up(self, data):
"""
Expand Down
27 changes: 2 additions & 25 deletions product_manager/Product.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import pathlib

project_root = pathlib.Path(__file__).parent.parent.resolve()
from utils.logging import setup_logger

class Product:
"""
Expand All @@ -27,31 +28,7 @@ def __init__(self, name, description, required_resources=None, required_capabili
self.storage_root = f"{project_root}/storage/products/{self.name}"

# Set up logging
self.logger = logging.getLogger(name) # Create a logger for this layer
self.logger.setLevel(logging.DEBUG) # Set the logging level

# Create a console handler
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)

# Create a file handler
fh = logging.FileHandler(f'{project_root}/application.log')
fh.setLevel(logging.DEBUG)

# Create a formatter
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# Add the formatter to the console handler
ch.setFormatter(formatter)

# Add the formatter to the file handler
fh.setFormatter(formatter)

# Add the console handler to the logger
self.logger.addHandler(ch)

# Add the file handler to the logger
self.logger.addHandler(fh)
self.logger = setup_logger(name)

def draft(self):
"""
Expand Down
27 changes: 2 additions & 25 deletions resource_manager/Resource.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
import pathlib

project_root = pathlib.Path(__file__).parent.parent.resolve()
from utils.logging import setup_logger
class Resource:
"""
Base class for all resources.
Expand All @@ -26,31 +27,7 @@ def __init__(self, name, description, capacity=0, used=0, budget=0):
self.storage_root = f"{project_root}/storage/resources/{self.name}"

# Set up logging
self.logger = logging.getLogger(name) # Create a logger for this layer
self.logger.setLevel(logging.DEBUG) # Set the logging level

# Create a console handler
ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)

# Create a file handler
fh = logging.FileHandler(f'{project_root}/application.log')
fh.setLevel(logging.DEBUG)

# Create a formatter
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')

# Add the formatter to the console handler
ch.setFormatter(formatter)

# Add the formatter to the file handler
fh.setFormatter(formatter)

# Add the console handler to the logger
self.logger.addHandler(ch)

# Add the file handler to the logger
self.logger.addHandler(fh)
self.logger = setup_logger(name)

self.logger.debug(f"Instance of {name} resource created.")

Expand Down
Empty file added utils/__init__.py
Empty file.
28 changes: 28 additions & 0 deletions utils/logging.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
import logging
import pathlib

project_root = pathlib.Path(__file__).parent.parent.resolve()


def setup_logger(name: str) -> logging.Logger:
"""Return a logger with stream and file handlers.

Handlers are only added if the logger doesn't already have any.
"""
logger = logging.getLogger(name)
if not logger.handlers:
logger.setLevel(logging.DEBUG)

ch = logging.StreamHandler()
ch.setLevel(logging.DEBUG)

fh = logging.FileHandler(f"{project_root}/application.log")
fh.setLevel(logging.DEBUG)

formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
ch.setFormatter(formatter)
fh.setFormatter(formatter)

logger.addHandler(ch)
logger.addHandler(fh)
return logger