The Server Performance health check report shows health check results spanning a range of time. It allows the user to specify a server name and a number of days to show results for.
By limiting results to health checks with the archive flag, only health checks that triggered a workflow, as well as the first check of each hour are included.
Required Customization
After uploading the report you must replace the values in the Server dropdown list with the netBIOS names of servers running Panel Service and for which a Server Performance health check has been configured.
If you have modified the name(s) of the server performance health check(s) you may need to update the Name Contains "Server Performance" clause of the data query.
Optional Customization
If you have added, removed, or renamed probes to the server performance health check(s) it will be necessary to make matching alterations to the the report fields.
To allow user friendly formatting and styling of results the report must re-calculate the pass/fail condition of each of the resultant probes. If you have customized the pass/fail thresholds in the health check settings the same adjustments should be made to the report Style strips.
JSON Definition
Copy the following JSON into a text file, and upload to report settings. Requires 3.3.10 or later.
{ "Data": [ { "$type": "SoftwareIDM.ReportingModule.Models.Report, SoftwareIDM.ReportingModule", "Id": "9c946e04-1c2c-4d97-b5d5-d22e83004090", "Name": "Server Performance Health Check", "UserId": null, "UserProfile": false, "Tags": null, "Roles": null, "CacheExpiration": "01:00:00", "Description": "Health check for showing server performance results over time", "Parameters": [ { "$type": "SoftwareIDM.ReportingModule.Models.TextReportParameter, SoftwareIDM.ReportingModule", "Name": "Days", "Description": "Number of days of health checks to display", "Required": true, "Validation": "Double", "DefaultValue": "30" }, { "$type": "SoftwareIDM.ReportingModule.Models.SelectReportParameter, SoftwareIDM.ReportingModule", "ValueChoices": [ "MIM01" ], "Name": "Server", "Description": "Which server to display results for", "Required": true, "Validation": "", "DefaultValue": "" } ], "DataSets": [ { "$type": "SoftwareIDM.ReportingModule.Models.QueryData, SoftwareIDM.ReportingModule", "Aliases": null, "MapRule": "", "Name": "Health", "Type": "SoftwareIDM.PanelModel.Models.HealthCheck, SoftwareIDM.PanelModel", "Clauses": [ { "$type": "SoftwareIDM.PanelModel.Models.FilterClause, SoftwareIDM.PanelModel", "Field": "Archive", "Operation": "Eq", "Value": "true" }, { "$type": "SoftwareIDM.PanelModel.Models.FilterClause, SoftwareIDM.PanelModel", "Field": "Server", "Operation": "Eq", "Value": "Memo(\"Server\")" }, { "$type": "SoftwareIDM.PanelModel.Models.FilterClause, SoftwareIDM.PanelModel", "Field": "TimeStamp", "Operation": "Gte", "Value": "AddTime(Now(), \"-\" + Days(Memo(\"Days\")))" }, { "$type": "SoftwareIDM.PanelModel.Models.FilterClause, SoftwareIDM.PanelModel", "Field": "Name", "Operation": "Contains", "Value": "\"Server Performance\"" } ], "SubQueries": [] } ], "ReportSets": [], "Relations": [], "FieldProjections": [ { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "TimeStamp", "RelationName": "", "RelationSide": null, "ValueRule": "TimeTraveler(Id, null, context) + \"|\" + DateTimeFormat(TimeStamp, \"yyyy-MM-dd hh:mm:ss\")" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Passed", "RelationName": "", "RelationSide": null, "ValueRule": "If(Passed, \"Yes\", \"No\")" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Memory Available", "RelationName": "", "RelationSide": null, "ValueRule": "$\"{Data.Memory Available.Value} MB\"" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Memory Paging", "RelationName": "", "RelationSide": null, "ValueRule": "$\"{CoerceLong(Data.Memory Paging.Value)}/s\"" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Page File", "RelationName": "", "RelationSide": null, "ValueRule": "$\"{CoerceLong(Data.Page File.Value)}%\"" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Processor", "RelationName": "", "RelationSide": null, "ValueRule": "$\"{CoerceLong(Data.Processor.Value)}%\"" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Network Queue", "RelationName": "", "RelationSide": null, "ValueRule": "Join(\", \", Map(Data.Network Queue.Instances, Value))" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Disk Queue", "RelationName": "", "RelationSide": null, "ValueRule": "Data.Disk Queue.Value" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Disk Avg Read", "RelationName": "", "RelationSide": null, "ValueRule": "$\"{FormatDouble(MultiplyDouble(Data.Disk Avg Read.Value, 1000), \"##0.##\")}ms\"" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Disk Avg Write", "RelationName": "", "RelationSide": null, "ValueRule": "$\"{FormatDouble(MultiplyDouble(Data.Disk Avg Write.Value, 1000), \"##0.##\")}ms\"" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Disk Idle", "RelationName": "", "RelationSide": null, "ValueRule": "$\"{CoerceLong(Data.Processor.Value)}%\"" }, { "$type": "SoftwareIDM.ReportingModule.Models.Projection, SoftwareIDM.ReportingModule", "Name": "Panel Check", "RelationName": "", "RelationSide": null, "ValueRule": "Data.Panel Check.Passed" } ], "Transformations": [], "Styles": [ { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Passed" ], "ConditionRule": "Passed == \"No\"", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Passed" ], "ConditionRule": "Passed == \"Yes\"", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "g" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Memory Available" ], "ConditionRule": "CoerceLong(ReplaceString(Data.Memory Available, \" MB\", \"\")) < 500", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Memory Paging" ], "ConditionRule": "CoerceLong(ReplaceString(Data.Memory Paging, \"/s\", \"\")) > 1000", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Page File" ], "ConditionRule": "CoerceLong(ReplaceString(Data.Page File, \"%\", \"\")) >= 33", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Processor" ], "ConditionRule": "CoerceLong(ReplaceString(Data.Processor, \"%\", \"\")) >= 90", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Network Queue" ], "ConditionRule": "MapOr(Split(Data.Network Queue, \",\"), CoerceLong(Trim(context)) > 2)", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Disk Queue" ], "ConditionRule": "Data.Disk Queue > 2", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Disk Avg Read" ], "ConditionRule": "CoerceLong(ReplaceString(Data.Disk Avg Read, \"ms\", \"\")) > 20)", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Disk Avg Write" ], "ConditionRule": "CoerceLong(ReplaceString(Data.Disk Avg Write, \"ms\", \"\")) > 20)", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Disk Idle" ], "ConditionRule": "CoerceLong(ReplaceString(Data.Disk Idle, \"%\", \"\")) >= 50", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" }, { "$type": "SoftwareIDM.ReportingModule.Models.RowStyle, SoftwareIDM.ReportingModule", "Fields": [ "Panel Check" ], "ConditionRule": "Not(Data.Panel Check)", "Bold": false, "Italic": false, "Hide": false, "TextColor": "", "CellColor": "r" } ], "Sort": { "Field": "TimeStamp", "Direction": "Descending" } } ], "Count": 1 }
Comments
0 comments
Please sign in to leave a comment.