18eceb8b7SJagpal Singh Gill# bmc_health_config.json 28eceb8b7SJagpal Singh Gill 38eceb8b7SJagpal Singh GillThis file outlines the format for the supplemental health metric config that can 48eceb8b7SJagpal Singh Gillbe supplied by the platform to override the default in-code config from 58eceb8b7SJagpal Singh Gillhealth_metric_config.cpp. 68eceb8b7SJagpal Singh Gill 78eceb8b7SJagpal Singh GillThe json config may have following metric types - 88eceb8b7SJagpal Singh Gill 98eceb8b7SJagpal Singh Gill- `CPU` 108eceb8b7SJagpal Singh Gill - This indicates the total CPU utilization. 118eceb8b7SJagpal Singh Gill- `CPU_User` 128eceb8b7SJagpal Singh Gill - This indicates the user level CPU utilization. 138eceb8b7SJagpal Singh Gill- `CPU_Kernel` 148eceb8b7SJagpal Singh Gill - This indicates the kernel level CPU utilization. 158eceb8b7SJagpal Singh Gill- `Memory` 168eceb8b7SJagpal Singh Gill - This indicates the total memory for the system, which is a constant metric 178eceb8b7SJagpal Singh Gill and doesn't change. 188eceb8b7SJagpal Singh Gill- `Memory_Available` 198eceb8b7SJagpal Singh Gill - This indicates the memory which is not used, in addition to buffered & 208eceb8b7SJagpal Singh Gill cached memory that can be made available by OS depending on need. 218eceb8b7SJagpal Singh Gill- `Memory_Free` 228eceb8b7SJagpal Singh Gill - This indicates the amount of un-used memory. 238eceb8b7SJagpal Singh Gill- `Memory_Shared` 248eceb8b7SJagpal Singh Gill - This indicates the amount of memory being shared between processes within 258eceb8b7SJagpal Singh Gill the system. 268eceb8b7SJagpal Singh Gill- `Memory_Buffered_And_Cached` 278eceb8b7SJagpal Singh Gill - This indicates the amount of memory being used for caching and temporary 288eceb8b7SJagpal Singh Gill buffers. 298eceb8b7SJagpal Singh Gill- `Storage_RW` 308eceb8b7SJagpal Singh Gill - This indicates the amount of available storage space 318eceb8b7SJagpal Singh Gill- `Storage_`\<xxx> 32*3901884eSManojkiran Eda - This indicates the amount of available space for type depicted by `<xxx>` 33*3901884eSManojkiran Eda for the location backed by path parameter. 348eceb8b7SJagpal Singh Gill 358eceb8b7SJagpal Singh GillThe metric types may have the following attributes: 368eceb8b7SJagpal Singh Gill 378eceb8b7SJagpal Singh Gill- `Window_size` 388eceb8b7SJagpal Singh Gill - This indicates the number of samples being used for threshold value 398eceb8b7SJagpal Singh Gill computations. 408eceb8b7SJagpal Singh Gill- `Path` 418eceb8b7SJagpal Singh Gill - The path attribute is applicable to storage metrics and indicates the 428eceb8b7SJagpal Singh Gill directory path for it. 43174e5bc9SJagpal Singh Gill- `Hysteresis` 44174e5bc9SJagpal Singh Gill - This indicates the percentage beyond which the metric value change (since 45174e5bc9SJagpal Singh Gill last notified) should be reported as a D-Bus signal. 468eceb8b7SJagpal Singh Gill- `Threshold` 478eceb8b7SJagpal Singh Gill - The following threshold levels (with bounds) are supported. 488eceb8b7SJagpal Singh Gill - `HardShutdown_Lower` 498eceb8b7SJagpal Singh Gill - `HardShutdown_Upper` 508eceb8b7SJagpal Singh Gill - `SoftShutdown_Lower` 518eceb8b7SJagpal Singh Gill - `SoftShutdown_Upper` 528eceb8b7SJagpal Singh Gill - `PerformanceLoss_Lower` 538eceb8b7SJagpal Singh Gill - `PerformanceLoss_Upper` 548eceb8b7SJagpal Singh Gill - `Critical_Lower` 558eceb8b7SJagpal Singh Gill - `Critical_Upper` 568eceb8b7SJagpal Singh Gill - `Warning_Lower` 578eceb8b7SJagpal Singh Gill - `Warning_Upper` 588eceb8b7SJagpal Singh Gill - Threshold may have following attributes 598eceb8b7SJagpal Singh Gill - `Value` 608eceb8b7SJagpal Singh Gill - This indicates the percentage value at which specific threshold gets 618eceb8b7SJagpal Singh Gill asserted. 628eceb8b7SJagpal Singh Gill - For lower bound, the threshold gets asserted if metric value falls 638eceb8b7SJagpal Singh Gill below the specified threshold percentage value. 648eceb8b7SJagpal Singh Gill - For upper bound, the threshold gets asserted if metric value goes 658eceb8b7SJagpal Singh Gill beyond the specified threshold percentage value. 668eceb8b7SJagpal Singh Gill - `Log` -A boolean value of true/false depicts if a critical system message 678eceb8b7SJagpal Singh Gill shall be logged when threshold gets asserted. 688eceb8b7SJagpal Singh Gill - `Target` 698eceb8b7SJagpal Singh Gill - This indicates the systemd target which shall be run when the specific 708eceb8b7SJagpal Singh Gill threshold gets asserted. 718eceb8b7SJagpal Singh Gill 728eceb8b7SJagpal Singh GillExample: 738eceb8b7SJagpal Singh Gill 748eceb8b7SJagpal Singh Gill```json 758eceb8b7SJagpal Singh Gill "CPU": { 768eceb8b7SJagpal Singh Gill "Window_size": 120, 77174e5bc9SJagpal Singh Gill "Hysteresis": 1.0, 788eceb8b7SJagpal Singh Gill "Threshold": { 798eceb8b7SJagpal Singh Gill "Critical_Upper": { 808eceb8b7SJagpal Singh Gill "Value": 90.0, 818eceb8b7SJagpal Singh Gill "Log": true, 828eceb8b7SJagpal Singh Gill "Target": "" 838eceb8b7SJagpal Singh Gill }, 848eceb8b7SJagpal Singh Gill "Warning_Upper": { 858eceb8b7SJagpal Singh Gill "Value": 80.0, 868eceb8b7SJagpal Singh Gill "Log": false, 878eceb8b7SJagpal Singh Gill "Target": "" 888eceb8b7SJagpal Singh Gill } 898eceb8b7SJagpal Singh Gill } 908eceb8b7SJagpal Singh Gill } 918eceb8b7SJagpal Singh Gill``` 92