Skip to content

Commit e5d0d18

Browse files
mayastor-borstiagolobocastro
andcommitted
Merge #1860
1860: refactor: specify the events stream replicas r=tiagolobocastro a=tiagolobocastro Co-authored-by: Tiago Castro <[email protected]>
2 parents 31ec6ed + e06bf9b commit e5d0d18

File tree

5 files changed

+26
-6
lines changed

5 files changed

+26
-6
lines changed

io-engine-tests/src/lib.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -158,6 +158,7 @@ pub fn mayastor_test_init_ex(log_format: LogFormat, log_level: Option<&str>) {
158158
log_level.unwrap_or("info,io_engine=DEBUG"),
159159
log_format,
160160
None,
161+
None,
161162
);
162163

163164
io_engine::CPS_INIT!();

io-engine/src/bin/io-engine.rs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -253,9 +253,19 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
253253
// automatically. trace maps to debug at FFI level. If RUST_LOG is
254254
// passed, we will use it regardless.
255255
if !args.log_components.is_empty() {
256-
logger::init_ex("TRACE", log_format, args.events_url.clone());
256+
logger::init_ex(
257+
"TRACE",
258+
log_format,
259+
args.events_url.clone(),
260+
args.events_replicas,
261+
);
257262
} else {
258-
logger::init_ex("INFO", log_format, args.events_url.clone());
263+
logger::init_ex(
264+
"INFO",
265+
log_format,
266+
args.events_url.clone(),
267+
args.events_replicas,
268+
);
259269
}
260270

261271
info!("{}", fmt_package_info!());

io-engine/src/core/env.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,9 @@ pub struct MayastorCliArgs {
251251
/// Events message-bus endpoint url.
252252
#[clap(long)]
253253
pub events_url: Option<url::Url>,
254+
/// Replication factor for the events jetstream.
255+
#[clap(long)]
256+
pub events_replicas: Option<usize>,
254257
/// Enables additional nexus I/O channel debugging.
255258
#[clap(
256259
long = "enable-channel-dbg",
@@ -345,6 +348,7 @@ impl Default for MayastorCliArgs {
345348
skip_sig_handler: false,
346349
enable_io_all_thrd_nexus_channels: false,
347350
events_url: None,
351+
events_replicas: None,
348352
enable_nexus_channel_debug: false,
349353
lvm: false,
350354
snap_rebuild: false,

io-engine/src/logger.rs

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -508,7 +508,12 @@ impl LogFormat {
508508
///
509509
/// We might want to suppress certain messages, as some of them are redundant,
510510
/// in particular, the NOTICE messages as such, they are mapped to debug.
511-
pub fn init_ex(level: &str, format: LogFormat, events_url: Option<url::Url>) {
511+
pub fn init_ex(
512+
level: &str,
513+
format: LogFormat,
514+
events_url: Option<url::Url>,
515+
events_replicas: Option<usize>,
516+
) {
512517
// Set up a "logger" that simply translates any "log" messages it receives
513518
// to trace events. This is for our custom spdk log messages, but also
514519
// for any other third party crates still using the logging facade.
@@ -532,7 +537,7 @@ pub fn init_ex(level: &str, format: LogFormat, events_url: Option<url::Url>) {
532537
Some(url) => {
533538
let events_filter = Targets::new().with_target(EVENTING_TARGET, Level::INFO);
534539
Some(
535-
EventHandle::init_ext(url.to_string(), SERVICE_NAME, spawn)
540+
EventHandle::init_ext(url.to_string(), SERVICE_NAME, spawn, events_replicas)
536541
.with_filter(events_filter),
537542
)
538543
}
@@ -548,5 +553,5 @@ pub fn init_ex(level: &str, format: LogFormat, events_url: Option<url::Url>) {
548553
}
549554

550555
pub fn init(level: &str) {
551-
init_ex(level, Default::default(), None)
556+
init_ex(level, Default::default(), None, None)
552557
}

0 commit comments

Comments
 (0)