Got 3750-X monitoring working

This commit is contained in:
2026-03-17 19:38:27 +01:00
parent c474f9c9c2
commit e66998b826
9 changed files with 424 additions and 132 deletions

View File

@@ -2,6 +2,34 @@ from dataclasses import dataclass
from typing import Optional, Annotated, Dict
@dataclass
class C3750XciscoData():
"""Dataclass for snmp data"""
hostname: str
systemStatus: str
systemTemp: int
last5SecUsage: int
last1MinUsage: int
last5MinUsage: int
uptimeS: int
# uptimeH: float
def __str__(self):
return (
f"{self.hostname}\n"
f"System status: {self.systemStatus} \n"
f"System temp: {self.systemTemp} C\n"
f"Last 5 second CPU usage: {self.last5SecUsage} %\n"
f"Last 1 minute CPU usage: {self.last1MinUsage} %\n"
f"Last 5 minutes CPU usage: {self.last5MinUsage} %\n"
f"Uptime: {self.uptimeS} Seconds\n"
)
@dataclass
class snmpPyCiscoData():
"""Dataclass for snmp data"""

View File

@@ -25,4 +25,38 @@ idracMeasurement = Table(
Column("uptimeS", BigInteger),
Column("uptimeH", Numeric(8, 3)),
Column("uptimeD", Numeric(8, 3)),
)
C3750XMeasurement = Table(
"C3750XMeasurement",
metadata,
Column("id", Integer, primary_key=True, autoincrement=True),
Column("time_stamp", TIMESTAMP, server_default=text("CURRENT_TIMESTAMP"), nullable=False),
Column("hostname", String(64), nullable=False),
Column("systemStatus", String(64)),
Column("systemTemp", Numeric(7, 2)),
Column("last5SecUsage", Numeric(7, 2)),
Column("last1MinUsage", Numeric(7, 2)),
Column("last5MinUsage", Numeric(7, 2)),
Column("uptimeS", BigInteger),
)
NexusMeasurement = Table(
"NexusMeasurement",
metadata,
Column("id", Integer, primary_key=True, autoincrement=True),
Column("time_stamp", TIMESTAMP, server_default=text("CURRENT_TIMESTAMP"), nullable=False),
Column("hostname", String(64), nullable=False),
Column("systemStatus", String(64)),
Column("systemTemp", Numeric(7, 2)),
Column("last5SecUsage", Numeric(7, 2)),
Column("last1MinUsage", Numeric(7, 2)),
Column("last5MinUsage", Numeric(7, 2)),
Column("uptimeS", BigInteger),
)