Resolved #27 - add item regex filter to query editor.

This commit is contained in:
Alexander Zobnin
2015-06-19 19:31:22 +03:00
parent 7bc5778697
commit 7ba301e71e
2 changed files with 22 additions and 4 deletions

View File

@@ -82,7 +82,16 @@ function (angular, _, kbn) {
return this.itemFindQuery(groups, hosts, apps)
.then(function (items) {
if (itemnames == 'All') {
return items;
// Filter items by regex
if (target.itemFilter) {
var item_pattern = new RegExp(target.itemFilter);
return _.filter(items, function (item) {
return item_pattern.test(expandItemName(item));
});
} else {
return items;
}
} else {
// Filtering items
@@ -99,7 +108,7 @@ function (angular, _, kbn) {
} else {
items = _.flatten(items);
if ((from < useTrendsFrom) && self.trends) {
if ((from < useTrendsFrom) && self.trends) {
return self.getTrends(items, from, to)
.then(_.partial(self.handleTrendResponse, items));
} else {
@@ -288,7 +297,7 @@ function (angular, _, kbn) {
// Handle auth errors
if (response.data.error.data == "Session terminated, re-login, please." ||
response.data.error.data == "Not authorised." ||
response.data.error.data == "Not authorised." ||
response.data.error.data == "Not authorized") {
return self.performZabbixAPILogin().then(function (response) {
self.auth = response;

View File

@@ -102,7 +102,7 @@
</li>
<!-- Select Item -->
<li>
<select style="width: 25em"
<select style="width: 20em"
class="tight-form-input input-medium"
ng-change="selectItem()"
ng-model="target.item"
@@ -116,6 +116,15 @@
<i class="icon-warning-sign"></i>
</a>
</li>
<!-- Item filter -->
<li>
<input type="text"
class="tight-form-input input-large"
ng-model="target.itemFilter"
spellcheck='false'
placeholder="Item filter (regex)"
ng-blur="targetBlur()">
</li>
</ul>
<div class="clearfix"></div>