1 #pragma once
2 
3 #include <nlohmann/json.hpp>
4 
5 #include <map>
6 #include <string>
7 #include <vector>
8 
9 /** @brief Array of services to monitor */
10 using ServiceMonitorData = std::vector<std::string>;
11 
12 using json = nlohmann::json;
13 
14 extern bool gVerbose;
15 
16 /** @brief Parse input json file(s) for services to monitor
17  *
18  * @note This function will throw exceptions for an invalid json file
19  * @note See phosphor-service-monitor-default.json for example of json file
20  *       format
21  *
22  * @param[in] filePaths - The file(s) to parse
23  *
24  * @return  Service(s) to monitor for errors
25  */
26 ServiceMonitorData parseServiceFiles(const std::vector<std::string>& filePaths);
27