xref: /openbmc/bmcweb/features/redfish/include/event_log.hpp (revision d78572018fc2022091ff8b8eb5a7fef2172ba3d6)
1 #pragma once
2 
3 #include <nlohmann/json.hpp>
4 
5 #include <span>
6 #include <string>
7 #include <string_view>
8 #include <vector>
9 
10 namespace redfish
11 {
12 
13 namespace event_log
14 {
15 
16 bool getUniqueEntryID(const std::string& logEntry, std::string& entryID);
17 
18 int getEventLogParams(const std::string& logEntry, std::string& timestamp,
19                       std::string& messageID,
20                       std::vector<std::string>& messageArgs);
21 
22 int formatEventLogEntry(
23     const std::string& logEntryID, const std::string& messageID,
24     std::span<std::string_view> messageArgs, std::string timestamp,
25     const std::string& customText, nlohmann::json::object_t& logEntryJson);
26 
27 } // namespace event_log
28 
29 } // namespace redfish
30