Got 3750-X monitoring working
This commit is contained in:
@@ -3,7 +3,8 @@ from sqlalchemy.ext.asyncio import create_async_engine
|
||||
from typing import Annotated, Final
|
||||
from dataclasses import asdict
|
||||
from models.idracModel import snmpPyIDRACData
|
||||
from models.sqlTable import idracMeasurement
|
||||
from models.ciscoModel import C3750XciscoData
|
||||
from models.sqlTable import idracMeasurement, C3750XMeasurement
|
||||
|
||||
# SQL ENV-------------------------------------------
|
||||
USESQL: Final[int] = int(os.getenv("USESQL", 0))
|
||||
@@ -27,7 +28,7 @@ else:
|
||||
engine = None
|
||||
|
||||
|
||||
async def sqlIDRACDataWriter(
|
||||
async def sqlDataWriter(
|
||||
inpDict: dict
|
||||
) -> int:
|
||||
|
||||
@@ -44,10 +45,36 @@ async def sqlIDRACDataWriter(
|
||||
match inpDict["source"]:
|
||||
|
||||
case "CISCO":
|
||||
await eng.execute(
|
||||
# changeMeLater
|
||||
t1.insert(), [{"name": "some name 1"}, {"name": "some name 2"}]
|
||||
)
|
||||
|
||||
match inpDict["device"]:
|
||||
case "3750X":
|
||||
payload = inpDict["value"] # snmpPyIDRACData
|
||||
row = asdict(payload)
|
||||
|
||||
await eng.execute(
|
||||
C3750XMeasurement.insert(),
|
||||
[row]
|
||||
)
|
||||
return 0
|
||||
|
||||
case "NEXUS":
|
||||
payload = inpDict["value"] # snmpPyIDRACData
|
||||
row = asdict(payload)
|
||||
|
||||
await eng.execute(
|
||||
NexusMeasurement.insert(),
|
||||
[row]
|
||||
)
|
||||
return 0
|
||||
case _:
|
||||
print(f"{inpDict['device']} is not supported.\nOnly '3750X' and 'Nexus' are.")
|
||||
return 1
|
||||
|
||||
|
||||
# await eng.execute(
|
||||
# # changeMeLater
|
||||
# t1.insert(), [{"name": "some name 1"}, {"name": "some name 2"}]
|
||||
# )
|
||||
case "IDRAC":
|
||||
payload = inpDict["value"] # snmpPyIDRACData
|
||||
row = asdict(payload)
|
||||
@@ -73,4 +100,4 @@ async def sqlIDRACDataWriter(
|
||||
|
||||
return 0
|
||||
|
||||
# asyncio.sleep(5)
|
||||
# asyncio.sleep(5)
|
||||
|
||||
Reference in New Issue
Block a user