from o2ims.domain import ocloud as ocloudModel
from o2ims.domain import subscription_obj as subModel
-from o2ims.domain import configuration_obj as confModel
+from o2ims.domain import alarm_obj as alarmModel
from o2ims.domain.resource_type import ResourceTypeEnum
+# from o2ims.domain.alarm_obj import AlarmLastChangeEnum, PerceivedSeverityEnum
from o2common.helper import o2logging
logger = o2logging.get_logger(__name__)
Column("globalcloudId", String(255)),
Column("name", String(255)),
Column("description", String(255)),
- Column("infrastructureManagementServiceEndpoint", String(255))
+ Column("serviceUri", String(255))
# Column("extensions", String(1024))
)
Column("supportedLocations", String(255)),
Column("capabilities", String(255)),
Column("capacity", String(255)),
+ Column("profile", Text())
# Column("extensions", String(1024))
)
Column("filter", String(255)),
)
-configuration = Table(
- "configuration",
+alarm_definition = Table(
+ "alarmDefinition",
metadata,
Column("updatetime", DateTime),
Column("createtime", DateTime),
- Column("configurationId", String(255), primary_key=True),
- Column("conftype", String(255)),
+ Column("alarmDefinitionId", String(255), primary_key=True),
+ Column("alarmName", String(255), unique=True),
+ Column("alarmLastChange", String(255)),
+ Column("alarmDescription", String(255)),
+ Column("proposeRepairActions", String(255)),
+ Column("clearingType", String(255)),
+ Column("managementInterfaceId", String(255)),
+ Column("pkNotificationField", String(255))
+)
+
+alarm_event_record = Table(
+ "alarmEventRecord",
+ metadata,
+ Column("updatetime", DateTime),
+ Column("createtime", DateTime),
+ Column("hash", String(255)),
+
+ Column("alarmEventRecordId", String(255), primary_key=True),
+ Column("resourceTypeId", ForeignKey("resourcetype.resourceTypeId")),
+ Column("resourceId", ForeignKey("resource.resourceId")),
+ Column("alarmDefinitionId", ForeignKey(
+ "alarmDefinition.alarmDefinitionId")),
+ Column("probableCauseId", String(255)),
+ Column("perceivedSeverity", Integer),
+ Column("alarmRaisedTime", String(255)),
+ Column("alarmChangedTime", String(255)),
+ Column("alarmAcknowledgeTime", String(255)),
+ Column("alarmAcknowledged", String(255)),
+)
+
+alarm_probable_cause = Table(
+ "probableCause",
+ metadata,
+ Column("updatetime", DateTime),
+ Column("createtime", DateTime),
+ Column("hash", String(255)),
+
+ Column("probableCauseId", String(255), primary_key=True),
+ Column("name", String(255)),
+ Column("description", String(255)),
+)
+
+alarm_subscription = Table(
+ "alarmSubscription",
+ metadata,
+ Column("updatetime", DateTime),
+ Column("createtime", DateTime),
+
+ Column("alarmSubscriptionId", String(255), primary_key=True),
Column("callback", String(255)),
- Column("status", String(255)),
- Column("comments", String(255)),
+ Column("consumerSubscriptionId", String(255)),
+ Column("filter", String(255)),
)
def start_o2ims_mappers(engine=None):
logger.info("Starting O2 IMS mappers")
+ # IMS Infrastructure Inventory Mappering
dm_mapper = mapper(ocloudModel.DeploymentManager, deploymentmanager)
resourcepool_mapper = mapper(ocloudModel.ResourcePool, resourcepool)
resourcetype_mapper = mapper(ocloudModel.ResourceType, resourcetype)
}
)
mapper(subModel.Subscription, subscription)
- mapper(confModel.Configuration, configuration)
+
+ # IMS Infrastruture Monitoring Mappering
+ mapper(alarmModel.AlarmEventRecord, alarm_event_record)
+ mapper(alarmModel.AlarmDefinition, alarm_definition)
+ mapper(alarmModel.ProbableCause, alarm_probable_cause)
+ mapper(alarmModel.AlarmSubscription, alarm_subscription)
if engine is not None:
wait_for_metadata_ready(engine)