Skip to content

Doctor

Collect comprehensive diagnostic information for troubleshooting and remote support. The DiagnosticInfo class gathers system, environment, and device information in a structured format compatible with all output formats.


Architecture

Diagnostic Information Structure

classDiagram
    class DiagnosticInfo {
        +library: LibraryInfo
        +python: PythonInfo
        +platform: PlatformInfo
        +device: DeviceInfo
        +collect(device) DiagnosticInfo
    }

    class LibraryInfo {
        +kazunoko_version: str
        +kazunoko_path: str
        +pydantic_version: str
        +pyserial_version: str
        +typer_version: str
        +loguru_version: str
        +collect() LibraryInfo
    }

    class PythonInfo {
        +python_version: str
        +python_executable: str
        +python_prefix: str
        +venv_type: str | None
        +collect() PythonInfo
    }

    class PlatformInfo {
        +os_system: str
        +os_release: str
        +os_version: str
        +architecture: str
        +python_implementation: str
        +collect() PlatformInfo
    }

    class DeviceInfo {
        +connected_port: str
        +firmware_version: str | None
        +mac_address: str | None
        +device_status: str | None
        +uptime: int | None
        +collect(device) DeviceInfo
    }

    DiagnosticInfo --> LibraryInfo
    DiagnosticInfo --> PythonInfo
    DiagnosticInfo --> PlatformInfo
    DiagnosticInfo --> DeviceInfo

DiagnosticInfo

::: kazunoko.doctor.DiagnosticInfo options: show_root_heading: true show_source: true


LibraryInfo

::: kazunoko.doctor.LibraryInfo options: show_root_heading: true show_source: true


PythonInfo

::: kazunoko.doctor.PythonInfo options: show_root_heading: true show_source: true


PlatformInfo

::: kazunoko.doctor.PlatformInfo options: show_root_heading: true show_source: true


DeviceInfo

::: kazunoko.doctor.DeviceInfo options: show_root_heading: true show_source: true