added hdd status classes

This commit is contained in:
2026-08-29 23:03:46 +02:00
parent 70a623a451
commit 68b4e10db3
3 changed files with 12 additions and 38 deletions
+11
View File
@@ -188,3 +188,14 @@ class PrjLampInformation(SMSMessage):
LuminanceShutterControl: int | None
LampOn: bool | None
LampStatus: str | None
class HDDStatusWrapper(BaseModel):
Name: str
IsSpareSlot: bool
Status: str
type HDDStatusElem = HDDStatusWrapper
class RAIDStatusDetail(SMSMessage):
RAIDStatus: str
HDDStatus: HDDStatusElem
+1 -1
View File
@@ -12,7 +12,7 @@ from paho.mqtt import client as mqtt_client
from paho.mqtt.enums import CallbackAPIVersion
from pydantic import BaseModel, Field
from requests import Timeout, ConnectionError
from utils import SignalHandler
from pyutils.utils import SignalHandler
T = TypeVar("T", bound=SMSMessage)
-37
View File
@@ -1,37 +0,0 @@
import signal
from logging import Logger
from influxdb_client_3 import Point
class SignalHandler:
running: bool
logger: Logger
def __init__(self, logger):
self.running: bool = True
self.logger: Logger = logger
signal.signal(signal.SIGINT, self._handle_sigint)
signal.signal(signal.SIGTERM, self._handle_sigint)
def _handle_sigint(self, signum, frame):
self.logger.info(f"Received SIGNAL: {signal.strsignal(signum)}")
self.running = False
def dict2Point(measurement: str, fields: dict, tags: dict | None = None) -> Point:
p = Point(measurement)
for k,v in fields.items():
p.field(k,v)
if tags:
for k,v in tags.items():
p.tag(k,v)
return p
def convertInt(d: dict) -> dict:
for k,v in d.items():
if str.isdecimal(v):
d[k] = int(v)
return d
def convertIntList(l: list[dict]) -> list[dict]:
for n,d in enumerate(l):
l[n] = convertInt(d)
return l