def handle(self):
     data = {
         'node_ip': self.form_data['node_ip'],
         'node_name': self.form_data['node_name'],
         'node_os': self.form_data['node_os'],
         'enabled_plugins': self.form_data['plugins_list'],
     }
     new_node_info = NodeInfo(**data)
     new_node_info.save()
     return new_node_info
Example #2
0
 def get(self, request, *args, **kwargs):
     nodes_render = []
     nodes = NodeInfo.objects()
     for node in nodes:
         nodes_render.append({
             'name': node.node_name,
             'ip': node.node_ip,
             'os': node.node_os,
             'plugins': node.enabled_plugins
         })
     return render(request, self.template_name, {'nodes': nodes_render})
 def handle(self):
     selected_node = self.form_data['select_node']
     node = NodeInfo.objects(node_name=selected_node).first()
     for plugin in node.enabled_plugins:
         for param in ParamInfo.objects(plugin_name=plugin):
             data = {
                 'node': node.node_name,
                 'ip': node.node_ip,
                 'plugin': plugin,
                 'param': param.param_name,
                 'timeout': 0
             }
             monitoring_info = MonitoringInfo(**data)
             monitoring_info.save()
     return True
Example #4
0
    def get(self, request, *args, **kwargs):
        graphs_info = []
        plugin_name = kwargs.get("plugin_name")
        # TODO: add 'try ... except'
        plugin_params = ParamInfo.objects(plugin_name=plugin_name)
        nodes = NodeInfo.objects()
        id = 1
        for node in nodes:
            if plugin_name in node.enabled_plugins:
                for param in plugin_params:
                    graphs_info.append(
                        {
                            "id": "graph_id_" + str(id),
                            "plugin_name": plugin_name,
                            "node_name": node.node_name,
                            "param_name": param.param_name,
                        }
                    )
                    id += 1

        return render(request, self.template_name, {"graphs_info": graphs_info})
Example #5
0
        final_attrs = self.build_attrs(attrs, name=name)
        for kw in self.kwargs:
            final_attrs[kw] = self.kwargs.get(kw)
        output = [format_html('<input{}>', flatatt(final_attrs))]
        output.append('</input>')
        return mark_safe('\n'.join(output))

    def __init__(self, attrs=None, **kwargs):
        self.kwargs = kwargs
        if attrs is not None:
            self.attrs = attrs.copy()
        else:
            self.attrs = {}


NODES_LIST = [(item.node_name, item.node_name) for item in NodeInfo.objects()]

ATTRS = {'class': 'form-control'}

PLUGINS_LIST = [(item.plugin_name, item.plugin_name) for item in
                PluginInfo.objects()]

GROUPS_LIST = [(item.name, item.name) for item in NodeGroups.objects()]


class CheckboxSelectMultiple(forms.CheckboxSelectMultiple):
    def render(self, name, value, attrs=None, choices=()):
        html = super(CheckboxSelectMultiple, self).render(name, value, attrs,
                                                          choices)

        return mark_safe(html.replace('<ul>', '<ul class="myClass">'))