diff options
author | Wesley Hearn <wesley.s.hearn@gmail.com> | 2015-08-27 11:11:55 -0400 |
---|---|---|
committer | Wesley Hearn <wesley.s.hearn@gmail.com> | 2015-08-27 11:11:55 -0400 |
commit | d228350e4b9cc6b5341985940f12a50ec2847768 (patch) | |
tree | 3ce6d484fadbfc9eb04e2f94a22d7159619277ab /filter_plugins/oo_zabbix_filters.py | |
parent | 4e76087deabab452c97c2b17739403c10b6a0026 (diff) | |
parent | 3012985b20e44c0ca4f7cce5a70926f518ec19c5 (diff) | |
download | openshift-d228350e4b9cc6b5341985940f12a50ec2847768.tar.gz openshift-d228350e4b9cc6b5341985940f12a50ec2847768.tar.bz2 openshift-d228350e4b9cc6b5341985940f12a50ec2847768.tar.xz openshift-d228350e4b9cc6b5341985940f12a50ec2847768.zip |
Merge pull request #513 from kwoodson/zbxupdates
Zabbix API updates
Diffstat (limited to 'filter_plugins/oo_zabbix_filters.py')
-rw-r--r-- | filter_plugins/oo_zabbix_filters.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/filter_plugins/oo_zabbix_filters.py b/filter_plugins/oo_zabbix_filters.py index a473993a2..c44b874e8 100644 --- a/filter_plugins/oo_zabbix_filters.py +++ b/filter_plugins/oo_zabbix_filters.py @@ -60,6 +60,17 @@ class FilterModule(object): return None @staticmethod + def oo_build_zabbix_collect(data, string, value): + ''' Build a list of dicts from a list of data matched on string attribute + ''' + rval = [] + for item in data: + if item[string] == value: + rval.append(item) + + return rval + + @staticmethod def oo_build_zabbix_list_dict(values, string): ''' Build a list of dicts with string as key for each value ''' @@ -68,6 +79,22 @@ class FilterModule(object): rval.append({string: value}) return rval + @staticmethod + def oo_remove_attr_from_list_dict(data, attr): + ''' Remove a specific attribute from a dict + ''' + attrs = [] + if isinstance(attr, str): + attrs.append(attr) + else: + attrs = attr + + for attribute in attrs: + for _entry in data: + _entry.pop(attribute, None) + + return data + def filters(self): ''' returns a mapping of filters to methods ''' return { @@ -76,4 +103,6 @@ class FilterModule(object): "oo_set_zbx_trigger_triggerid": self.oo_set_zbx_trigger_triggerid, "oo_build_zabbix_list_dict": self.oo_build_zabbix_list_dict, "create_data": self.create_data, + "oo_build_zabbix_collect": self.oo_build_zabbix_collect, + "oo_remove_attr_from_list_dict": self.oo_remove_attr_from_list_dict, } |