diff options
Diffstat (limited to 'src/swarm/state_file.rs')
| -rw-r--r-- | src/swarm/state_file.rs | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/swarm/state_file.rs b/src/swarm/state_file.rs index 3693d89..a65fa5b 100644 --- a/src/swarm/state_file.rs +++ b/src/swarm/state_file.rs @@ -1,5 +1,6 @@ //! The state file (`--state-file`): what a node remembers across restarts, so it -//! rejoins its swarm on its own: the swarm ID and some members to reach it through. +//! rejoins its swarm on its own: the swarm ID and some members to reach it through; and +//! the members' aliases, for the logs from the start (`logging`). //! Not the document: a restarted node still starts empty and syncs. //! //! Written rarely: once the node is ready, then when the remembered members change @@ -35,6 +36,9 @@ pub(crate) struct Remembered { /// them (`swarm::members::addresses`). #[serde(default)] pub(crate) seeds: Vec<String>, + /// Members' aliases, by the names that stand for them (`logging::aliases`). + #[serde(default)] + pub(crate) aliases: std::collections::BTreeMap<String, String>, } pub(crate) struct StateFile { @@ -136,7 +140,11 @@ pub(crate) async fn update(state: &AppState, now: bool) { state.clock.now_millis().as_u64(), ) }; - let remembered = Remembered { swarm_id, seeds }; + let remembered = Remembered { + swarm_id, + seeds, + aliases: crate::logging::aliases(), + }; { let inner = file.lock(); |
