pub struct SpawnMeshAdmin {
pub hosts: Vec<(String, ActorRef<HostAgent>)>,
pub root_client_actor_id: Option<ActorId>,
pub admin_addr: Option<SocketAddr>,
pub addr: PortRef<String>,
}Expand description
Message to spawn a [MeshAdminAgent] on this host’s system proc.
The handler spawns the admin agent, queries its HTTP address via
GetAdminAddr, and replies with the address string.
Fields§
§hosts: Vec<(String, ActorRef<HostAgent>)>All hosts in the mesh as (address, agent_ref) pairs. Passed
through to [MeshAdminAgent::new] so the admin can fan out
introspection queries to every host.
root_client_actor_id: Option<ActorId>ActorId of the process-global root client, exposed as a
child node in the admin introspection tree. None if no root
client is available.
admin_addr: Option<SocketAddr>Explicit bind address for the admin HTTP server. When None,
the server reads MESH_ADMIN_ADDR from config.
addr: PortRef<String>Reply port for the admin HTTP address string (e.g.
"myhost.facebook.com:8080").
Trait Implementations§
Source§impl Debug for SpawnMeshAdmin
impl Debug for SpawnMeshAdmin
Source§impl<'de> Deserialize<'de> for SpawnMeshAdmin
impl<'de> Deserialize<'de> for SpawnMeshAdmin
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Handler<SpawnMeshAdmin> for HostAgent
impl Handler<SpawnMeshAdmin> for HostAgent
Source§fn handle<'life0, 'life1, 'async_trait>(
&'life0 mut self,
cx: &'life1 Context<'_, Self>,
msg: SpawnMeshAdmin,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn handle<'life0, 'life1, 'async_trait>(
&'life0 mut self,
cx: &'life1 Context<'_, Self>,
msg: SpawnMeshAdmin,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Spawns a [MeshAdminAgent] on this host’s system proc, waits
for its HTTP server to bind, and replies with the listen
address.
Source§impl Named for SpawnMeshAdmin
impl Named for SpawnMeshAdmin
Source§fn typename() -> &'static str
fn typename() -> &'static str
Source§fn typehash() -> u64
fn typehash() -> u64
Source§fn typeid() -> TypeId
fn typeid() -> TypeId
Source§fn port() -> u64
fn port() -> u64
Source§impl Serialize for SpawnMeshAdmin
impl Serialize for SpawnMeshAdmin
impl Accepts<SpawnMeshAdmin> for HostAgent
impl RemoteHandles<SpawnMeshAdmin> for HostAgent
Auto Trait Implementations§
impl !Freeze for SpawnMeshAdmin
impl RefUnwindSafe for SpawnMeshAdmin
impl Send for SpawnMeshAdmin
impl Sync for SpawnMeshAdmin
impl Unpin for SpawnMeshAdmin
impl UnwindSafe for SpawnMeshAdmin
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<A, M> Handler<IndexedErasedUnbound<M>> for A
impl<A, M> Handler<IndexedErasedUnbound<M>> for A
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered].