Browse Source

Add min time interval to postgres datasource

Sven Klemm 7 years ago
parent
commit
a95453036b

+ 2 - 0
public/app/plugins/datasource/postgres/datasource.ts

@@ -8,6 +8,7 @@ export class PostgresDatasource {
   jsonData: any;
   responseParser: ResponseParser;
   queryModel: PostgresQuery;
+  interval: string;
 
   /** @ngInject */
   constructor(instanceSettings, private backendSrv, private $q, private templateSrv, private timeSrv) {
@@ -16,6 +17,7 @@ export class PostgresDatasource {
     this.jsonData = instanceSettings.jsonData;
     this.responseParser = new ResponseParser(this.$q);
     this.queryModel = new PostgresQuery({});
+    this.interval = instanceSettings.jsonData.timeInterval;
   }
 
   interpolateVariable(value, variable) {

+ 10 - 0
public/app/plugins/datasource/postgres/partials/config.html

@@ -61,6 +61,16 @@
     </label>
 	</div>
 
+	<div class="gf-form-inline">
+		<div class="gf-form">
+			<span class="gf-form-label width-9">Min time interval</span>
+			<input type="text" class="gf-form-input width-6" ng-model="ctrl.current.jsonData.timeInterval" spellcheck='false' placeholder="1m"></input>
+			<info-popover mode="right-absolute">
+				A lower limit for the auto group by time interval. Recommended to be set to write frequency,
+				for example <code>1m</code> if your data is written every minute.
+			</info-popover>
+		</div>
+	</div>
 <div class="grafana-info-box alert alert-info" ng-show="ctrl.showTimescaleDBHelp">
   <div class="alert-body">
     <p>

+ 5 - 1
public/app/plugins/datasource/postgres/plugin.json

@@ -18,6 +18,10 @@
 
   "alerting": true,
   "annotations": true,
-  "metrics": true
+  "metrics": true,
+
+  "queryOptions": {
+    "minInterval": true
+  }
 
 }