Skip to content

Commit

Permalink
*: unify and normalize the format of the log in the pkg of server (pi…
Browse files Browse the repository at this point in the history
  • Loading branch information
zimulala authored Mar 25, 2019
1 parent 1154456 commit 5ffa06b
Show file tree
Hide file tree
Showing 9 changed files with 117 additions and 81 deletions.
17 changes: 9 additions & 8 deletions cmd/importer/main.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ import (
"os"

"github.com/pingcap/errors"
log "github.com/sirupsen/logrus"
"github.com/pingcap/log"
"go.uber.org/zap"
)

func main() {
Expand All @@ -29,31 +30,31 @@ func main() {
case flag.ErrHelp:
os.Exit(0)
default:
log.Errorf("parse cmd flags err %s\n", err)
log.Error("parse cmd flags", zap.Error(err))
os.Exit(2)
}

table := newTable()
err = parseTableSQL(table, cfg.DDLCfg.TableSQL)
if err != nil {
log.Fatal(err)
log.Fatal(err.Error())
}

err = parseIndexSQL(table, cfg.DDLCfg.IndexSQL)
if err != nil {
log.Fatal(err)
log.Fatal(err.Error())
}

dbs, err := createDBs(cfg.DBCfg, cfg.SysCfg.WorkerCount)
if err != nil {
log.Fatal(err)
log.Fatal(err.Error())
}
defer closeDBs(dbs)

if len(cfg.StatsCfg.Path) > 0 {
statsInfo, err1 := loadStats(table.tblInfo, cfg.StatsCfg.Path)
if err1 != nil {
log.Fatal(err1)
log.Fatal(err1.Error())
}
for _, idxInfo := range table.tblInfo.Indices {
offset := idxInfo.Columns[0].Offset
Expand All @@ -75,12 +76,12 @@ func main() {

err = execSQL(dbs[0], cfg.DDLCfg.TableSQL)
if err != nil {
log.Fatal(err)
log.Fatal(err.Error())
}

err = execSQL(dbs[0], cfg.DDLCfg.IndexSQL)
if err != nil {
log.Fatal(err)
log.Fatal(err.Error())
}

doProcess(table, dbs, cfg.SysCfg.JobCount, cfg.SysCfg.WorkerCount, cfg.SysCfg.Batch)
Expand Down
19 changes: 10 additions & 9 deletions cmd/importer/rand.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,8 @@ import (
"math/rand"
"time"

log "github.com/sirupsen/logrus"
"github.com/pingcap/log"
"go.uber.org/zap"
)

const (
Expand Down Expand Up @@ -80,7 +81,7 @@ func randDate(col *column) string {

minTime, err := time.Parse(dateFormat, min)
if err != nil {
log.Warnf("randDate err %s", err)
log.Warn("parse min date failed", zap.Error(err))
}
if len(max) == 0 {
t := minTime.Add(time.Duration(randInt(0, 365)) * 24 * time.Hour)
Expand All @@ -89,7 +90,7 @@ func randDate(col *column) string {

maxTime, err := time.Parse(dateFormat, max)
if err != nil {
log.Warnf("randDate err %s", err)
log.Warn("parse max date failed", zap.Error(err))
}
days := int(maxTime.Sub(minTime).Hours() / 24)
t := minTime.Add(time.Duration(randInt(0, days)) * 24 * time.Hour)
Expand All @@ -110,11 +111,11 @@ func randTime(col *column) string {

minTime, err := time.Parse(timeFormat, min)
if err != nil {
log.Warnf("randTime err %s", err)
log.Warn("parse min time failed", zap.Error(err))
}
maxTime, err := time.Parse(timeFormat, max)
if err != nil {
log.Warnf("randTime err %s", err)
log.Warn("parse max time failed", zap.Error(err))
}
seconds := int(maxTime.Sub(minTime).Seconds())
t := minTime.Add(time.Duration(randInt(0, seconds)) * time.Second)
Expand All @@ -138,7 +139,7 @@ func randTimestamp(col *column) string {

minTime, err := time.Parse(dateTimeFormat, min)
if err != nil {
log.Warnf("randTimestamp err %s", err)
log.Warn("parse min timestamp failed", zap.Error(err))
}
if len(max) == 0 {
t := minTime.Add(time.Duration(randInt(0, 365)) * 24 * time.Hour)
Expand All @@ -147,7 +148,7 @@ func randTimestamp(col *column) string {

maxTime, err := time.Parse(dateTimeFormat, max)
if err != nil {
log.Warnf("randTimestamp err %s", err)
log.Warn("parse max timestamp failed", zap.Error(err))
}
seconds := int(maxTime.Sub(minTime).Seconds())
t := minTime.Add(time.Duration(randInt(0, seconds)) * time.Second)
Expand All @@ -165,11 +166,11 @@ func randYear(col *column) string {

minTime, err := time.Parse(yearFormat, min)
if err != nil {
log.Warnf("randYear err %s", err)
log.Warn("parse min year failed", zap.Error(err))
}
maxTime, err := time.Parse(yearFormat, max)
if err != nil {
log.Warnf("randYear err %s", err)
log.Warn("parse max year failed", zap.Error(err))
}
seconds := int(maxTime.Sub(minTime).Seconds())
t := minTime.Add(time.Duration(randInt(0, seconds)) * time.Second)
Expand Down
22 changes: 13 additions & 9 deletions privilege/privileges/privileges.go
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,16 @@
package privileges

import (
"context"
"strings"

"github.com/pingcap/parser/auth"
"github.com/pingcap/parser/mysql"
"github.com/pingcap/tidb/privilege"
"github.com/pingcap/tidb/sessionctx"
"github.com/pingcap/tidb/types"
log "github.com/sirupsen/logrus"
"github.com/pingcap/tidb/util/logutil"
"go.uber.org/zap"
)

// SkipWithGrant causes the server to start without using the privilege system at all.
Expand Down Expand Up @@ -82,20 +84,20 @@ func (p *UserPrivileges) GetEncodedPassword(user, host string) string {
mysqlPriv := p.Handle.Get()
record := mysqlPriv.connectionVerification(user, host)
if record == nil {
log.Errorf("Get user privilege record fail: user %v, host %v", user, host)
logutil.Logger(context.Background()).Error("get user privilege record fail",
zap.String("user", user), zap.String("host", host))
return ""
}
pwd := record.Password
if len(pwd) != 0 && len(pwd) != mysql.PWDHashLen+1 {
log.Errorf("User [%s] password from SystemDB not like a sha1sum", user)
logutil.Logger(context.Background()).Error("user password from system DB not like sha1sum", zap.String("user", user))
return ""
}
return pwd
}

// ConnectionVerification implements the Manager interface.
func (p *UserPrivileges) ConnectionVerification(user, host string, authentication, salt []byte) (u string, h string, success bool) {

if SkipWithGrant {
p.user = user
p.host = host
Expand All @@ -106,7 +108,8 @@ func (p *UserPrivileges) ConnectionVerification(user, host string, authenticatio
mysqlPriv := p.Handle.Get()
record := mysqlPriv.connectionVerification(user, host)
if record == nil {
log.Errorf("Get user privilege record fail: user %v, host %v", user, host)
logutil.Logger(context.Background()).Error("get user privilege record fail",
zap.String("user", user), zap.String("host", host))
return
}

Expand All @@ -116,14 +119,15 @@ func (p *UserPrivileges) ConnectionVerification(user, host string, authenticatio
// Login a locked account is not allowed.
locked := record.AccountLocked
if locked {
log.Errorf("Try to login a locked account: user: %v, host: %v", user, host)
logutil.Logger(context.Background()).Error("try to login a locked account",
zap.String("user", user), zap.String("host", host))
success = false
return
}

pwd := record.Password
if len(pwd) != 0 && len(pwd) != mysql.PWDHashLen+1 {
log.Errorf("User [%s] password from SystemDB not like a sha1sum", user)
logutil.Logger(context.Background()).Error("user password from system DB not like sha1sum", zap.String("user", user))
return
}

Expand All @@ -141,7 +145,7 @@ func (p *UserPrivileges) ConnectionVerification(user, host string, authenticatio

hpwd, err := auth.DecodePassword(pwd)
if err != nil {
log.Errorf("Decode password string error %v", err)
logutil.Logger(context.Background()).Error("decode password string failed", zap.Error(err))
return
}

Expand Down Expand Up @@ -195,7 +199,7 @@ func (p *UserPrivileges) ActiveRoles(ctx sessionctx.Context, roleList []*auth.Ro
for _, r := range roleList {
ok := mysqlPrivilege.FindRole(u, h, r)
if !ok {
log.Errorf("Role: %+v doesn't grant for user", r)
logutil.Logger(context.Background()).Error("find role failed", zap.Stringer("role", r))
return false, r.String()
}
}
Expand Down
48 changes: 37 additions & 11 deletions server/http_handler.go
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,9 @@ import (
"github.com/pingcap/tidb/tablecodec"
"github.com/pingcap/tidb/types"
"github.com/pingcap/tidb/util/codec"
logutil "github.com/pingcap/tidb/util/logutil"
"github.com/pingcap/tidb/util/logutil"
log "github.com/sirupsen/logrus"
"go.uber.org/zap"
)

const (
Expand Down Expand Up @@ -100,7 +101,7 @@ func writeData(w http.ResponseWriter, data interface{}) {
writeError(w, err)
return
}
log.Info(string(js))
logutil.Logger(context.Background()).Info(string(js))
// write response
w.Header().Set(headerContentType, contentTypeJSON)
w.WriteHeader(http.StatusOK)
Expand Down Expand Up @@ -147,9 +148,14 @@ func (t *tikvHandlerTool) getMvccByEncodedKey(encodedKey kv.Key) (*kvrpcpb.MvccG
},
}
kvResp, err := t.store.SendReq(tikv.NewBackoffer(context.Background(), 500), tikvReq, keyLocation.Region, time.Minute)
log.Info(string(encodedKey), keyLocation.Region, string(keyLocation.StartKey), string(keyLocation.EndKey), kvResp, err)

if err != nil {
logutil.Logger(context.Background()).Info("get MVCC by encoded key failed",
zap.Binary("encodeKey", encodedKey),
zap.Reflect("region", keyLocation.Region),
zap.Binary("startKey", keyLocation.StartKey),
zap.Binary("endKey", keyLocation.EndKey),
zap.Reflect("kvResp", kvResp),
zap.Error(err))
return nil, errors.Trace(err)
}
return kvResp.MvccGetByKey, nil
Expand All @@ -165,7 +171,7 @@ func (t *tikvHandlerTool) getMvccByStartTs(startTS uint64, startKey, endKey []by
for {
curRegion, err := t.regionCache.LocateKey(bo, startKey)
if err != nil {
log.Error(startTS, startKey, err)
logutil.Logger(context.Background()).Error("get MVCC by startTS failed", zap.Uint64("txnStartTS", startTS), zap.Binary("startKey", startKey), zap.Error(err))
return nil, errors.Trace(err)
}

Expand All @@ -177,19 +183,39 @@ func (t *tikvHandlerTool) getMvccByStartTs(startTS uint64, startKey, endKey []by
}
tikvReq.Context.Priority = kvrpcpb.CommandPri_Low
kvResp, err := t.store.SendReq(bo, tikvReq, curRegion.Region, time.Hour)
log.Info(startTS, string(startKey), curRegion.Region, string(curRegion.StartKey), string(curRegion.EndKey), kvResp)
if err != nil {
log.Error(startTS, string(startKey), curRegion.Region, string(curRegion.StartKey), string(curRegion.EndKey), err)
logutil.Logger(context.Background()).Error("get MVCC by startTS failed",
zap.Uint64("txnStartTS", startTS),
zap.Binary("startKey", startKey),
zap.Reflect("region", curRegion.Region),
zap.Binary("curRegion startKey", curRegion.StartKey),
zap.Binary("curRegion endKey", curRegion.EndKey),
zap.Reflect("kvResp", kvResp),
zap.Error(err))
return nil, errors.Trace(err)
}
data := kvResp.MvccGetByStartTS
if err := data.GetRegionError(); err != nil {
log.Warn(startTS, string(startKey), curRegion.Region, string(curRegion.StartKey), string(curRegion.EndKey), err)
logutil.Logger(context.Background()).Warn("get MVCC by startTS failed",
zap.Uint64("txnStartTS", startTS),
zap.Binary("startKey", startKey),
zap.Reflect("region", curRegion.Region),
zap.Binary("curRegion startKey", curRegion.StartKey),
zap.Binary("curRegion endKey", curRegion.EndKey),
zap.Reflect("kvResp", kvResp),
zap.Stringer("error", err))
continue
}

if len(data.GetError()) > 0 {
log.Error(startTS, string(startKey), curRegion.Region, string(curRegion.StartKey), string(curRegion.EndKey), data.GetError())
logutil.Logger(context.Background()).Error("get MVCC by startTS failed",
zap.Uint64("txnStartTS", startTS),
zap.Binary("startKey", startKey),
zap.Reflect("region", curRegion.Region),
zap.Binary("curRegion startKey", curRegion.StartKey),
zap.Binary("curRegion endKey", curRegion.EndKey),
zap.Reflect("kvResp", kvResp),
zap.String("error", data.GetError()))
return nil, errors.New(data.GetError())
}

Expand Down Expand Up @@ -379,7 +405,7 @@ func (t *tikvHandlerTool) fetchHotRegion(rw string) (map[uint64]regionMetric, er
defer func() {
err = resp.Body.Close()
if err != nil {
log.Error(err)
logutil.Logger(context.Background()).Error("close body failed", zap.Error(err))
}
}()
var regionResp storeHotRegionInfos
Expand All @@ -406,7 +432,7 @@ func (t *tikvHandlerTool) fetchRegionTableIndex(metrics map[uint64]regionMetric)
for regionID, regionMetric := range metrics {
region, err := t.regionCache.LocateRegionByID(tikv.NewBackoffer(context.Background(), 500), regionID)
if err != nil {
log.Error(err)
logutil.Logger(context.Background()).Error("locate region failed", zap.Error(err))
continue
}

Expand Down
2 changes: 1 addition & 1 deletion server/http_handler_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -690,7 +690,7 @@ func (ts *HTTPHandlerTestSuite) TestPprof(c *C) {
}
time.Sleep(time.Millisecond * 10)
}
log.Fatalf("Failed to get profile for %d retries in every 10 ms", retryTime)
zaplog.Fatal("failed to get profile for %d retries in every 10 ms", zap.Int("retryTime", retryTime))
}

func (ts *HTTPHandlerTestSuite) TestServerInfo(c *C) {
Expand Down
Loading

0 comments on commit 5ffa06b

Please sign in to comment.