Add rocksdb logging integration with tracing.
Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
parent
c569881b08
commit
a8d5cf9651
2 changed files with 18 additions and 1 deletions
|
@ -10,7 +10,7 @@ use conduit::{debug, error, info, utils::time::rfc2822_from_seconds, warn, Err,
|
||||||
use rocksdb::{
|
use rocksdb::{
|
||||||
backup::{BackupEngine, BackupEngineOptions},
|
backup::{BackupEngine, BackupEngineOptions},
|
||||||
perf::get_memory_usage_stats,
|
perf::get_memory_usage_stats,
|
||||||
AsColumnFamilyRef, BoundColumnFamily, Cache, ColumnFamilyDescriptor, DBCommon, DBWithThreadMode, Env,
|
AsColumnFamilyRef, BoundColumnFamily, Cache, ColumnFamilyDescriptor, DBCommon, DBWithThreadMode, Env, LogLevel,
|
||||||
MultiThreaded, Options,
|
MultiThreaded, Options,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -279,6 +279,21 @@ pub(crate) fn repair(db_opts: &Options, path: &PathBuf) -> Result<()> {
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[tracing::instrument(skip_all, name = "rocksdb")]
|
||||||
|
pub(crate) fn handle_log(level: LogLevel, msg: &str) {
|
||||||
|
let msg = msg.trim();
|
||||||
|
if msg.starts_with("Options") {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
match level {
|
||||||
|
LogLevel::Header | LogLevel::Debug => debug!("{msg}"),
|
||||||
|
LogLevel::Error | LogLevel::Fatal => error!("{msg}"),
|
||||||
|
LogLevel::Info => debug!("{msg}"),
|
||||||
|
LogLevel::Warn => warn!("{msg}"),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
impl Drop for Engine {
|
impl Drop for Engine {
|
||||||
#[cold]
|
#[cold]
|
||||||
fn drop(&mut self) {
|
fn drop(&mut self) {
|
||||||
|
|
|
@ -191,6 +191,8 @@ fn set_logging_defaults(opts: &mut Options, config: &Config) {
|
||||||
|
|
||||||
if config.rocksdb_log_stderr {
|
if config.rocksdb_log_stderr {
|
||||||
opts.set_stderr_logger(rocksdb_log_level, "rocksdb");
|
opts.set_stderr_logger(rocksdb_log_level, "rocksdb");
|
||||||
|
} else {
|
||||||
|
opts.set_callback_logger(rocksdb_log_level, &super::engine::handle_log);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue