Skip to content
This repository was archived by the owner on Dec 23, 2024. It is now read-only.

Commit a8c7fb5

Browse files
author
Shawn Hartsell
authored
Merge pull request #16 from InVisionApp/update-err-logs
Update error handling and logging
2 parents c1a49dc + 774b094 commit a8c7fb5

File tree

6 files changed

+20
-27
lines changed

6 files changed

+20
-27
lines changed

backend/mongo/masterlock.go

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -54,21 +54,18 @@ func (m *MongoBackend) Lock(info *backend.MasterInfo) error {
5454
if err == mgo.ErrNotFound {
5555
// perform an insert
5656
if err := m.lock.Collection().Insert(mmi); err != nil {
57-
m.log.Errorf("unable to insert initial lock: %v", err)
58-
return err
57+
return fmt.Errorf("unable to insert initial lock: %v", err)
5958
}
6059

61-
m.log.Info("successfully inserted initial lock")
6260
return nil
6361
}
6462

65-
e := fmt.Errorf("failed to fetch current master info: %v", err)
66-
m.log.Error(e)
63+
err = fmt.Errorf("failed to fetch current master info: %v", err)
6764

6865
m.log.Debug("attempting to refresh sessions in case of db issues")
6966
m.refresh()
7067

71-
return e
68+
return err
7269
}
7370

7471
// has not been long enough since the last valid heart beat
@@ -84,9 +81,8 @@ func (m *MongoBackend) Lock(info *backend.MasterInfo) error {
8481
}
8582

8683
if _, err := m.lock.Collection().Find(query).Apply(change, mmi); err != nil {
87-
lErr := fmt.Errorf("unable to complete findModify: %v", err)
88-
m.log.Error(lErr)
89-
return lErr
84+
err = fmt.Errorf("unable to complete findModify: %v", err)
85+
return err
9086
}
9187

9288
return nil

backend/mongo/mongodb.go

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ import (
1010
"strings"
1111
"sync"
1212

13-
"github.com/InVisionApp/go-logger"
13+
log "github.com/InVisionApp/go-logger"
1414
"github.com/InVisionApp/go-logger/shims/logrus"
1515
"github.com/globalsign/mgo"
16-
"github.com/newrelic/go-agent"
16+
newrelic "github.com/newrelic/go-agent"
1717
)
1818

