oids = {
    'uptime': '1.3.6.1.2.1.1.3.0',
    'config_last_changed': '1.3.6.1.4.1.9.9.43.1.1.1.0',
    'config_last_saved': '1.3.6.1.4.1.9.9.43.1.1.2.0',
}

query = plugin.snmp.get(oids)

# Date calculations
delta_time_changed = abs(long(query['uptime'].value) - long(query['config_last_changed'].value)) / 100
delta_time_saved = abs(long(query['uptime'].value) - long(query['config_last_saved'].value)) / 100

config_last_changed_date = localtime(time() - delta_time_changed)
config_last_changed_date_str = strftime('%d/%m/%Y %H:%M', config_last_changed_date)
config_last_saved_date = localtime(time() - delta_time_saved)
config_last_saved_date_str = strftime('%d/%m/%Y %H:%M', config_last_saved_date)

# Formating output
longoutput = 'Config last changed: %s\nConfig last saved: %s' % (
    config_last_changed_date_str,
    config_last_saved_date_str,
)

# Checking state of config date
if config_last_changed_date > config_last_saved_date:
    output = 'Config was changed without saving on %s !\n' % config_last_changed_date_str
    plugin.warning(output + longoutput)
else:
    output = 'Running configuration was saved on %s.\n' % config_last_saved_date_str
    plugin.ok(output + longoutput)
Example #2
0
}

query = plugin.snmp.get(oids)

# Date calculations
delta_time_changed = abs(
    long(query['uptime'].value) -
    long(query['config_last_changed'].value)) / 100
delta_time_saved = abs(
    long(query['uptime'].value) - long(query['config_last_saved'].value)) / 100

config_last_changed_date = localtime(time() - delta_time_changed)
config_last_changed_date_str = strftime('%d/%m/%Y %H:%M',
                                        config_last_changed_date)
config_last_saved_date = localtime(time() - delta_time_saved)
config_last_saved_date_str = strftime('%d/%m/%Y %H:%M', config_last_saved_date)

# Formating output
longoutput = 'Config last changed: %s\nConfig last saved: %s' % (
    config_last_changed_date_str,
    config_last_saved_date_str,
)

# Checking state of config date
if config_last_changed_date > config_last_saved_date:
    output = 'Config was changed without saving on %s !\n' % config_last_changed_date_str
    plugin.warning(output + longoutput)
else:
    output = 'Running configuration was saved on %s.\n' % config_last_saved_date_str
    plugin.ok(output + longoutput)