1 Star 1 Fork 0

Hyperledger Fabric 国密/fabric

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
logging.go 1.81 KB
一键复制 编辑 原始数据 按行查看 历史
Jtyoui 提交于 2021-07-22 15:59 +08:00 . 国密
/*
Copyright IBM Corp. All Rights Reserved.
SPDX-License-Identifier: Apache-2.0
*/
package util
import (
"sync"
"gitee.com/hyperledger-fabric-gm/fabric/common/flogging"
"go.uber.org/zap/zapcore"
)
// Logger names for logger initialization.
const (
ChannelLogger = "gossip.channel"
CommLogger = "gossip.comm"
DiscoveryLogger = "gossip.discovery"
ElectionLogger = "gossip.election"
GossipLogger = "gossip.gossip"
CommMockLogger = "gossip.comm.mock"
PullLogger = "gossip.pull"
ServiceLogger = "gossip.service"
StateLogger = "gossip.state"
PrivateDataLogger = "gossip.privdata"
)
var loggers = make(map[string]Logger)
var lock = sync.Mutex{}
var testMode bool
// defaultTestSpec is the default logging level for gossip tests
var defaultTestSpec = "WARNING"
type Logger interface {
Debug(args ...interface{})
Debugf(format string, args ...interface{})
Error(args ...interface{})
Errorf(format string, args ...interface{})
Fatal(args ...interface{})
Fatalf(format string, args ...interface{})
Info(args ...interface{})
Infof(format string, args ...interface{})
Panic(args ...interface{})
Panicf(format string, args ...interface{})
Warning(args ...interface{})
Warningf(format string, args ...interface{})
IsEnabledFor(l zapcore.Level) bool
}
// GetLogger returns a logger for given gossip logger name and peerID
func GetLogger(name string, peerID string) Logger {
if peerID != "" && testMode {
name = name + "#" + peerID
}
lock.Lock()
defer lock.Unlock()
if lgr, ok := loggers[name]; ok {
return lgr
}
// Logger doesn't exist, create a new one
lgr := flogging.MustGetLogger(name)
loggers[name] = lgr
return lgr
}
// SetupTestLogging sets the default log levels for gossip unit tests
func SetupTestLogging() {
testMode = true
flogging.InitFromSpec(defaultTestSpec)
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/hyperledger-fabric-gm/fabric.git
git@gitee.com:hyperledger-fabric-gm/fabric.git
hyperledger-fabric-gm
fabric
fabric
v1.4.9

搜索帮助