1919
const (
@@ -118,7 +118,7 @@ func (m *MongoBackend) Connect() error {
118118
dialInfo.DialServer = func(addr *mgo.ServerAddr) (net.Conn, error) {
119119
conn, err := tls.Dial("tcp", addr.String(), &tls.Config{})
120120
if conn != nil {
121-
m.log.Debugf("Connection local address: %s, remote address: %s", conn.LocalAddr(), conn.RemoteAddr())
121+
m.log.Infof("Connection local address: %s, remote address: %s", conn.LocalAddr(), conn.RemoteAddr())
122122
}
123123
return conn, err
124124
}
@@ -181,7 +181,7 @@ func (s *SmartCollection) Collection() *mgo.Collection {
181181

182182
func (s *SmartCollection) EnsureIndexes(idxs []*mgo.Index) error {
183183
for _, idx := range idxs {
184-
s.log.Debugf("Ensuring index: %s", idx.Name)
184+
s.log.Infof("Ensuring index: %s", idx.Name)
185185
if err := s.UpsertIndex(idx); err != nil {
186186
return fmt.Errorf("could not ensure indexes on DB: %v", err)
187187
}

backend/mysql/masterlock.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,7 @@ func (m *MySQLBackend) Lock(info *backend.MasterInfo) error {
9797

9898
res, err := m.db.NamedExec(query, fields)
9999
if err != nil {
100-
m.log.Errorf("failed to update lock: %v", err)
101-
return err
100+
return fmt.Errorf("failed to update lock: %v", err)
102101
}
103102

104103
// if no rows were modified, then probably another master got the lock

backend/mysql/mysql.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import (
66
"fmt"
77
"time"
88

9-
"github.com/InVisionApp/go-logger"
9+
log "github.com/InVisionApp/go-logger"
1010
"github.com/InVisionApp/go-logger/shims/logrus"
1111
_ "github.com/go-sql-driver/mysql"
1212
"github.com/jmoiron/sqlx"
@@ -180,14 +180,14 @@ func (m *MySQLBackend) retryConnect() error {
180180
}
181181

182182
func (m *MySQLBackend) createDB() error {
183-
m.log.Debug("Creating new lock DB if it does not exist")
183+
m.log.Info("Creating new lock DB if it does not exist")
184184

185185
_, err := m.db.Exec(fmt.Sprintf("CREATE DATABASE IF NOT EXISTS `%v`", m.DBName))
186186
if err != nil {
187187
return fmt.Errorf("unable to create initial lock DB: %v", err)
188188
}
189189

190-
m.log.Debugf("Created new lock DB '%v' (or already existed)", m.DBName)
190+
m.log.Infof("Created new lock DB '%v' (or already existed)", m.DBName)
191191

192192
return nil
193193
}
@@ -212,14 +212,14 @@ func (m *MySQLBackend) createTable() error {
212212
`last_heartbeat TIMESTAMP`+
213213
`);`, m.TableName)
214214

215-
m.log.Debug("Attempting to create lock table")
215+
m.log.Info("Attempting to create lock table")
216216

217217
_, err := m.db.DB.Exec(query)
218218
if err != nil {
219219
return fmt.Errorf("unable to create lock table: %v", err)
220220
}
221221

222-
m.log.Debugf("Created new lock table '%v' (or already existed)", m.TableName)
222+
m.log.Infof("Created new lock table '%v' (or already existed)", m.TableName)
223223

224224
return nil
225225
}

example/example.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import (
55
"sync"
66
"time"
77

8-
"github.com/InVisionApp/go-logger"
8+
log "github.com/InVisionApp/go-logger"
99
logshim "github.com/InVisionApp/go-logger/shims/logrus"
1010
"github.com/InVisionApp/go-master"
1111
"github.com/InVisionApp/go-master/backend"
@@ -20,7 +20,7 @@ var (
2020

2121
func init() {
2222
l := logrus.New()
23-
l.SetLevel(logrus.DebugLevel)
23+
l.SetLevel(logrus.InfoLevel)
2424
logger = logshim.New(l)
2525
}
2626

master.go

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import (
44
"fmt"
55
"time"
66

7-
"github.com/InVisionApp/go-logger"
7+
log "github.com/InVisionApp/go-logger"
88
"github.com/gofrs/uuid"
99
"github.com/relistan/go-director"
1010

@@ -162,8 +162,6 @@ func (m *master) runHeartBeat() {
162162

163163
// run the heartbeat
164164
if err := m.lock.WriteHeartbeat(m.info); err != nil {
165-
m.log.Debugf("failed to write heartbeat: %v", err)
166-
167165
m.sendError(fmt.Errorf("failed to write heartbeat: %v", err))
168166
// if heartbeat fails or master lock lost, stop the tasks
169167
m.cleanupMaster()
@@ -186,7 +184,7 @@ func (m *master) becomeMaster() bool {
186184
}
187185

188186
if err := m.lock.Lock(mi); err != nil {
189-
m.log.Debugf("failed to lock: %v", err)
187+
m.sendError(fmt.Errorf("failed to acquire lock while becoming master: %v", err))
190188
return false
191189
}
192190

@@ -226,7 +224,7 @@ func (m *master) Stop() error {
226224
// this is a best effort. The heartbeat loop has been stopped,
227225
// so the lock will be lost eventually either way
228226
if err := m.lock.UnLock(m.uuid); err != nil {
229-
m.log.Errorf("failed to release lock on master backend: %v", err)
227+
m.sendError(fmt.Errorf("failed to release lock on master backend: %v", err))
230228
}
231229

232230
// at this point, as far as this node is concerned, it is

0 commit comments

Comments
 (0)