%PDF- %PDF-
Direktori : /proc/227033/root/lib/python2.7/site-packages/salt/states/ |
Current File : //proc/227033/root/lib/python2.7/site-packages/salt/states/uptime.py |
# -*- coding: utf-8 -*- ''' Monitor Web Server with Uptime ============================== `Uptime <https://github.com/fzaninotto/uptime>`_ is an open source remote monitoring application using Node.js, MongoDB, and Twitter Bootstrap. .. warning:: This state module is beta. It might be changed later to include more or less automation. .. note:: This state module requires a pillar to specify the location of your uptime install .. code-block:: yaml uptime: application_url: "http://uptime-url.example.org" Example: .. code-block:: yaml url: uptime.monitored url/sitemap.xml: uptime.monitored: - polling: 600 # every hour ''' # Import Python Libs from __future__ import absolute_import, print_function, unicode_literals def __virtual__(): ''' Only load if the uptime module is present ''' return 'uptime.checks_list' in __salt__ def monitored(name, **params): ''' Makes sure an URL is monitored by uptime. Checks if URL is already monitored, and if not, adds it. ''' ret = {'name': name, 'changes': {}, 'result': None, 'comment': ''} if __salt__['uptime.check_exists'](name=name): ret['result'] = True ret['comment'] = 'URL {0} is already monitored'.format(name) ret['changes'] = {} return ret if not __opts__['test']: url_monitored = __salt__['uptime.create'](name, **params) if url_monitored: ret['result'] = True msg = 'Successfully added the URL {0} to uptime' ret['comment'] = msg.format(name) ret['changes'] = {'url_monitored': url_monitored} else: ret['result'] = False ret['comment'] = 'Failed to add {0} to uptime'.format(name) ret['changes'] = {} else: msg = 'URL {0} is going to be added to uptime' ret.update(result=None, comment=msg.format(name)) return ret