{"id":18368665,"url":"https://github.com/openbmc/phosphor-sel-logger","last_synced_at":"2025-04-06T17:31:47.932Z","repository":{"id":54452535,"uuid":"153647391","full_name":"openbmc/phosphor-sel-logger","owner":"openbmc","description":null,"archived":false,"fork":false,"pushed_at":"2025-03-20T02:13:28.000Z","size":483,"stargazers_count":2,"open_issues_count":2,"forks_count":9,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-03-20T03:24:58.657Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/openbmc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-10-18T15:34:43.000Z","updated_at":"2025-03-20T02:13:32.000Z","dependencies_parsed_at":"2024-05-13T17:44:59.422Z","dependency_job_id":"0fe24626-9323-4090-a1b9-96969605caa5","html_url":"https://github.com/openbmc/phosphor-sel-logger","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openbmc%2Fphosphor-sel-logger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openbmc%2Fphosphor-sel-logger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openbmc%2Fphosphor-sel-logger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/openbmc%2Fphosphor-sel-logger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/openbmc","download_url":"https://codeload.github.com/openbmc/phosphor-sel-logger/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247522393,"owners_count":20952540,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-05T23:26:55.973Z","updated_at":"2025-04-06T17:31:47.568Z","avatar_url":"https://github.com/openbmc.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# phosphor-sel-logger\n\n## Overview\n\nThe SEL Logger daemon handles all requests to add new IPMI SEL records to the\njournal. SEL records stored in the journal are identified by the standard\n**MESSAGE_ID** metadata. Other metadata fields are used to store event-specific\ninformation for each record.\n\n## Metadata\n\nSEL records are identified in the journal using the **MESSAGE_ID** field.\n\nThe **MESSAGE_ID** for SEL records is **\"b370836ccf2f4850ac5bee185b77893a\"**.\n\nThe additional metadata fields for a SEL record are\n\n    IPMI_SEL_RECORD_ID = Two byte unique SEL Record ID\n    IPMI_SEL_RECORD_TYPE = The type of SEL entry (system or OEM)\n                           which determines the definition of the\n                           remaining bytes\n    IPMI_SEL_GENERATOR_ID = The IPMI Generator ID (usually the\n                            IPMB Slave Address) of the requester\n    IPMI_SEL_SENSOR_PATH = D-Bus path of the sensor in the event\n    IPMI_SEL_EVENT_DIR = Direction of the event (assert or deassert)\n    IPMI_SEL_DATA = Raw binary data included in the SEL record\n\n## Interface\n\nThe SEL Logger daemon exposes an interface for manually adding System and OEM\ntype SEL events, and provides the capability to monitor for types of events and\nlog them automatically.\n\nThe interface for System type events requires\n\n- A text message to include in the journal entry\n- The sensor path\n- Up to three bytes of SEL data\n- The direction of the event (assertion or deassertion)\n- The generator ID of the requester\n\nThe interface for OEM type events requires\n\n- A text message to include in the journal entry\n- Up to thirteen bytes of SEL data (depending on the record type)\n- The record type\n\nThe **MESSAGE_ID** and **IPMI_SEL_RECORD_ID** metadata fields are added by the\ndaemon.\n\n## Event Monitoring\n\nThe SEL Logger daemon can be configured to watch for specific types of events\nand automatically log SEL records for them.\n\nAs an example, the SEL Logger has a \"threshold event monitor\" which implements a\nD-Bus match for any \"PropertiesChanged\" event on the\n`xyz.openbmc_project.Sensor.Threshold` interface. The handler then checks for\nany new threshold events and logs SEL records accordingly.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenbmc%2Fphosphor-sel-logger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fopenbmc%2Fphosphor-sel-logger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fopenbmc%2Fphosphor-sel-logger/lists"}