aboutsummaryrefslogtreecommitdiff
path: root/src/util/background/mod.rs
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2022-12-12 17:16:49 +0100
committerAlex Auvolat <alex@adnab.me>2022-12-12 17:17:05 +0100
commitde9d6cddf709e686ada3d1e71de7b31d7704b8b5 (patch)
treece97129877b6d0b1839f22e42fa3d8e5fb9f07c7 /src/util/background/mod.rs
parentf7c65e830e66c9887d989a8281d8fae7f76f9c8c (diff)
downloadgarage-de9d6cddf709e686ada3d1e71de7b31d7704b8b5.tar.gz
garage-de9d6cddf709e686ada3d1e71de7b31d7704b8b5.zip
Prettier worker list table; remove useless CLI log messages
Diffstat (limited to 'src/util/background/mod.rs')
-rw-r--r--src/util/background/mod.rs13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/util/background/mod.rs b/src/util/background/mod.rs
index 619f5068..fd9258b8 100644
--- a/src/util/background/mod.rs
+++ b/src/util/background/mod.rs
@@ -29,13 +29,24 @@ pub struct BackgroundRunner {
#[derive(Clone, Serialize, Deserialize, Debug)]
pub struct WorkerInfo {
pub name: String,
- pub info: Option<String>,
+ pub status: WorkerStatus,
pub state: WorkerState,
pub errors: usize,
pub consecutive_errors: usize,
pub last_error: Option<(String, u64)>,
}
+/// WorkerStatus is a struct returned by the worker with a bunch of canonical
+/// fields to indicate their status to CLI users. All fields are optional.
+#[derive(Clone, Serialize, Deserialize, Debug, Default)]
+pub struct WorkerStatus {
+ pub tranquility: Option<u32>,
+ pub progress: Option<String>,
+ pub queue_length: Option<u64>,
+ pub persistent_errors: Option<u64>,
+ pub freeform: Vec<String>,
+}
+
impl BackgroundRunner {
/// Create a new BackgroundRunner
pub fn new(