query.editor.html 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <query-editor-row query-ctrl="ctrl" can-collapse="false" has-text-edit-mode="true">
  2. <div class="gf-form" ng-if="!ctrl.target.editorMode">
  3. <input type="text" class="gf-form-input" ng-model="ctrl.target.expr" spellcheck="false" ng-blur="ctrl.refresh()"></input>
  4. </div>
  5. <div class="gf-form-inline" ng-if="ctrl.target.editorMode">
  6. <div class="gf-form">
  7. <label class="gf-form-label width-8 query-keyword">Query</label>
  8. <metric-segment segment="ctrl.metricSegment" get-options="ctrl.getMetricOptions()" on-change="ctrl.queryChanged()"></metric-segment>
  9. </div>
  10. <div class="gf-form" ng-repeat="part in ctrl.query.functions">
  11. <query-part-editor class="gf-form-label query-part"
  12. part="part"
  13. remove-action="ctrl.removePart(query.functions, part)"
  14. part-updated="ctrl.partUpdated(query.functions, part)"
  15. get-options="ctrl.getPartOptions(part)">
  16. </query-part-editor>
  17. </div>
  18. <div class="gf-form">
  19. <label class="dropdown"
  20. dropdown-typeahead="ctrl.addQueryPartMenu"
  21. dropdown-typeahead-on-select="ctrl.addQueryPart($item, $subItem)">
  22. </label>
  23. </div>
  24. <div class="gf-form gf-form--grow">
  25. <div class="gf-form-label gf-form-label--grow"></div>
  26. </div>
  27. </div>
  28. <div class="gf-form-inline">
  29. <div class="gf-form max-width-26">
  30. <label class="gf-form-label width-8 query-keyword">Legend format</label>
  31. <input type="text" class="gf-form-input" ng-model="ctrl.target.legendFormat"
  32. spellcheck='false' placeholder="legend format" data-min-length=0 data-items=1000
  33. ng-model-onblur ng-change="ctrl.refreshMetricData()">
  34. </input>
  35. </div>
  36. <div class="gf-form">
  37. <label class="gf-form-label width-5">Step</label>
  38. <input type="text" class="gf-form-input max-width-5" ng-model="ctrl.target.interval"
  39. data-placement="right"
  40. spellcheck='false'
  41. placeholder="{{ctrl.panelCtrl.interval}}"
  42. data-min-length=0 data-items=100
  43. ng-model-onblur
  44. ng-change="ctrl.refreshMetricData()"/>
  45. <info-popover mode="right-absolute">
  46. Leave blank for auto handling based on time range and panel width
  47. </info-popover>
  48. </div>
  49. <div class="gf-form">
  50. <label class="gf-form-label">Resolution</label>
  51. <div class="gf-form-select-wrapper max-width-15">
  52. <select ng-model="ctrl.target.intervalFactor" class="gf-form-input"
  53. ng-options="r.factor as r.label for r in ctrl.resolutions"
  54. ng-change="ctrl.refreshMetricData()">
  55. </select>
  56. </div>
  57. <label class="gf-form-label">
  58. <a href="{{ctrl.linkToPrometheus}}" target="_blank" bs-tooltip="'Link to Graph in Prometheus'">
  59. <i class="fa fa-share-square-o"></i>
  60. </a>
  61. </label>
  62. </div>
  63. <div class="gf-form gf-form--grow">
  64. <div class="gf-form-label gf-form-label--grow"></div>
  65. </div>
  66. </div>
  67. </query-editor-row>