Make max open, max idle connections and connection max life time configurable

This commit is contained in:
Axel Pirek 2018-09-24 14:35:13 +02:00
parent e35f06b938
commit dd09ece8c9
4 changed files with 60 additions and 2 deletions

View File

@ -98,8 +98,12 @@ var NewSqlQueryEndpoint = func(config *SqlQueryEndpointConfiguration, rowTransfo
return nil, err
}
engine.SetMaxOpenConns(10)
engine.SetMaxIdleConns(10)
maxOpenConns := config.Datasource.JsonData.Get("maxOpenConns").MustInt(0)
engine.SetMaxOpenConns(maxOpenConns)
maxIdleConns := config.Datasource.JsonData.Get("maxIdleConns").MustInt(2)
engine.SetMaxIdleConns(maxIdleConns)
connMaxLifetime := config.Datasource.JsonData.Get("connMaxLifetime").MustInt(14400)
engine.SetConnMaxLifetime(time.Duration(connMaxLifetime) * time.Second)
engineCache.versions[config.Datasource.Id] = config.Datasource.Version
engineCache.cache[config.Datasource.Id] = engine

View File

@ -29,6 +29,24 @@
</div>
</div>
<div class="gf-form-group">
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Max open connections</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.maxOpenConns" placeholder="unlimited"></input>
</div>
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Max idle connections</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.maxIdleConns" placeholder="2"></input>
</div>
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Connection lifetime</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.connMaxLifetime" placeholder="14400"></input>
<info-popover mode="right-absolute">
The connection lifetime in seconds.
</info-popover>
</div>
</div>
<h3 class="page-heading">MSSQL details</h3>
<div class="gf-form-group">

View File

@ -24,6 +24,24 @@
</div>
</div>
<div class="gf-form-group">
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Max open connections</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.maxOpenConns" placeholder="unlimited"></input>
</div>
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Max idle connections</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.maxIdleConns" placeholder="2"></input>
</div>
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Connection lifetime</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.connMaxLifetime" placeholder="14400"></input>
<info-popover mode="right-absolute">
The connection lifetime in seconds.
</info-popover>
</div>
</div>
<h3 class="page-heading">MySQL details</h3>
<div class="gf-form-group">

View File

@ -38,6 +38,24 @@
</div>
</div>
<div class="gf-form-group">
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Max open connections</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.maxOpenConns" placeholder="unlimited"></input>
</div>
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Max idle connections</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.maxIdleConns" placeholder="2"></input>
</div>
<div class="gf-form max-width-30">
<span class="gf-form-label width-11">Connection lifetime</span>
<input type="number" min="0" class="gf-form-input" ng-model="ctrl.current.jsonData.connMaxLifetime" placeholder="14400"></input>
<info-popover mode="right-absolute">
The connection lifetime in seconds.
</info-popover>
</div>
</div>
<h3 class="page-heading">PostgreSQL details</h3>
<div class="gf-form-group">