mirror of https://github.com/grafana/grafana.git
				
				
				
			Make max open, max idle connections and connection max life time configurable
This commit is contained in:
		
							parent
							
								
									e35f06b938
								
							
						
					
					
						commit
						dd09ece8c9
					
				| 
						 | 
					@ -98,8 +98,12 @@ var NewSqlQueryEndpoint = func(config *SqlQueryEndpointConfiguration, rowTransfo
 | 
				
			||||||
		return nil, err
 | 
							return nil, err
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	engine.SetMaxOpenConns(10)
 | 
						maxOpenConns := config.Datasource.JsonData.Get("maxOpenConns").MustInt(0)
 | 
				
			||||||
	engine.SetMaxIdleConns(10)
 | 
						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.versions[config.Datasource.Id] = config.Datasource.Version
 | 
				
			||||||
	engineCache.cache[config.Datasource.Id] = engine
 | 
						engineCache.cache[config.Datasource.Id] = engine
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -29,6 +29,24 @@
 | 
				
			||||||
	</div>
 | 
						</div>
 | 
				
			||||||
</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>
 | 
					<h3 class="page-heading">MSSQL details</h3>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<div class="gf-form-group">
 | 
					<div class="gf-form-group">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -24,6 +24,24 @@
 | 
				
			||||||
	</div>
 | 
						</div>
 | 
				
			||||||
</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>
 | 
					<h3 class="page-heading">MySQL details</h3>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<div class="gf-form-group">
 | 
					<div class="gf-form-group">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -38,6 +38,24 @@
 | 
				
			||||||
	</div>
 | 
						</div>
 | 
				
			||||||
</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>
 | 
					<h3 class="page-heading">PostgreSQL details</h3>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<div class="gf-form-group">
 | 
					<div class="gf-form-group">
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue