iss #71 - Able to use regex for extracting a part of the text value.
This commit is contained in:
@@ -218,7 +218,22 @@ function (angular, _, kbn) {
|
|||||||
return {
|
return {
|
||||||
target: target.item.name,
|
target: target.item.name,
|
||||||
datapoints: _.map(history, function (p) {
|
datapoints: _.map(history, function (p) {
|
||||||
return [p.value, p.clock * 1000];
|
var value = p.value;
|
||||||
|
if (target.textFilter) {
|
||||||
|
var text_extract_pattern = new RegExp(templateSrv.replace(target.textFilter, options.scopedVars));
|
||||||
|
//var text_extract_pattern = new RegExp(target.textFilter);
|
||||||
|
var result = text_extract_pattern.exec(value);
|
||||||
|
if (result) {
|
||||||
|
if (target.useCaptureGroups) {
|
||||||
|
value = result[1];
|
||||||
|
} else {
|
||||||
|
value = result[0];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
value = null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return [value, p.clock * 1000];
|
||||||
})
|
})
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -21,14 +21,14 @@
|
|||||||
<a class="pointer" tabindex="1"
|
<a class="pointer" tabindex="1"
|
||||||
ng-click="switchEditorMode(0)">Numeric metrics</a>
|
ng-click="switchEditorMode(0)">Numeric metrics</a>
|
||||||
</li>
|
</li>
|
||||||
<li role="menuitem" ng-show="target.mode != 1">
|
|
||||||
<a class="pointer" tabindex="1"
|
|
||||||
ng-click="switchEditorMode(1)">IT services</a>
|
|
||||||
</li>
|
|
||||||
<li role="menuitem" ng-show="target.mode != 2">
|
<li role="menuitem" ng-show="target.mode != 2">
|
||||||
<a class="pointer" tabindex="1"
|
<a class="pointer" tabindex="1"
|
||||||
ng-click="switchEditorMode(2)">Text metrics</a>
|
ng-click="switchEditorMode(2)">Text metrics</a>
|
||||||
</li>
|
</li>
|
||||||
|
<li role="menuitem" ng-show="target.mode != 1">
|
||||||
|
<a class="pointer" tabindex="1"
|
||||||
|
ng-click="switchEditorMode(1)">IT services</a>
|
||||||
|
</li>
|
||||||
<li class="divider" role="menuitem"></li>
|
<li class="divider" role="menuitem"></li>
|
||||||
<li role="menuitem"><a tabindex="1" ng-click="duplicate()">Duplicate</a></li>
|
<li role="menuitem"><a tabindex="1" ng-click="duplicate()">Duplicate</a></li>
|
||||||
<li role="menuitem"><a tabindex="1" ng-click="moveMetricQuery($index, $index-1)">Move up</a></li>
|
<li role="menuitem"><a tabindex="1" ng-click="moveMetricQuery($index, $index-1)">Move up</a></li>
|
||||||
@@ -81,7 +81,7 @@
|
|||||||
|
|
||||||
<ul class="tight-form-list" role="menu" ng-hide="target.mode == 1">
|
<ul class="tight-form-list" role="menu" ng-hide="target.mode == 1">
|
||||||
<!-- Alias -->
|
<!-- Alias -->
|
||||||
<li>
|
<li ng-hide="target.mode == 2">
|
||||||
<input type="text"
|
<input type="text"
|
||||||
class="tight-form-input input-medium"
|
class="tight-form-input input-medium"
|
||||||
ng-model="target.alias"
|
ng-model="target.alias"
|
||||||
@@ -163,7 +163,9 @@
|
|||||||
<li class="tight-form-item">
|
<li class="tight-form-item">
|
||||||
<i class="fa fa-eye invisible"></i>
|
<i class="fa fa-eye invisible"></i>
|
||||||
</li>
|
</li>
|
||||||
<li class="tight-form-item" style="width: 135px"> </li>
|
<li class="tight-form-item" style="width: 135px" ng-hide="target.mode == 2">
|
||||||
|
 
|
||||||
|
</li>
|
||||||
|
|
||||||
<!-- Select Application -->
|
<!-- Select Application -->
|
||||||
<li class="tight-form-item input-small" style="width: 5em">Application</li>
|
<li class="tight-form-item input-small" style="width: 5em">Application</li>
|
||||||
@@ -211,6 +213,28 @@
|
|||||||
placeholder="Item filter (regex)"
|
placeholder="Item filter (regex)"
|
||||||
ng-blur="targetBlur()">
|
ng-blur="targetBlur()">
|
||||||
</li>
|
</li>
|
||||||
|
<!-- Text metric regex -->
|
||||||
|
<li class="tight-form-item" ng-show="target.mode == 2">
|
||||||
|
Text filter
|
||||||
|
<i class="fa fa-question-circle"
|
||||||
|
bs-tooltip="'Use regex to extract a part of the returned value.'"></i>
|
||||||
|
</li>
|
||||||
|
<li ng-show="target.mode == 2">
|
||||||
|
<input type="text"
|
||||||
|
class="tight-form-input input-large" style="width: 20em"
|
||||||
|
ng-model="target.textFilter"
|
||||||
|
spellcheck='false'
|
||||||
|
placeholder="Text filter (regex)"
|
||||||
|
ng-blur="targetBlur()">
|
||||||
|
</li>
|
||||||
|
<li class="tight-form-item" ng-show="target.mode == 2">
|
||||||
|
Use capture groups
|
||||||
|
<input class="cr1" id="target.useCaptureGroups" type="checkbox"
|
||||||
|
ng-model="target.useCaptureGroups"
|
||||||
|
ng-checked="target.useCaptureGroups"
|
||||||
|
ng-change="targetBlur()">
|
||||||
|
<label for="target.useCaptureGroups" class="cr1"></label>
|
||||||
|
</li>
|
||||||
<!-- Scale -->
|
<!-- Scale -->
|
||||||
<li class="tight-form-item" ng-hide="target.mode == 2">
|
<li class="tight-form-item" ng-hide="target.mode == 2">
|
||||||
Scale
|
Scale
|
||||||
|
|||||||
Reference in New Issue
Block a user