tangled
alpha
login
or
join now
gbl08ma.com
/
didplcbft
24
fork
atom
A very experimental PLC implementation which uses BFT consensus for decentralization
24
fork
atom
overview
issues
pulls
pipelines
Use common logging system for badger logs
gbl08ma.com
1 month ago
f2fa4ac7
33844138
verified
This commit was signed with the committer's
known signature
.
gbl08ma.com
SSH Key Fingerprint:
SHA256:SPYB6pdFx2f9Xq5OXiol0IqoLhhxmlCgkqfaB82rWBw=
+37
-9
2 changed files
expand all
collapse all
unified
split
badgertodbm
badger.go
main.go
+29
-1
badgertodbm/badger.go
···
8
8
"path/filepath"
9
9
10
10
dbm "github.com/cometbft/cometbft-db"
11
11
+
cmtlog "github.com/cometbft/cometbft/libs/log"
11
12
"github.com/dgraph-io/badger/v4"
12
13
)
13
14
···
24
25
errValueNil = errors.New("value cannot be nil")
25
26
)
26
27
27
27
-
func NewBadgerDB(dbName, dir string) (*badger.DB, *BadgerDB, error) {
28
28
+
func NewBadgerDB(logger cmtlog.Logger, dbName, dir string) (*badger.DB, *BadgerDB, error) {
28
29
// Since Badger doesn't support database names, we join both to obtain
29
30
// the final directory to use for the database.
30
31
path := filepath.Join(dir, dbName)
···
43
44
// because these large values don't seem to change (unlike the non-leaf nodes within the iavl tree, which are changing all the time),
44
45
// this makes compaction much faster and decreases SSD thrashing
45
46
opts.ValueThreshold = 192
47
47
+
48
48
+
opts.Logger = &badgerDBLogger{
49
49
+
underlying: logger,
50
50
+
}
51
51
+
46
52
return NewBadgerDBWithOptions(opts)
47
53
}
48
54
···
322
328
}
323
329
return val
324
330
}
331
331
+
332
332
+
type badgerDBLogger struct {
333
333
+
underlying cmtlog.Logger
334
334
+
}
335
335
+
336
336
+
var _ badger.Logger = (*badgerDBLogger)(nil)
337
337
+
338
338
+
func (l *badgerDBLogger) Errorf(f string, v ...interface{}) {
339
339
+
l.underlying.Error(fmt.Sprintf(f, v...))
340
340
+
}
341
341
+
342
342
+
func (l *badgerDBLogger) Warningf(f string, v ...interface{}) {
343
343
+
l.underlying.Error(fmt.Sprintf(f, v...))
344
344
+
}
345
345
+
346
346
+
func (l *badgerDBLogger) Infof(f string, v ...interface{}) {
347
347
+
l.underlying.Info(fmt.Sprintf(f, v...))
348
348
+
}
349
349
+
350
350
+
func (l *badgerDBLogger) Debugf(f string, v ...interface{}) {
351
351
+
l.underlying.Debug(fmt.Sprintf(f, v...))
352
352
+
}
+8
-8
main.go
···
55
55
log.Fatalf("Invalid configuration data: %v", err)
56
56
}
57
57
58
58
-
underlyingTreeDB, treeDB, err := badgertodbm.NewBadgerDB("apptree", config.Config.DBDir())
58
58
+
logger := cmtlog.NewTMLogger(cmtlog.NewSyncWriter(os.Stdout))
59
59
+
logger, err := cmtflags.ParseLogLevel(config.LogLevel, logger, bftconfig.DefaultLogLevel)
60
60
+
if err != nil {
61
61
+
log.Fatalf("failed to parse log level: %v", err)
62
62
+
}
63
63
+
64
64
+
underlyingTreeDB, treeDB, err := badgertodbm.NewBadgerDB(logger.With("module", "treebadger"), "apptree", config.Config.DBDir())
59
65
if err != nil {
60
66
log.Fatalf("failed to create application tree database: %v", err)
61
67
}
62
68
63
63
-
underlyingIndexDB, indexDB, err := badgertodbm.NewBadgerDB("appindex", config.Config.DBDir())
69
69
+
underlyingIndexDB, indexDB, err := badgertodbm.NewBadgerDB(logger.With("module", "indexbadger"), "appindex", config.Config.DBDir())
64
70
if err != nil {
65
71
log.Fatalf("failed to create application index database: %v", err)
66
72
}
···
99
105
100
106
appContext, cancelAppContext := context.WithCancel(context.Background())
101
107
defer cancelAppContext()
102
102
-
103
103
-
logger := cmtlog.NewTMLogger(cmtlog.NewSyncWriter(os.Stdout))
104
104
-
logger, err = cmtflags.ParseLogLevel(config.LogLevel, logger, bftconfig.DefaultLogLevel)
105
105
-
if err != nil {
106
106
-
log.Fatalf("failed to parse log level: %v", err)
107
107
-
}
108
108
109
109
app, txFactory, plc, cleanup, err := abciapp.NewDIDPLCApplication(
110
110
appContext,