config/director/Invoke-IcingaCheckDirectory.json

{"DataList":{"IcingaCheckDirectory Verbosity":{"list_name":"IcingaCheckDirectory 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"},"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"}},"Command":{"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"},"Invoke-IcingaCheckDirectory":{"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},{"datafield_id":10,"is_required":"n","var_filter":null},{"datafield_id":11,"is_required":"n","var_filter":null},{"datafield_id":12,"is_required":"n","var_filter":null},{"datafield_id":13,"is_required":"n","var_filter":null},{"datafield_id":14,"is_required":"n","var_filter":null},{"datafield_id":15,"is_required":"n","var_filter":null},{"datafield_id":16,"is_required":"n","var_filter":null},{"datafield_id":17,"is_required":"n","var_filter":null},{"datafield_id":18,"is_required":"n","var_filter":null},{"datafield_id":19,"is_required":"n","var_filter":null}],"object_name":"Invoke-IcingaCheckDirectory","arguments":{"-Path":{"value":"$IcingaCheckDirectory_String_Path$","order":"2"},"-Verbosity":{"value":"$IcingaCheckDirectory_Int32_Verbosity$","order":"14"},"-CreationOlderThan":{"value":"$IcingaCheckDirectory_String_CreationOlderThan$","order":"10"},"-FileSizeGreaterThan":{"value":"$IcingaCheckDirectory_String_FileSizeGreaterThan$","order":"12"},"-NoPerfData":{"set_if":"$IcingaCheckDirectory_Switchparameter_NoPerfData$","set_if_format":"string","order":"99"},"-ChangeOlderThan":{"value":"$IcingaCheckDirectory_String_ChangeOlderThan$","order":"8"},"-ChangeYoungerThan":{"value":"$IcingaCheckDirectory_String_ChangeYoungerThan$","order":"7"},"-FileSizeSmallerThan":{"value":"$IcingaCheckDirectory_String_FileSizeSmallerThan$","order":"13"},"-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-IcingaCheckDirectory\u0027 ","order":"0"},"-ThresholdInterval":{"value":"$IcingaCheckDirectory_String_ThresholdInterval$","order":"100"},"-CreationTimeEqual":{"value":"$IcingaCheckDirectory_String_CreationTimeEqual$","order":"9"},"-ChangeTimeEqual":{"value":"$IcingaCheckDirectory_String_ChangeTimeEqual$","order":"6"},"-FileNames":{"value":{"body":"var arr = macro(\"$IcingaCheckDirectory_Array_FileNames$\");\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"},"-Critical":{"value":"$IcingaCheckDirectory_Object_Critical$","order":"4"},"-CreationYoungerThan":{"value":"$IcingaCheckDirectory_String_CreationYoungerThan$","order":"11"},"-Recurse":{"set_if":"$IcingaCheckDirectory_Switchparameter_Recurse$","set_if_format":"string","order":"99"},"-Warning":{"value":"$IcingaCheckDirectory_Object_Warning$","order":"5"}},"imports":["PowerShell Base"],"object_type":"object","vars":{"IcingaCheckDirectory_Switchparameter_NoPerfData":false,"IcingaCheckDirectory_Switchparameter_Recurse":false}}},"Datafield":{"16":{"settings":{"visibility":"visible"},"description":"String that expects input format like \"20MB\", which translates to the filze size 20 MB. Allowed units: B, KB, MB, GB, TB.\n\nThereby all files with a size of 20 MB or larger are considered within the check.","caption":"FileSizeGreaterThan","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"16","varname":"IcingaCheckDirectory_String_FileSizeGreaterThan","format":null},"7":{"settings":{"visibility":"visible"},"description":"A switch, which can be set to search through directories recursively.","caption":"Recurse","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeBoolean","originalId":"7","varname":"IcingaCheckDirectory_Switchparameter_Recurse","format":null},"5":{"settings":{"visibility":"visible"},"description":"Used to specify a path.\ne.g. \u0027C:\\Users\\Icinga\\Downloads\u0027","caption":"Path","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"5","varname":"IcingaCheckDirectory_String_Path","format":null},"18":{"settings":{"datalist":"IcingaCheckDirectory 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":"18","varname":"IcingaCheckDirectory_Int32_Verbosity","format":null},"12":{"settings":{"visibility":"visible"},"description":"String that expects input format like \"20d\", which translates to 20 days. Allowed units: ms, s, m, h, d, w, M, y.\n\nThereby all files which have a change date older then 20 days are considered within the check.","caption":"ChangeOlderThan","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"12","varname":"IcingaCheckDirectory_String_ChangeOlderThan","format":null},"10":{"settings":{"visibility":"visible"},"description":"String that expects input format like \"20d\", which translates to 20 days. Allowed units: ms, s, m, h, d, w, M, y.\n\nThereby all files which have been changed 20 days ago are considered within the check.","caption":"ChangeTimeEqual","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"10","varname":"IcingaCheckDirectory_String_ChangeTimeEqual","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},"8":{"settings":{"visibility":"visible"},"description":"Used to specify a Critical threshold. Follows the Icinga plugin threshold","caption":"Critical","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"8","varname":"IcingaCheckDirectory_Object_Critical","format":null},"17":{"settings":{"visibility":"visible"},"description":"String that expects input format like \"5MB\", which translates to the filze size 5 MB. Allowed units: B, KB, MB, GB, TB.\n\nThereby all files with a size of 5 MB or less are considered within the check.","caption":"FileSizeSmallerThan","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"17","varname":"IcingaCheckDirectory_String_FileSizeSmallerThan","format":null},"11":{"settings":{"visibility":"visible"},"description":"String that expects input format like \"20d\", which translates to 20 days. Allowed units: ms, s, m, h, d, w, M, y.\n\nThereby all files which have a change date younger then 20 days are considered within the check.","caption":"ChangeYoungerThan","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"11","varname":"IcingaCheckDirectory_String_ChangeYoungerThan","format":null},"9":{"settings":{"visibility":"visible"},"description":"Used to specify a Warning threshold. Follows the Icinga plugin threshold","caption":"Warning","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"9","varname":"IcingaCheckDirectory_Object_Warning","format":null},"14":{"settings":{"visibility":"visible"},"description":"String that expects input format like \"20d\", which translates to 20 days. Allowed units: ms, s, m, h, d, w, M, y.\n\nThereby all files which have a creation date older then 20 days are considered within the check.","caption":"CreationOlderThan","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"14","varname":"IcingaCheckDirectory_String_CreationOlderThan","format":null},"15":{"settings":{"visibility":"visible"},"description":"String that expects input format like \"20d\", which translates to 20 days. Allowed units: ms, s, m, h, d, w, M, y.\n\nThereby all files which have a creation date younger then 20 days are considered within the check.","caption":"CreationYoungerThan","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"15","varname":"IcingaCheckDirectory_String_CreationYoungerThan","format":null},"6":{"settings":{"visibility":"visible"},"description":"Used to specify an array of filenames or expressions to match against results to filter for specific files.\n\ne.g \u0027*.txt\u0027, \u0027*.sql\u0027, finds all files ending with .txt and .sql","caption":"FileNames","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeArray","originalId":"6","varname":"IcingaCheckDirectory_Array_FileNames","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":"IcingaCheckDirectory_String_ThresholdInterval","format":null},"19":{"settings":{"visibility":"visible"},"description":null,"caption":"NoPerfData","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeBoolean","originalId":"19","varname":"IcingaCheckDirectory_Switchparameter_NoPerfData","format":null},"13":{"settings":{"visibility":"visible"},"description":"String that expects input format like \"20d\", which translates to 20 days. Allowed units: ms, s, m, h, d, w, M, y.\n\nThereby all files which have been created 20 days ago are considered within the check.","caption":"CreationTimeEqual","datatype":"Icinga\\Module\\Director\\DataType\\DataTypeString","originalId":"13","varname":"IcingaCheckDirectory_String_CreationTimeEqual","format":null}}}