config/director/Invoke-IcingaCheckService.json

{"DataList":{"PowerShell ExecutionPolicies":{"list_name":"PowerShell ExecutionPolicies","originalId":"2","entries":[{"allowed_roles":null,"entry_value":"AllSigned","entry_name":"AllSigned","format":"string"},{"allowed_roles":null,"entry_value":"Bypass","entry_name":"Bypass","format":"string"},{"allowed_roles":null,"entry_value":"Default","entry_name":"Default","format":"string"},{"allowed_roles":null,"entry_value":"RemoteSigned","entry_name":"RemoteSigned","format":"string"},{"allowed_roles":null,"entry_value":"Restricted","entry_name":"Restricted","format":"string"},{"allowed_roles":null,"entry_value":"Undefined","entry_name":"Undefined","format":"string"},{"allowed_roles":null,"entry_value":"Unrestricted","entry_name":"Unrestricted","format":"string"}],"owner":"stein"},"IcingaCheckService Verbosity":{"list_name":"IcingaCheckService Verbosity","originalId":"2","entries":[{"allowed_roles":null,"entry_value":"0","entry_name":"0","format":"string"},{"allowed_roles":null,"entry_value":"1","entry_name":"1","format":"string"},{"allowed_roles":null,"entry_value":"2","entry_name":"2","format":"string"},{"allowed_roles":null,"entry_value":"3","entry_name":"3","format":"string"}],"owner":"stein"},"IcingaCheckService Status":{"list_name":"IcingaCheckService Status","originalId":"2","entries":[{"allowed_roles":null,"entry_value":"Stopped","entry_name":"Stopped","format":"string"},{"allowed_roles":null,"entry_value":"StartPending","entry_name":"StartPending","format":"string"},{"allowed_roles":null,"entry_value":"StopPending","entry_name":"StopPending","format":"string"},{"allowed_roles":null,"entry_value":"Running","entry_name":"Running","format":"string"},{"allowed_roles":null,"entry_value":"ContinuePending","entry_name":"ContinuePending","format":"string"},{"allowed_roles":null,"entry_value":"PausePending","entry_name":"PausePending","format":"string"},{"allowed_roles":null,"entry_value":"Paused","entry_name":"Paused","format":"string"}],"owner":"stein"}},"Command":{"Invoke-IcingaCheckService":{"fields":[{"datafield_id":4,"is_required":"n","var_filter":null},{"datafield_id":5,"is_required":"n","var_filter":null},{"datafield_id":6,"is_required":"n","var_filter":null},{"datafield_id":7,"is_required":"n","var_filter":null},{"datafield_id":8,"is_required":"n","var_filter":null},{"datafield_id":9,"is_required":"n","var_filter":null}],"object_name":"Invoke-IcingaCheckService","arguments":{"-C":{"value":"try { Use-Icinga -Minimal; } catch { Write-Output \u0027The Icinga PowerShell Framework is either not installed on the system or not configured properly. Please check https://icinga.com/docs/windows for further details\u0027; Write-Output \u0027Error:\u0027 $$($$_.Exception.Message)Components:`r`n$$( Get-Module -ListAvailable \u0027icinga-powershell-*\u0027 )`r`n\u0027Module-Path:\u0027`r`n$$($$Env:PSModulePath); exit 3; }; Exit-IcingaExecutePlugin -Command \u0027Invoke-IcingaCheckService\u0027 ","order":"0"},"-Verbosity":{"value":"$IcingaCheckService_Int32_Verbosity$","order":"5"},"-ThresholdInterval":{"value":"$IcingaCheckService_String_ThresholdInterval$","order":"100"},"-Status":{"value":"$IcingaCheckService_String_Status$","order":"4"},"-NoPerfData":{"set_if":"$IcingaCheckService_Switchparameter_NoPerfData$","set_if_format":"string","order":"99"},"-Service":{"value":{"body":"var arr = macro(\"$IcingaCheckService_Array_Service$\");\r\n if (len(arr) == 0) {\r\n return \"@()\";\r\n }\r\n return arr.map(\r\n x =\u003e if (typeof(x) == String) {\r\n var argLen = len(x);\r\n if (argLen != 0 \u0026\u0026 x.substr(0,1) == \"\u0027\" \u0026\u0026 x.substr(argLen - 1, argLen) == \"\u0027\") {\r\n x;\r\n } else {\r\n \"\u0027\" + x + \"\u0027\";\r\n }\r\n } else {\r\n x;\r\n }\r\n ).join(\",\");","type":"Function"},"order":"2"},"-Exclude":{"value":{"body":"var arr = macro(\"$IcingaCheckService_Array_Exclude$\");\r\n if (len(arr) == 0) {\r\n return \"@()\";\r\n }\r\n return arr.map(\r\n x =\u003e if (typeof(x) == String) {\r\n var argLen = len(x);\r\n if (argLen != 0 \u0026\u0026 x.substr(0,1) == \"\u0027\" \u0026\u0026 x.substr(argLen - 1, argLen) == \"\u0027\") {\r\n x;\r\n } else {\r\n \"\u0027\" + x + \"\u0027\";\r\n }\r\n } else {\r\n x;\r\n }\r\n ).join(\",\");","type":"Function"},"order":"3"}},"imports":["PowerShell Base"],"object_type":"object","vars":{"IcingaCheckService_Switchparameter_NoPerfData":false}},"PowerShell Base":{"methods_execute":"PluginCheck","object_name":"PowerShell Base","vars":{"IcingaPowerShellBase_String_ExecutionPolicy":"ByPass"},"is_string":null,"command":"C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe","zone":null,"disabled":false,"fields":[{"datafield_id":2,"is_required":"n","var_filter":null}],"arguments":{"-ExecutionPolicy":{"value":"$IcingaPowerShellBase_String_ExecutionPolicy$","order":"-1"},"-NoProfile":{"set_if":true,"order":"-3"},"-NoLogo":{"set_if":true,"order":"-2"}},"imports":[],"object_type":"object","timeout":"180"}},"Datafield":{"7":{"settings":{"datalist":"IcingaCheckService Status","behavior":"strict","data_type":"string"},"description":"Status for the specified service or services to check against.","caption":"Status","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeDatalist","originalId":"7","varname":"IcingaCheckService_String_Status","format":null},"9":{"settings":{"visibility":"visible"},"description":"Disables the performance data output of this plugin","caption":"NoPerfData","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeBoolean","originalId":"9","varname":"IcingaCheckService_Switchparameter_NoPerfData","format":null},"2":{"settings":{"datalist":"PowerShell ExecutionPolicies","behavior":"strict","data_type":"string"},"description":"Defines with which Execution Policy the PowerShell is started","caption":"PowerShell Execution Policy","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeDatalist","originalId":"2","varname":"IcingaPowerShellBase_String_ExecutionPolicy","format":null},"4":{"settings":{"visibility":"visible"},"description":"Change the value your defined threshold checks against from the current value to a collected time threshold of the Icinga for Windows daemon, as described here: https://icinga.com/docs/icinga-for-windows/latest/doc/service/10-Register-Service-Checks/ An example for this argument would be 1m or 15m which will use the average of 1m or 15m for monitoring.","caption":"ThresholdInterval","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"4","varname":"IcingaCheckService_String_ThresholdInterval","format":null},"6":{"settings":{"visibility":"visible"},"description":"Allows to exclude services which might come in handy for checking services which are configured to start automatically\non Windows but are not running and weren\u0027t exited properly.","caption":"Exclude","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeArray","originalId":"6","varname":"IcingaCheckService_Array_Exclude","format":null},"5":{"settings":{"visibility":"visible"},"description":"Used to specify an array of services which should be checked against the status. Supports \u0027*\u0027 for\nwildcards.","caption":"Service","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeArray","originalId":"5","varname":"IcingaCheckService_Array_Service","format":null},"8":{"settings":{"datalist":"IcingaCheckService Verbosity","behavior":"strict","data_type":"string"},"description":"Changes the behavior of the plugin output which check states are printed:\n0 (default): Only service checks/packages with state not OK will be printed\n1: Only services with not OK will be printed including OK checks of affected check packages including Package config\n2: Everything will be printed regardless of the check state\n3: Identical to Verbose 2, but prints in addition the check package configuration e.g (All must be [OK])","caption":"Verbosity","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeDatalist","originalId":"8","varname":"IcingaCheckService_Int32_Verbosity","format":null}}}