45 lines
1.2 KiB
Python
Executable File
45 lines
1.2 KiB
Python
Executable File
#
|
|
# Copyright (c) 2016 Wind River Systems, Inc.
|
|
#
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
#
|
|
from nfv_common import debug
|
|
from nfv_common import timers
|
|
|
|
from nfv_vim import alarm
|
|
from nfv_vim import tables
|
|
|
|
DLOG = debug.debug_get_logger('nfv_vim.vim_alarm_audits')
|
|
|
|
|
|
@timers.interval_timer('audit_alarms', initial_delay_secs=60,
|
|
interval_secs=10)
|
|
def _audit_alarms():
|
|
"""
|
|
Audit Alarms. This is being done to allow hold off times to be supported
|
|
for instance alarms. By auditing the instance alarms every 10 seconds, it
|
|
allows a held off alarm to be raised within 10 seconds of the hold off
|
|
time expiring.
|
|
"""
|
|
while True:
|
|
timer_id = (yield)
|
|
DLOG.verbose("Audit alarms called, timer_id=%s." % timer_id)
|
|
instance_table = tables.tables_get_instance_table()
|
|
for instance in instance_table.values():
|
|
if not instance.is_deleted():
|
|
alarm.instance_manage_alarms(instance)
|
|
|
|
|
|
def vim_alarm_audits_initialize():
|
|
"""
|
|
Initialize alarm audits
|
|
"""
|
|
timers.timers_register_interval_timers([_audit_alarms])
|
|
|
|
|
|
def vim_alarm_audits_finalize():
|
|
"""
|
|
Finalize alarm audits
|
|
"""
|
|
pass
|