Skip to main content

Module server

Module server 

Source
Expand description

zinit-server - Process supervisor with dependency management.

This crate provides the core supervisor functionality for zinit:

  • Service dependency graph management
  • Process spawning and lifecycle management
  • Health checking
  • Log buffering
  • IPC server for control

§Architecture

+----------------+     +------------------+
|  IPC Server    |---->|   Supervisor     |
| (Unix Socket)  |     | (Event Loop)     |
+----------------+     +------------------+
                              |
                   +----------+----------+
                   |          |          |
              +----v----+ +---v---+ +----v----+
              |  Graph  | | Log   | | Process |
              | Module  | | Module| | Module  |
              +---------+ +-------+ +---------+

Re-exports§

pub use error::BlockedReason;
pub use error::GraphError;
pub use error::GraphResult;
pub use error::SupervisorError;
pub use error::SupervisorResult;
pub use graph::Service;
pub use graph::ServiceConfigKind;
pub use graph::ServiceGraph;
pub use graph::ServiceId;
pub use supervisor::Supervisor;
pub use xinet::ProxyStatus;
pub use xinet::XinetConfig;
pub use xinet::XinetManager;

Modules§

debug
Debug utilities for visibility into supervisor state.
error
Error types for the zinit supervisor.
graph
Service dependency graph management using petgraph.
ipc
Unix socket RPC server for zinit.
log
Log buffering and streaming for service output.
process
Process spawning, signaling, and health checking.
state
State preservation for supervisor restarts.
supervisor
Main supervisor event loop and state machine.
syslog
Syslog receiver for capturing logs from traditional daemons.
sysvol
MOS Storage Initialization Library
xinet
Xinet - Socket activation proxy module