query.editor.html 4.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <query-editor-row query-ctrl="ctrl" has-text-edit-mode="false">
  2. <query-editor target="ctrl.target" template-srv="ctrl.templateSrv" datasource="ctrl.datasource" on-query-change="ctrl.handleQueryChange" on-execute-query="ctrl.handleExecuteQuery" ui-segment-srv=ctrl.uiSegmentSrv></query-editor>
  3. <!-- <metric-picker target="ctrl.target" default-project="ctrl.target.defaultProject" metric-type="ctrl.target.metricType" template-srv="ctrl.templateSrv" datasource="ctrl.datasource" on-change="ctrl.handleMetricTypeChange"></metric-picker>
  4. <stackdriver-filter target="ctrl.target" refresh="ctrl.refresh()" loading="ctrl.loadLabelsPromise" label-data="ctrl.labelData"
  5. ></stackdriver-filter>
  6. <aggregation-picker value-type="ctrl.target.valueType" metric-kind="ctrl.target.metricKind" aggregation="ctrl.target.aggregation" alignment-period="ctrl.lastQueryMeta.alignmentPeriod" refresh="ctrl.refresh()" template-srv="ctrl.templateSrv" datasource="ctrl.datasource" on-change="ctrl.handleAggregationChange"></aggregation-picker>
  7. <stackdriver-aggregation target="ctrl.target" alignment-period="ctrl.lastQueryMeta.alignmentPeriod" refresh="ctrl.refresh()"></stackdriver-aggregation> -->
  8. <!-- <stackdriver-filter target="ctrl.target" refresh="ctrl.refresh()" datasource="ctrl.datasource"
  9. ></stackdriver-filter>
  10. <stackdriver-aggregation target="ctrl.target" alignment-period="ctrl.lastQueryMeta.alignmentPeriod" refresh="ctrl.refresh()"></stackdriver-aggregation> -->
  11. <div class="gf-form-inline">
  12. <div class="gf-form">
  13. <span class="gf-form-label query-keyword width-9">Alias By</span>
  14. <input type="text" class="gf-form-input width-24" ng-model="ctrl.target.aliasBy" ng-change="ctrl.refresh()"
  15. ng-model-options="{ debounce: 500 }" />
  16. </div>
  17. <div class="gf-form gf-form--grow">
  18. <div class="gf-form-label gf-form-label--grow"></div>
  19. </div>
  20. </div>
  21. <div class="gf-form-inline">
  22. <div class="gf-form">
  23. <span class="gf-form-label width-9 query-keyword">Project</span>
  24. <input class="gf-form-input width-15" disabled type="text" ng-model='ctrl.target.defaultProject' />
  25. </div>
  26. <div class="gf-form">
  27. <label class="gf-form-label query-keyword" ng-click="ctrl.showHelp = !ctrl.showHelp">
  28. Show Help
  29. <i class="fa fa-caret-down" ng-show="ctrl.showHelp"></i>
  30. <i class="fa fa-caret-right" ng-hide="ctrl.showHelp"></i>
  31. </label>
  32. </div>
  33. <div class="gf-form" ng-show="ctrl.lastQueryMeta">
  34. <label class="gf-form-label query-keyword" ng-click="ctrl.showLastQuery = !ctrl.showLastQuery">
  35. Raw Query
  36. <i class="fa fa-caret-down" ng-show="ctrl.showLastQuery"></i>
  37. <i class="fa fa-caret-right" ng-hide="ctrl.showLastQuery"></i>
  38. </label>
  39. </div>
  40. <div class="gf-form gf-form--grow">
  41. <div class="gf-form-label gf-form-label--grow"></div>
  42. </div>
  43. </div>
  44. <div class="gf-form" ng-show="ctrl.showLastQuery">
  45. <pre class="gf-form-pre">{{ctrl.lastQueryMeta.rawQueryString}}</pre>
  46. </div>
  47. <div class="gf-form grafana-info-box" style="padding: 0" ng-show="ctrl.showHelp">
  48. <pre class="gf-form-pre alert alert-info" style="margin-right: 0"><h5>Alias Patterns</h5>Format the legend keys any way you want by using alias patterns.
  49. Format the legend keys any way you want by using alias patterns.<br /> <br />
  50. Example: <code ng-non-bindable>{{metric.name}} - {{metric.label.instance_name}}</code><br />
  51. Result: &nbsp;&nbsp;<code ng-non-bindable>cpu/usage_time - server1-europe-west-1</code><br /><br />
  52. <strong>Patterns</strong><br />
  53. <ul>
  54. <li>
  55. <code ng-non-bindable>{{metric.type}}</code> = metric type e.g. compute.googleapis.com/instance/cpu/usage_time
  56. </li>
  57. <li>
  58. <code ng-non-bindable>{{metric.name}}</code> = name part of metric e.g. instance/cpu/usage_time
  59. </li>
  60. <li>
  61. <code ng-non-bindable>{{metric.service}}</code> = service part of metric e.g. compute
  62. </li>
  63. <li>
  64. <code ng-non-bindable>{{metric.label.label_name}}</code> = Metric label metadata e.g.
  65. metric.label.instance_name
  66. </li>
  67. <li>
  68. <code ng-non-bindable>{{resource.label.label_name}}</code> = Resource label metadata e.g. resource.label.zone
  69. </li>
  70. </ul>
  71. </div>
  72. <div class="gf-form" ng-show="ctrl.lastQueryError">
  73. <pre class="gf-form-pre alert alert-error">{{ctrl.lastQueryError}}</pre>
  74. </div>
  75. </query-editor-row>