Skip to content

Commit 0ac2658

Browse files
committed
debugs
1 parent 8ed4464 commit 0ac2658

File tree

1 file changed

+19
-9
lines changed

1 file changed

+19
-9
lines changed

ConnPool.go

Lines changed: 19 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -208,7 +208,7 @@ func (c *ConnPool) connect() (connitem *ConnItem, err error) {
208208
if isNetworkUnreachable(err) {
209209
return nil, fmt.Errorf("error connect Unreachable network! '%s' @ '%s' err='%v'", c.provider.Host, c.provider.Name, err)
210210
}
211-
dlog(always, "ERROR connect Dial '%s' no retry err='%v'", c.provider.Name, err)
211+
dlog(cfg.opt.DebugConnPool, "ERROR connect Dial '%s' no retry err='%v'", c.provider.Name, err)
212212
return nil, err
213213
}
214214
case true:
@@ -224,7 +224,7 @@ func (c *ConnPool) connect() (connitem *ConnItem, err error) {
224224
if isNetworkUnreachable(err) {
225225
return nil, fmt.Errorf("error connect Unreachable network! '%s' @ '%s' err='%v'", c.provider.Host, c.provider.Name, err)
226226
}
227-
dlog(always, "ERROR connect Dial '%s' no-retry err='%v'", c.provider.Name, err)
227+
dlog(cfg.opt.DebugConnPool, "ERROR connect Dial '%s' no-retry err='%v'", c.provider.Name, err)
228228
return nil, err
229229
}
230230
} // end switch
@@ -326,7 +326,7 @@ func (c *ConnPool) NewConn() (connitem *ConnItem, err error) {
326326
if err != nil || connitem == nil || connitem.conn == nil {
327327
c.mux.Lock() // mutex c460
328328
c.openConns--
329-
dlog(always, "ERROR in ConnPool NewConn: connect failed '%s' openConns=%d connitem='%v' err='%v'", c.provider.Name, c.openConns, connitem, err)
329+
dlog(cfg.opt.DebugConnPool, "ERROR in ConnPool NewConn: connect failed '%s' openConns=%d connitem='%v' err='%v'", c.provider.Name, c.openConns, connitem, err)
330330
c.mux.Unlock() // mutex c460
331331
return nil, fmt.Errorf("error in ConnPool NewConn: connect failed '%s' err='%v'", c.provider.Name, err)
332332
}
@@ -335,6 +335,7 @@ func (c *ConnPool) NewConn() (connitem *ConnItem, err error) {
335335
c.mux.RUnlock() // mutex c461
336336
// we have a new connection!
337337
GCounter.Incr("TOTAL_NewConns")
338+
go c.provider.IncrementOpenConns()
338339
return connitem, nil // established new connection and returns connitem
339340
}
340341
c.mux.Unlock() // mutex c459a
@@ -539,6 +540,7 @@ func (c *ConnPool) CloseConn(connitem *ConnItem, sharedConnChan chan *ConnItem)
539540
c.openConns--
540541
dlog(cfg.opt.DebugConnPool, "DisConn '%s' inPool=%d open=%d", c.provider.Name, len(c.pool), c.openConns)
541542
c.mux.Unlock()
543+
go c.provider.DecrementOpenConns()
542544
// if a sharedConnChan is supplied we send a nil to the channel
543545
// a nil as connitem signals the routines to get a new conn
544546
// mostly because conn was closed by network, protocol error or timeout
@@ -737,9 +739,7 @@ func SharedConnGet(sharedCC chan *ConnItem, provider *Provider) (connitem *ConnI
737739
}
738740
if !needNewConn && aconnitem != nil && aconnitem.conn != nil {
739741
// we have a valid connection, use it
740-
if cfg.opt.BUG {
741-
dlog(cfg.opt.DebugConnPool, "SharedConnGet: got shared connection '%s' aconnitem='%#v'", provider.Name, aconnitem)
742-
}
742+
dlog(cfg.opt.DebugConnPool, "SharedConnGet: got shared connection '%s' aconnitem='%#v'", provider.Name, aconnitem)
743743
provider.ConnPool.ExtendConn(connitem)
744744
return aconnitem, nil
745745
}
@@ -750,13 +750,13 @@ func SharedConnGet(sharedCC chan *ConnItem, provider *Provider) (connitem *ConnI
750750
newconnitem, err := provider.ConnPool.GetConn()
751751
if err != nil || newconnitem == nil || newconnitem.conn == nil {
752752
// unable to get a new connection, put nil back into sharedCC
753-
dlog(always, "ERROR SharedConnGet connect failed Provider '%s' err='%v'", provider.Name, err)
753+
dlog(cfg.opt.DebugConnPool, "ERROR SharedConnGet connect failed Provider '%s' err='%v'", provider.Name, err)
754754
sharedCC <- nil // put nil back into sharedCC
755-
return
755+
return nil, err
756756
}
757757
connitem = newconnitem // use the new connection item
758758
provider.ConnPool.ExtendConn(connitem)
759-
return
759+
return connitem, nil
760760
} // end func SharedConnGet
761761

762762
// SharedConnReturn puts a connection back into the sharedCC channel.
@@ -836,6 +836,16 @@ func Speedmeter(byteSize int64, cp *ConnPool, cnt *Counter_uint64, workerWGconnR
836836
txSpeed, txMbps := ConvertSpeed(int64(tmpTX), PrintStats)
837837
dlPerc := int(float64(totalRX) / float64(byteSize) * 100)
838838
upPerc := int(float64(totalTX) / float64(byteSize) * 100)
839+
840+
// Store speed values in provider struct for web UI (if this is a provider-specific speedmeter)
841+
if cp != nil && cp.provider != nil {
842+
cp.provider.mux.Lock()
843+
cp.provider.speed.downloadSpeed = float64(rxSpeed) * 1024 // convert KiB/s to bytes/sec
844+
cp.provider.speed.uploadSpeed = float64(txSpeed) * 1024 // convert KiB/s to bytes/sec
845+
cp.provider.speed.lastUpdated = time.Now().Unix()
846+
cp.provider.mux.Unlock()
847+
}
848+
839849
printSpeedTable(dlPerc, upPerc, totalRX, totalTX, rxSpeed, txSpeed, rxMbps, txMbps, name, group)
840850

841851
}

0 commit comments

Comments
 (0)