from cloudify import ctx
from cloudify import exceptions
import diamond_agent.tasks as diamond

import os
workdir = ctx.plugin.workdir
paths = diamond.get_paths(workdir.replace("script","diamond"))
name = 'SNMPProxyCollector'

collector_dir = os.path.join(paths['collectors'], name)
if not os.path.exists(collector_dir):
    os.mkdir(collector_dir)
    collector_file = os.path.join(collector_dir, '{0}.py'.format(name))
    ctx.download_resource('scripts/monitoring/proxy_snmp/snmpproxy.py', collector_file)

config = ctx.target.instance.runtime_properties.get('snmp_collector_config', {})
config.update({'enabled': True,
                   'hostname': '{0}.{1}.{2}'.format(diamond.get_host_id(ctx.target),
                                                    ctx.target.node.name,
                                                    ctx.target.instance.id)
                   })

config_full_path = os.path.join(paths['collectors_config'], '{0}.conf'.format(name))
diamond.write_config(config_full_path, config)

try:
	diamond.stop_diamond(paths['config'])
except:
	pass

try:
 def _test(self, _, expected_prefix, get_paths_arg=None):
     paths = tasks.get_paths(get_paths_arg)
     self.assertTrue(len(paths) > 0)
     for path in paths.values():
         self.assertTrue(path.startswith(expected_prefix))
Example #3
0
 def _test(self, _, expected_prefix, get_paths_arg=None):
     paths = tasks.get_paths(get_paths_arg)
     self.assertTrue(len(paths) > 0)
     for path in paths.values():
         self.assertTrue(path.startswith(expected_prefix))
Example #4
0
 def test_get_paths_without_env(self, _):
     prefix = os.path.join(tempfile.gettempdir(), 'cloudify-monitoring-')
     with mock.patch.dict(os.environ, {'CELERY_WORK_DIR': ''}):
         paths = tasks.get_paths(None)
     for path in paths.values():
         self.assertTrue(path.startswith(prefix))
Example #5
0
 def test_get_paths_with_env(self, _):
     prefix = tempfile.mktemp()
     with mock.patch.dict(os.environ, {'CELERY_WORK_DIR': prefix}):
         paths = tasks.get_paths(None)
     for path in paths.values():
         self.assertTrue(path.startswith(os.path.split(prefix)[0]))
Example #6
0
 def test_get_paths_with_prefix(self, _):
     prefix = tempfile.mktemp()
     paths = tasks.get_paths(prefix)
     for path in paths.values():
         self.assertTrue(path.startswith(prefix))
Example #7
0
from cloudify import ctx
from cloudify import exceptions
import diamond_agent.tasks as diamond

import os

paths = diamond.get_paths(None)
name = 'SNMPProxyCollector'

collector_dir = os.path.join(paths['collectors'], name)
if not os.path.exists(collector_dir):
    os.mkdir(collector_dir)
    collector_file = os.path.join(collector_dir, '{0}.py'.format(name))
    ctx.download_resource('scripts/monitoring/proxy_snmp/snmpproxy.py', collector_file)

config = ctx.target.instance.runtime_properties.get('snmp_collector_config', {})
config.update({'enabled': True,
                   'hostname': '{0}.{1}.{2}'.format(diamond.get_host_id(ctx.target),
                                                    ctx.target.node.name,
                                                    ctx.target.instance.id)
                   })

config_full_path = os.path.join(paths['collectors_config'], '{0}.conf'.format(name))
diamond.write_config(config_full_path, config)

try:
	diamond.stop_diamond(paths['config'])
except:
	pass

try: