[doc] schema

This commit is contained in:
Christian Fraß 2022-12-12 12:31:51 +01:00
parent 020846ebc8
commit c6d6bdc6f0

View file

@ -8,6 +8,7 @@
"additionalProperties": false, "additionalProperties": false,
"properties": { "properties": {
"active": { "active": {
"description": "whether the check shall be executed",
"type": "boolean", "type": "boolean",
"default": true "default": true
}, },
@ -27,13 +28,14 @@
"additionalProperties": false, "additionalProperties": false,
"properties": { "properties": {
"regular_interval": { "regular_interval": {
"description": "in seconds or as text",
"anyOf": [ "anyOf": [
{ {
"description": "in seconds",
"type": "integer", "type": "integer",
"exclusiveMinimum": 0 "exclusiveMinimum": 0
}, },
{ {
"description": "as text",
"type": "string", "type": "string",
"enum": [ "enum": [
"minute", "minute",
@ -46,13 +48,14 @@
"default": 3600 "default": 3600
}, },
"attentive_interval": { "attentive_interval": {
"description": "in seconds or as text",
"anyOf": [ "anyOf": [
{ {
"description": "in seconds",
"type": "integer", "type": "integer",
"exclusiveMinimum": 0 "exclusiveMinimum": 0
}, },
{ {
"description": "as text",
"type": "string", "type": "string",
"enum": [ "enum": [
"minute", "minute",
@ -94,35 +97,6 @@
"parameters" "parameters"
] ]
}, },
{
"title": "check kind 'file_touch'",
"type": "object",
"unevaluatedProperties": false,
"properties": {
"kind": {
"type": "string",
"enum": [
"file_touch"
]
},
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"path": {
"type": "string"
}
},
"required": [
"path"
]
}
},
"required": [
"kind",
"parameters"
]
},
{ {
"title": "check kind 'email'", "title": "check kind 'email'",
"type": "object", "type": "object",
@ -247,6 +221,7 @@
"type": "string" "type": "string"
}, },
"active": { "active": {
"description": "whether the check shall be executed",
"type": "boolean", "type": "boolean",
"default": true "default": true
}, },
@ -266,13 +241,14 @@
"additionalProperties": false, "additionalProperties": false,
"properties": { "properties": {
"regular_interval": { "regular_interval": {
"description": "in seconds or as text",
"anyOf": [ "anyOf": [
{ {
"description": "in seconds",
"type": "integer", "type": "integer",
"exclusiveMinimum": 0 "exclusiveMinimum": 0
}, },
{ {
"description": "as text",
"type": "string", "type": "string",
"enum": [ "enum": [
"minute", "minute",
@ -285,13 +261,14 @@
"default": 3600 "default": 3600
}, },
"attentive_interval": { "attentive_interval": {
"description": "in seconds or as text",
"anyOf": [ "anyOf": [
{ {
"description": "in seconds",
"type": "integer", "type": "integer",
"exclusiveMinimum": 0 "exclusiveMinimum": 0
}, },
{ {
"description": "as text",
"type": "string", "type": "string",
"enum": [ "enum": [
"minute", "minute",
@ -333,35 +310,6 @@
"parameters" "parameters"
] ]
}, },
{
"title": "check kind 'file_touch'",
"type": "object",
"unevaluatedProperties": false,
"properties": {
"kind": {
"type": "string",
"enum": [
"file_touch"
]
},
"parameters": {
"type": "object",
"additionalProperties": false,
"properties": {
"path": {
"type": "string"
}
},
"required": [
"path"
]
}
},
"required": [
"kind",
"parameters"
]
},
{ {
"title": "check kind 'email'", "title": "check kind 'email'",
"type": "object", "type": "object",
@ -510,14 +458,14 @@
] ]
}, },
{ {
"title": "notification channel 'file_timestamp'", "title": "notification channel 'file_state'",
"type": "object", "type": "object",
"unevaluatedProperties": false, "unevaluatedProperties": false,
"properties": { "properties": {
"kind": { "kind": {
"type": "string", "type": "string",
"enum": [ "enum": [
"file_timestamp" "file_state"
] ]
}, },
"parameters": { "parameters": {
@ -527,37 +475,30 @@
"path": { "path": {
"type": "string" "type": "string"
}, },
"warning_age": { "strict": {
"description": "whether a violation of this check shall be leveled as critical instead of concerning",
"type": "boolean",
"default": true
},
"exist": {
"description": "whether the file is supposed to exist or not",
"type": "boolean",
"default": true
},
"age_threshold": {
"description": "in seconds; ignored if 'exist' is set to false",
"type": [
"null",
"integer"
],
"exclusiveMinimum": 0,
"default": null
},
"size_threshold": {
"description": "in bytes; ignored if 'exist' is set to false",
"type": "integer", "type": "integer",
"exclusiveMinimum": 0, "exclusiveMinimum": 0,
"default": 3600 "default": null
},
"critical_age": {
"type": "integer",
"exclusiveMinimum": 0,
"default": 86400
},
"condition_on_missing": {
"description": "which condition to report if file is missing",
"type": "string",
"enum": [
"unknown",
"ok",
"warning",
"critical"
],
"default": "warning"
},
"condition_on_implausible": {
"description": "which condition to report if the age is negative, i.e. the file is apparently from the future",
"type": "string",
"enum": [
"unknown",
"ok",
"warning",
"critical"
],
"default": "warning"
} }
}, },
"required": [ "required": [
@ -636,10 +577,10 @@
}, },
"required": [] "required": []
}, },
"as_warning": { "strict": {
"description": "whether a violation of this check shall be exposed as warning instead of critical; default: false", "description": "whether a violation of this check shall be leveled as critical instead of concerning",
"type": "boolean", "type": "boolean",
"default": false "default": true
} }
}, },
"required": [ "required": [