Skip to content

RPC Debug Command Design Document

ShradhaGupta31 edited this page Feb 3, 2026 · 5 revisions

RPC Debug Command

Status

Proposed

Context

Currently, RPC-Go lacks consolidated diagnostic and troubleshooting capabilities for Intel AMT. Users and support teams need the ability to:

  1. Troubleshoot CIRA Connectivity (Issue #1003): When AMT is connected in CIRA mode, it maintains data about session open/close times, closure reasons, and connectivity statistics. This data can be retrieved through PTHI command CFG_Getcira but is not currently exposed via rpc-go.

  2. Diagnose CSME/ME Firmware Errors (Issue #1004): CSME has a small partition in the SPI flash where it can save critical errors that occur during its life cycle. This FLOG data can be retrieved using HECI command HothamCtlGetFlog via HOTHAM protocol, but there is no mechanism to retrieve it via rpc-go for Intel support team analysis.

  3. Access AMT WSMAN Classes Without Password (Issue #1005): OS administrators need to access certain AMT WSMAN classes without requiring the AMT password for debugging purposes.

Decision

We will introduce a new debug command to rpc-go that consolidates all diagnostic and troubleshooting capabilities. The command structure will be:

rpc
└── debug
    ├── cira
    ├── csme
    └── wsman
        ├── get
        └── list

CLI Structure

rpc debug <subcommand> [options]

Subcommands

1. Help

rpc debug --help

List of available debug sub-commands:
  cira       - CIRA debug information (connection logs)
  csme       - CSME debug information (Flash Log / firmware error records)
  wsman      - AMT WSMAN debug class data retrieval

2. CIRA

Retrieves CIRA connection logs.

rpc debug cira [options]
Flag Description Default
--output, -o Output file path stdout
--format, -f Output format (json, text) text

Examples:

# Retrieve CIRA connection logs and output as text to console
rpc debug cira

# Retrieve CIRA connection logs and save as text to a specified file
rpc debug cira --output /tmp/cira.txt

# Retrieve CIRA connection logs and save as JSON to a specified file
rpc debug cira --format json --output /tmp/cira.json

3. CSME

Retrieves CSME Flash Log (FLOG) for firmware debugging.

rpc debug csme [options]
Flag Description Default
--output, -o Output file path for binary data csme_flog.bin

Examples:

# Retrieve CSME Flash Log and save to default file (csme_flog.bin)
rpc debug csme

# Retrieve CSME Flash Log and save to specified binary file
rpc debug csme --output /tmp/csme_crashdump.bin

4. WSMAN

Retrieves AMT WSMAN class data for debugging purposes.

List Supported Classes:

rpc debug wsman list

Retrieve WSMAN Class Data:

rpc debug wsman get [options]
Flag Description Default
--class, -c Specific WSMAN class to retrieve
--output, -o Output file path stdout
--format, -f Output format (json, xml) json
--all, -a Retrieve data for all available WSMAN classes

Examples:

# List all supported WSMAN classes (does not fetch data)
rpc debug wsman list

# Fetch data for all WSMAN classes and output as JSON to console
rpc debug wsman get --all

# Fetch data for a single WSMAN class and output as JSON to console
rpc debug wsman get --class AMT_GeneralSettings

# Fetch data for a single WSMAN class and save to a specified file
rpc debug wsman get --class AMT_AuditLog --output audit.json

# Fetch data for all supported WSMAN classes and save as XML to a file
rpc debug wsman get --format xml --output all_classes.xml

# Fetch data for multiple WSMAN classes and output to console
rpc debug wsman get -c AMT_GeneralSettings -c AMT_EthernetPortSettings

Supported WSMAN Classes

Class Name Description
AMT_8021XProfile 802.1X authentication profiles
AMT_AssetTable Hardware asset inventory
AMT_AssetTableService Asset table service
AMT_MessageLog System message log
AMT_Hdr8021Filter 802.1X header filters
AMT_AuditLog Security audit log
AMT_BootCapabilities Boot capability information
AMT_BootSettingData Boot configuration settings
AMT_CryptographicCapabilities Crypto capabilities
AMT_EventLogEntry Event log entries
AMT_EnvironmentDetectionSettingData Environment detection config
AMT_EthernetPortSettings Ethernet port configuration
AMT_GeneralSettings General AMT settings
AMT_ManagementPresenceRemoteSAP MPS remote SAP
AMT_RedirectionService Redirection service status
AMT_RemoteAccessCapabilities Remote access capabilities
AMT_RemoteAccessPolicyRule Remote access policy rules
AMT_SetupAndConfigurationService Setup and config service
AMT_SystemPowerScheme Power scheme configuration
AMT_WiFiPortConfigurationService WiFi port config service
AMT_UserInitiatedConnectionService User-initiated connection
AMT_RemoteAccessPolicyAppliesToMPS MPS policy mappings
CIM_BIOSFeature BIOS feature information
CIM_EthernetPort Ethernet port information
CIM_KVMRedirectionSAP KVM redirection SAP
CIM_PowerManagementCapabilities Power management capabilities
CIM_RedirectionService Redirection service
CIM_SoftwareIdentity Software version info
CIM_WiFiEndpoint WiFi endpoint info
CIM_WiFiEndpointSettings WiFi endpoint settings
IPS_OptInService Opt-in service status

References

Clone this wiki locally