A draft Redfish logging proposal

Brad Bishop bradleyb at fuzziesquirrel.com
Tue Apr 30 11:01:55 AEST 2019


Hi Ed, OpenBMC community

Thanks for the great discussion about OEM in Redfish on OpenBMC on the
community call today.

I decided to start a new thread rather than add on to Andrews
(https://lists.ozlabs.org/pipermail/openbmc/2019-April/015916.html) because
that thread is at 10000ft and for this one I'd like to come down to 50ft.

Below you will find some mock-ups that have been floating around over here that
show where we are headed in terms of logging support on our IBM systems.

The hope is we can keep the conversation from the community call today going
but with something concrete (and written down) to talk over.  So please have a
look and offer impressions, poke holes, etc.

The JSON below looks great in Mutt but just incase someones MUAs trashes the
code formatting I've put these in a paste too: https://pastebin.com/fWnqWH77

The first object is a problem log entry, the second an audit log entry and the
third a maintenance log entry.

Thanks!
-brad

{
    "@odata.context": "/redfish/v1/$metadata#LogEntry.LogEntry",
    "@odata.id":        "/redfish/v1/Managers/BMC/LogServices/Problems/Entries/1/",
    "@odata.type": "#LogEntry.v1_0_0.LogEntry",
    "Created": "2018-06-15T14:07:47Z",
    "EntryType": "Event",
    "Id": "1", // Log Position
    "Message": "Description of the problem",
    "MessageID": "SRC or LC CommonEventID",
    "MessageArgs": ["Arg1", "Arg2"...."ArgN"],
    "Name": "OpenBMC Event Log",
    "Links": {
        "OriginOfCondition": {
            //This is the URI of the resource that caused the log entry.
            //Think FRU List
            "@odata.id": "Link to inventory item."
        }
        "Oem": {
            "@odata.id": "LinkToPEL" //provides a link to the PEL location
        }
    },
    "Severity": "Critical, Warning, or Info",
    "Oem": 
    {
        "IBM": 
        {
            "@odata.context": "/redfish/v1/$metadata#IBMLogEntry.IBMLogEntry",
            "@odata.type": "#HpeLogEntry.v2_1_0.IBMLogEntry",
            "Serviceable": true or false,
            "Resolved": true or false,
            "UpdatedTime" : <timestamp>,
            "EventType": < 1 of IBM EventTypes>,
            "AffectedSubsystem": <Take from PEL or PolicyTable>,

            "CallHome": true or false,
            "Notified": [
                //Maybe use this instead?
                //https://www.dmtf.org/sites/default/files/Redfish%20School%20-%20Events.pdf
                //page 5
                <UUID>: true or false
            ], 
            "Version": 1.0
        }
    },
}

{
    "@odata.context": "/redfish/v1/$metadata#LogEntry.LogEntry",
    "@odata.id": "/redfish/v1/Managers/BMC/LogServices/Audit/Entries/1/",
    "@odata.type": "#LogEntry.v1_0_0.LogEntry",
    "Created": "2018-06-15T14:07:47Z",
    "EntryType": "Event",
    "Id": "1", //log position
    "Message": "Description of the problem", //ex. “User <ID> ADMIN logged in from 192.168.1.5”,
    "MessageID": "SRC or LC Common Event ID",
    "MessageArgs": ["Arg1", "Arg2"...."ArgN"],
    "Name": "OpenBMC Audit Log",
    "Severity": "Warning, or Info",
    "Oem": 
    {
        "IBM": 
        {
            "EventNumber": "<logPosition>",
            "Serviceable": false,
            "Resolved": true, //Do we really need this?
            "UpdatedTime": "", //<timestamp>,
            "EventType": "", //< 1 of Administrative, Security>,
            "AffectedSubsystem": "Systems Management - Core / Virtual Appliance",
            "CallHome": false,
            "Notified": [
                "<UUID>": true or false
            ]
        }
    },
    "OemRecordFormat": "IBM-OpenLogging",
}

{
    "@odata.context": "/redfish/v1/$metadata#LogEntry.LogEntry",
    "@odata.id": "/redfish/v1/Managers/BMC/LogServices/Maintenance/Entries/1/",
    "@odata.type": "#LogEntry.v1_0_0.LogEntry",
    "Created": "2018-06-15T14:07:47Z",
    "EntryType": "OEM",
    "Id": "1", //log position
    "Message": "Description of the problem", //ex CPU changed from SN: 12345 to SN: 12445
    "MessageID": "SRC or LC Common Event ID",
    "MessageArgs": ["Arg1", "Arg2"...."ArgN"],
    "Name": "OpenBMC Log",
    "Severity": "Info",
    "Links": {
        "OriginOfCondition": {
            //"This is the URI of the resource that caused the log entry. Think FRU List"
            "@odata.id": "Link to inventory item."
        }
        "Oem": {
            "@odata.id": "LinkToPEL" //provides a link to the PEL location
        }
    },
    "Oem": 
    {
        "IBM": 
        {
            "Serviceable": false,
            "Resolved": true,
            "UpdatedTime" : "<timestamp>",
            "EventType": "< 1 of EventTypes>",
            "AffectedSubsystem": "", //<Take from PEL or PolicyTable>
            "CallHome": false,
            "Notified": [
                "<UUID>": true or false
            ]
        }
    },
    "OemRecordFormat": "IBM-OpenLogging",
    "Version": 1.0
}


More information about the openbmc mailing list