system

Serializable system, health, and metrics API request and response contracts.

class bedrock_server_manager.api.models.system.ProcessInfo(*, pid: int, cpu_percent: float, memory_mb: float, uptime: str)
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.GetServerRunningStatusRequest(*, server_name: Annotated[str, Strict(strict=True), MinLen(min_length=1), _PydanticGeneralMetadata(pattern='^[a-zA-Z0-9_-]+$')])
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.GetServerRunningStatusResponse(*, epoch: str | None = None, revision: Annotated[int | None, Ge(ge=1), Le(le=9007199254740991)] = None, status: Literal['success'] = 'success', message: str | None = None, is_running: bool)
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.GetBedrockProcessInfoRequest(*, server_name: Annotated[str, Strict(strict=True), MinLen(min_length=1), _PydanticGeneralMetadata(pattern='^[a-zA-Z0-9_-]+$')])
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.GetBedrockProcessInfoResponse(*, epoch: str | None = None, revision: Annotated[int | None, Ge(ge=1), Le(le=9007199254740991)] = None, status: Literal['success'] = 'success', message: str | None = None, process_info: ProcessInfo | None)
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.GetApplicationHealthRequest
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.HealthCheck(*, status: Literal['success'] = 'success', message: str, healthy: bool)
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.GetApplicationHealthResponse(*, status: Literal['success'] = 'success', message: str | None = None, pid: Annotated[int, Gt(gt=0)], instance_id: str | None = None, version: str, ready: bool, lifecycle: Annotated[LifecyclePhase, Strict(strict=False)], health: Literal['healthy', 'degraded'], checks: dict[str, HealthCheck], checked_at: Annotated[float, Gt(gt=0)])
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.MetricsSample(*, epoch: str | None = None, revision: ~typing.Annotated[int | None, ~annotated_types.Ge(ge=1), ~annotated_types.Le(le=9007199254740991)] = None, timestamp: ~typing.Annotated[float, ~annotated_types.Gt(gt=0)], app_cpu_percent: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, app_ram_mb: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, thread_count: ~typing.Annotated[int | None, ~annotated_types.Ge(ge=0)] = None, asyncio_task_count: ~typing.Annotated[int, ~annotated_types.Ge(ge=0)], background_task_count: ~typing.Annotated[int, ~annotated_types.Ge(ge=0)], loop_lag_ms: ~typing.Annotated[float, ~annotated_types.Ge(ge=0)], uptime_seconds: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, sys_cpu_percent: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, sys_ram_mb: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, sys_ram_total_mb: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, sys_ram_percent: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, net_tx_kib_s: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, net_rx_kib_s: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, disk_read_kib_s: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, disk_write_kib_s: ~typing.Annotated[float | None, ~annotated_types.Ge(ge=0)] = None, servers: list[~bedrock_server_manager.services.metrics_models.ServerMetrics] = <factory>)
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.ServerMetrics(*, server_name: str, pid: Annotated[int | None, Gt(gt=0)] = None, cpu_percent: Annotated[float | None, Ge(ge=0)] = None, memory_mb: Annotated[float | None, Ge(ge=0)] = None)
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.GetApplicationMetricsRequest
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].

class bedrock_server_manager.api.models.system.GetApplicationMetricsResponse(*, epoch: str | None = None, revision: Annotated[int | None, Ge(ge=1), Le(le=9007199254740991)] = None, status: Literal['success'] = 'success', message: str | None = None, latest: MetricsSample, history: list[MetricsSample], interval_seconds: Annotated[float, Gt(gt=0)], history_limit: Annotated[int, Gt(gt=0), Le(le=180)])
model_config = {'allow_inf_nan': False, 'extra': 'forbid', 'frozen': True, 'hide_input_in_errors': True, 'revalidate_instances': 'always', 'strict': True, 'validate_default': True}

Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].