OPTION(rocksdb_disableWAL, OPT_BOOL, false) // diable write ahead log
OPTION(rocksdb_num_levels, OPT_INT, 0) // number of levels for this database
OPTION(rocksdb_wal_dir, OPT_STR, "") // rocksdb write ahead log file
+OPTION(rocksdb_info_log_level, OPT_STR, "info") // info log level : debug , info , warn, error, fatal
/**
* osd_client_op_priority and osd_recovery_op_priority adjust the relative
options.num_levels = g_conf->rocksdb_num_levels;
options.disableWAL = g_conf->rocksdb_disableWAL;
options.wal_dir = g_conf->rocksdb_wal_dir;
+ options.info_log_level = g_conf->rocksdb_info_log_level;
return 0;
}
ldoptions.error_if_exists = options.error_if_exists;
ldoptions.paranoid_checks = options.paranoid_checks;
ldoptions.create_if_missing = create_if_missing;
-
if (options.log_file.length()) {
rocksdb::Env *env = rocksdb::Env::Default();
env->NewLogger(options.log_file, &ldoptions.info_log);
+ ldoptions.info_log->SetInfoLogLevel((rocksdb::InfoLogLevel)get_info_log_level(options.info_log_level));
+ } else {
+ ldoptions.info_log_level = (rocksdb::InfoLogLevel)get_info_log_level(options.info_log_level);
}
if(options.disableDataSync)
ldoptions.disableDataSync = options.disableDataSync;
logger->inc(l_rocksdb_txns);
return s.ok() ? 0 : -1;
}
+int RocksDBStore::get_info_log_level(string info_log_level)
+{
+ if (info_log_level == "debug") {
+ return 0;
+ } else if (info_log_level == "info") {
+ return 1;
+ } else if (info_log_level == "warn") {
+ return 2;
+ } else if (info_log_level == "error") {
+ return 3;
+ } else if (info_log_level == "fatal") {
+ return 4;
+ } else {
+ return 1;
+ }
+}
RocksDBStore::RocksDBTransactionImpl::RocksDBTransactionImpl(RocksDBStore *_db)
{
void compact_range_async(const string& prefix, const string& start, const string& end) {
compact_range_async(combine_strings(prefix, start), combine_strings(prefix, end));
}
+ int get_info_log_level(string info_log_level);
/**
* options_t: Holds options which are minimally interpreted
string log_file;
string wal_dir;
+ string info_log_level;
options_t() :
write_buffer_size(0), //< 0 means default
level0_stop_writes_trigger(0),
disableDataSync(false),
disableWAL(false),
- num_levels(0)
+ num_levels(0),
+ info_log_level("info")
{}
} options;