@@ -29,6 +29,12 @@ import (
29
29
)
30
30
31
31
var dbLogger = logging .MustGetLogger ("db" )
32
+ var rocksDBLogLevelMap = map [string ]gorocksdb.InfoLogLevel {
33
+ "debug" : gorocksdb .DebugInfoLogLevel ,
34
+ "info" : gorocksdb .InfoInfoLogLevel ,
35
+ "warn" : gorocksdb .WarnInfoLogLevel ,
36
+ "error" : gorocksdb .ErrorInfoLogLevel ,
37
+ "fatal" : gorocksdb .FatalInfoLogLevel }
32
38
33
39
const blockchainCF = "blockchainCF"
34
40
const stateCF = "stateCF"
@@ -159,6 +165,26 @@ func (openchainDB *OpenchainDB) open() {
159
165
opts := gorocksdb .NewDefaultOptions ()
160
166
defer opts .Destroy ()
161
167
168
+ maxLogFileSize := viper .GetInt ("peer.db.maxLogFileSize" )
169
+ if maxLogFileSize > 0 {
170
+ dbLogger .Infof ("Setting rocksdb maxLogFileSize to %d" , maxLogFileSize )
171
+ opts .SetMaxLogFileSize (maxLogFileSize )
172
+ }
173
+
174
+ keepLogFileNum := viper .GetInt ("peer.db.keepLogFileNum" )
175
+ if keepLogFileNum > 0 {
176
+ dbLogger .Infof ("Setting rocksdb keepLogFileNum to %d" , keepLogFileNum )
177
+ opts .SetKeepLogFileNum (keepLogFileNum )
178
+ }
179
+
180
+ logLevelStr := viper .GetString ("peer.db.loglevel" )
181
+ logLevel , ok := rocksDBLogLevelMap [logLevelStr ]
182
+
183
+ if ok {
184
+ dbLogger .Infof ("Setting rocks db InfoLogLevel to %d" , logLevel )
185
+ opts .SetInfoLogLevel (logLevel )
186
+ }
187
+
162
188
opts .SetCreateIfMissing (missing )
163
189
opts .SetCreateIfMissingColumnFamilies (true )
164
190
0 commit comments