From 0c2289d8233ab74577835f160c152228b7ec54ec Mon Sep 17 00:00:00 2001
From: "Hahn Axel (hahn)" <axel.hahn@unibe.ch>
Date: Tue, 29 Aug 2023 10:17:50 +0200
Subject: [PATCH] add doc page

---
 docs/20_Checks/_index.md        |  1 +
 docs/20_Checks/check_couchdb.md | 89 +++++++++++++++++++++++++++++++++
 docs/20_Checks/check_eol.md     |  2 +-
 3 files changed, 91 insertions(+), 1 deletion(-)
 create mode 100644 docs/20_Checks/check_couchdb.md

diff --git a/docs/20_Checks/_index.md b/docs/20_Checks/_index.md
index ae0a757..c874e5f 100644
--- a/docs/20_Checks/_index.md
+++ b/docs/20_Checks/_index.md
@@ -14,6 +14,7 @@ There is one include script used by all checks:
 * [check_ceph_osd](check_ceph_osd.md)
 * [check_ceph_status](check_ceph_status.md)
 * [check_clientbackup](check_clientbackup.md)
+* [check_couchdb](check_couchdb.md)
 * check_couchdb-lb
 * [check_cpu](check_cpu.md)
 * [check_cronstatus](check_cronstatus.md)
diff --git a/docs/20_Checks/check_couchdb.md b/docs/20_Checks/check_couchdb.md
new file mode 100644
index 0000000..8698c95
--- /dev/null
+++ b/docs/20_Checks/check_couchdb.md
@@ -0,0 +1,89 @@
+# check_couchdb
+
+## Introduction
+
+Check couchdb status.
+
+### Requirements
+
+* a running couchdb service
+* authentication (see section Installation below)
+
+## Syntax
+
+```text
+> check_couchdb -h
+______________________________________________________________________
+
+CHECK_COUCHDB
+v0.2
+
+(c) Institute for Medical Education - University of Bern
+Licence: GNU GPL 3
+
+https://os-docs.iml.unibe.ch/icinga-checks/Checks/check_couchdb.html
+______________________________________________________________________
+
+Show couchdb status.
+
+SYNTAX:
+check_couchdb [-h] [-t FILE] -m MODE
+
+OPTIONS:
+    -h or --help   show this help.
+    -c CFGFILE     set a custom config file
+                   default: /etc/icingaclient/.couchdb
+    -m MODE        test a value; for debugging purposes
+
+EXAMPLE:
+check_couchdb -m up
+    Check if couchdb is up and running
+
+```
+
+## Installation
+
+The check script by default sources a file ``/etc/icingaclient/.couchdb``.
+It is a shell script with read permissions for the icinga user.
+It contains a line with the url to couchdb
+
+```shell
+# ls -l /etc/icingaclient/.couchdb
+-r--------. 1 icingaclient icingaclient 110 Aug 29 09:53 /etc/icingaclient/.couchdb
+
+# cat /etc/icingaclient/.couchdb
+export COUCH_URL=http://USERNAME:PASSWORD@localhost:5984
+```
+
+The variable COUCH_URL will be used to request status information.
+
+With parameter ``-c CFGFILE`` can define another location where to find the variable COUCH_URL.
+
+## Checks
+
+With the parameter ``-m METHOD`` you define what kind of check to perform.
+
+### up
+
+Simple check if couchdb is up and running.
+`check_couchdb -m up` returns
+
+```txt
+OK: Couchdb status (value in /_up is 'ok')
+Reponse: 
+{
+  "status": "ok",
+  "seeds": {
+    "couchdb@192.168.25.172": {
+      "timestamp": "2023-08-28T07:27:54.938619Z",
+      "last_replication_status": "ok",
+      "pending_updates": {
+        "_nodes": 0,
+        "_dbs": 0,
+        "_users": 0
+      }
+    },
+    "couchdb@192.168.25.61": {}
+  }
+}
+ ```
diff --git a/docs/20_Checks/check_eol.md b/docs/20_Checks/check_eol.md
index ed06539..0436321 100644
--- a/docs/20_Checks/check_eol.md
+++ b/docs/20_Checks/check_eol.md
@@ -98,7 +98,7 @@ The check is build to be customizable. You can add
 
 The related files are in 2 subdirectories with check_eol prefix:
 
-```
+```txt
 > ls -1  check_eol-data/ check_eol-versiondetect/
 check_eol-data/:
 databases.cfg
-- 
GitLab