| description: > |
| Implement to capture various types of dumps from the host or BMC. This |
| interface is for user to request a particular type of dump. |
| |
| Any OpenBMC implementation should provide one implementation of |
| xyz.openbmc_project.Dump.Create per dump type on |
| /xyz/openbmc_project/dump/<dump type>. On multi-host or on multi-BMC systems |
| the instance number can be added to the path to differentiate, for example |
| /xyz/openbmc_project/dump/<dump type><instance-id>. |
| |
| methods: |
| - name: CreateDump |
| description: > |
| Method to create a manual Dump. |
| parameters: |
| - name: AdditionalData |
| type: dict[string, variant[string,uint64]] |
| description: > |
| The additional data, if any, for initiating the dump. The key in |
| this case should be an implementation specific enum defined for |
| the specific type of dump either in xyz or in a domain. The |
| values can be either a string or a 64 bit number. The |
| enum-format string is required to come from a parallel class |
| with this specific Enum name. All of the Enum strings should be |
| in the format 'domain.Dump.Create.CreateParameters.ParamName'. |
| e.g.: |
| { |
| "key1": "value1", |
| "key2": "value2" |
| } |
| ends up in AdditionaData like: |
| ["KEY1=value1", "KEY2=value2"] |
| returns: |
| - name: Path |
| type: object_path |
| description: > |
| The object path of the object that implements |
| xyz.openbmc_project.Common.Progress to track the progress of the |
| dump |
| errors: |
| - xyz.openbmc_project.Common.File.Error.Open |
| - xyz.openbmc_project.Common.File.Error.Write |
| - xyz.openbmc_project.Dump.Create.Error.Disabled |
| - xyz.openbmc_project.Dump.Create.Error.QuotaExceeded |
| - xyz.openbmc_project.Common.Error.NotAllowed |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| - xyz.openbmc_project.Common.Error.Unavailable |
| |
| enumerations: |
| - name: CreateParameters |
| description: > |
| Additional parameters for creating the dump. |
| values: |
| - name: "OriginatorId" |
| description: > |
| Unique Id of the originator of the respective operation. This |
| property is defined in xyz.openbmc_project. Common.OriginatedBy |
| interface. |
| - name: "OriginatorType" |
| description: > |
| Type of the originator that initiated the respective operation. |
| This property is defined in xyz.openbmc_project. |
| Common.OriginatedBy interface. |
| - name: "DumpType" |
| description: > |
| Type of the BMC dump to be collected |
| - name: "FilePath" |
| description: > |
| The path to a file to create the dump, for example a systemd |
| core-dump. |
| - name: "ErrorType" |
| description: > |
| Specifies the type of the error that triggered the BMC dump |
| collection. This is a string identifier for the error type. The |
| type of the error dictates the kind of debug data collected |
| during the dump process. |
| - name: "EventId" |
| description: > |
| The identifier for an event that triggers the BMC dump. When a |
| BMC dump is initiated as a response to a specific system event, |
| this parameter can be supplied with the unique ID associated |
| with that event. By linking the dump to an event ID, the system |
| can collate additional, relevant diagnostic data or add this |
| into the dump to aid in providing a clearer context. |
| |
| - name: DumpType |
| description: > |
| Possible types of BMC Dump. |
| values: |
| - name: "ApplicationCored" |
| description: > |
| Dump triggered due to application core. |
| - name: "UserRequested" |
| description: > |
| Dump triggered by the user. |
| - name: "ErrorLog" |
| description: > |
| This type of dump is triggered in response to a specific error |
| commit. The error type needs to be specified in the "ErrorType" |
| field. If no parameters are provided, a default dump will be |
| generated. |
| - name: "Ramoops" |
| description: > |
| Dump triggered due to Ramoops type error commit. |
| |
| service_names: |
| - default: xyz.openbmc_project.Dump.Manager |
| |
| paths: |
| - namespace: /xyz/openbmc_project/dump |
| segments: |
| - name: BMC |
| value: bmc |