diff --git a/.env b/.env new file mode 100644 index 0000000..37bbb7a --- /dev/null +++ b/.env @@ -0,0 +1,2 @@ +VITE_RELEASE_VERSION=1.4.3 +VITE_RELEASE_DATE=19 Nov 2024 diff --git a/.gitignore b/.gitignore index 1a8ffca..7f83ffe 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,45 @@ -_site -.bundle -.gem -Gemfile.lock +# Thanks to CakePHP for the good .gitignore +# https://github.com/cakephp/cakephp/blob/33626a03197758f30a8ce8c2e0a75ed8ddbce40a/.gitignore + +# VitePress files # +################## +node_modules +package-lock.json +.vitepress/cache +.vitepress/dist + +# OS generated files # +###################### +.DS_Store +.DS_Store? +._* +.Spotlight-V100 +.Trashes +Icon? +ehthumbs.db +Thumbs.db +*Zone.Identifier + +# Tool specific files # +####################### +# vim +*~ +*.swp +*.swo +# sublime text & textmate +*.sublime-* +*.stTheme.cache +*.tmlanguage.cache +*.tmPreferences.cache +# Eclipse +.settings/* +/.project +/.buildpath +# JetBrains, aka PHPStorm, IntelliJ IDEA +.idea/* +# NetBeans +nbproject/* +# Visual Studio Code +.vscode + + diff --git a/.vitepress/config.mts b/.vitepress/config.mts new file mode 100644 index 0000000..ea60a90 --- /dev/null +++ b/.vitepress/config.mts @@ -0,0 +1,94 @@ +import { defineConfig } from 'vitepress' + + +// https://vitepress.dev/reference/site-config +export default defineConfig({ + lang: 'en-US', + title: "Naemon - Monitoring Suite", + description: "Naemon is the new monitoring suite that aims to be fast, stable and innovative while giving you a clear view of the state of your network and applications.", + head: [ + ['link', { rel: 'icon', href: '/favicon.ico' }] + ], + + // Can be removed as soon as the legacy content is removed + srcExclude: [ '**/legacy/**' ], + + themeConfig: { + + logo: '/images/svg/naemonlogo.svg', + siteTitle: false, + + // https://vitepress.dev/reference/default-theme-config + nav: [ + { text: 'Home', link: '/' }, + { text: 'Download', link: '/download' }, + { + text: 'Documentation', + activeMatch: `^/documentation/`, + items: [ + { text: 'Users Guide', link: '/documentation/usersguide/toc' }, + { text: 'Developers', link: '/documentation/developer/toc' }, + { text: 'FAQ', link: '/documentation/faq' }, + ] + }, + { text: 'Get involved', link: '/community' }, + ], + + // show h2 and h3 in the outline menu (On this page) + // https://vitepress.dev/reference/default-theme-config#outline + outline: [2, 3], + + sidebar: [ + { + text: 'Examples', + items: [ + { text: 'Download', link: '/download' }, + ] + }, + { + text: 'Documentation', + link: '/documentation', + collapsed: false, + items: [ + { + text: 'Users Guide', link: '/documentation/usersguide/toc', items: [ + { text: 'What is Naemon', link: '/documentation/usersguide/about' }, + { text: 'What\'s New', link: '/documentation/usersguide/whatsnew' }, + { text: 'Naemon Logo', link: '/logo' } + ] + }, + { + text: 'Developers', link: '/documentation/developer/toc', items: [ + { text: 'Build Naemon From Scratch', link: '/documentation/developer/build' }, + { text: 'Worker Processes', link: '/documentation/developer/workers' }, + { text: 'Naemon Event Broker Modules (NEB)', link: '/documentation/developer/neb_broker' }, + { text: 'API Incompatibilities between Nagios 3', link: '/documentation/developer/api-incompat3to4' }, + { text: 'Query Handlers', link: '/documentation/developer/queryhandlers' }, + { text: 'Check Result Spoolfolder', link: '/documentation/developer/spoolfolder' }, + { text: 'Naemon Website', link: '/documentation/developer/website' } + ] + }, + { + text: 'FAQ', link: '/documentation/faq', items: [ + { text: 'Usersguide guidelines', link: '/documentation/faq/usersguide-guidelines' }, + { text: 'Markdown guide', link: '/documentation/faq/vitepress-markdown-guide' } + ] + } + ] + } + ], + + socialLinks: [ + { icon: 'github', link: 'https://github.com/naemon' }, + { icon: 'x', link: 'https://x.com/naemoncore' } + ], + + search: { + provider: 'local' + }, + + editLink: { + pattern: 'https://github.com/naemon/naemon.github.io/edit/main/:path' + } + } +}) diff --git a/.vitepress/theme/index.ts b/.vitepress/theme/index.ts new file mode 100644 index 0000000..49e4f15 --- /dev/null +++ b/.vitepress/theme/index.ts @@ -0,0 +1,16 @@ +// .vitepress/theme/index.js +import type { Theme } from 'vitepress' +import DefaultTheme from 'vitepress/theme' +import '@fortawesome/fontawesome-free/css/all.css' +import './naemon.css' + +export default { + extends: DefaultTheme, + enhanceApp({ app }) { + + // Load global variables from .env file + // VITE_RELEASE_VERSION will become available as $RELEASE_VERSION in the Markdown files + app.config.globalProperties.$RELEASE_VERSION = import.meta.env.VITE_RELEASE_VERSION + app.config.globalProperties.$RELEASE_DATE = import.meta.env.VITE_RELEASE_DATE + } +} satisfies Theme \ No newline at end of file diff --git a/.vitepress/theme/naemon.css b/.vitepress/theme/naemon.css new file mode 100644 index 0000000..db502b3 --- /dev/null +++ b/.vitepress/theme/naemon.css @@ -0,0 +1,15 @@ +/* Custom CSS for the Naemon web site + * see https://vitepress.dev/guide/extending-default-theme#customizing-css + * and https://github.com/vuejs/vitepress/blob/main/src/client/theme-default/styles/vars.css + */ +:root { + --vp-c-brand-1: #039BE5; + --vp-c-brand-2: #0277BD; + --vp-c-brand-3: #01579B; + + --vp-home-hero-name-color: transparent; + --vp-home-hero-name-background: -webkit-linear-gradient(-45deg, #4FC3F7 50%, var(--vp-c-brand-1)); + + --vp-home-hero-image-background-image: linear-gradient(45deg, var(--vp-c-brand-2) 50%, var(--vp-c-brand-1) 50%); + --vp-home-hero-image-filter: blur(68px); +} \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index fd98791..bc67f27 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,17 +1,13 @@ -FROM alpine:3.19 - -# This is highly inspired from https://github.com/Starefossen/docker-github-pages -# Many thanks -# Also thanks to https://pmarinova.github.io/2023/10/10/running-github-pages-gem-locally-with-docker.html - -RUN apk --update add --virtual build_deps \ - build-base ruby-dev libc-dev linux-headers jekyll -RUN gem install --verbose --no-document github-pages bundler +FROM node:22-alpine RUN mkdir -p /site WORKDIR /site -EXPOSE 4000 +COPY package.json /site/package.json + +RUN npm install --verbose + +EXPOSE 5173 -CMD bundle install && bundle exec jekyll serve --watch --force_polling -H 0.0.0.0 -P 4000 +CMD npm run docs:dev diff --git a/README.md b/README.md index 12b29e5..cf2149d 100644 --- a/README.md +++ b/README.md @@ -1,27 +1,59 @@ -naemon.github.io -================ +# Naemon Documentation + +This repository contains the documentation and website of the Naemon project. The naemon website. -Written for [Jekyll](http://jekyllrb.com/), and relying on [bootstrap](http://getbootstrap.com/). +Build with [VitePress](https://vitepress.dev/). + +## Work in process + +We are currently migrating the website from [Jekyll](http://jekyllrb.com/) to [VitePress](https://vitepress.dev/). +To do so, all old files got moved into the `legacy` folder using `git mv`. This will prevent to git history. + +To migrate a page from Jekyll to VitePress, you have to use the `git mv` command, to move the file from the `legacy` folder into the +new VitePress project. + +``` +git mv legacy/README.md README.md +``` + +In the next step, edit the file, apply all the required changes and command your work. -Install locally ---------------- -Read the online guide from github at: -https://help.github.com/articles/setting-up-your-github-pages-site-locally-with-jekyll/ +## Run development server -Run locally using Docker ---------------- +Please see the documentation of how to setup a local copy of the Naemon website. -First build the Docker image which will contain Ruby, Jekyll and all the required dependencies +[Run Naemon Website Locally ](./documentation/developer/website.md) + +### In a nutshell +``` +git clone https://github.com/naemon/naemon.github.io.git +cd naemon.github.io.git/ + +npm install +npm run docs:dev +``` + +### Using Docker +In case you do not want to install Nodejs to your system, you can also use Docker + +First build the Docker image which will contain N Nodejs - thats all this documentation has no dependencies ``` docker build . -t naemon/docs ``` -Now run the Docker container and navigate to `http://127.0.0.1:4000` in your browser. +Now run the Docker container and navigate to `http://127.0.0.1:5173` in your browser. The container watches for file changes and will automatically regenerate the website if needed. ``` -docker run --rm -it -v "$PWD":/site -p "4000:4000" naemon/docs:latest +docker run --rm -it -v "$PWD":/site -p "5173:5173" naemon/docs:latest ``` + +### Important for the Migration + +1. Remove all HTML from the Markdown files. Probably in 99% it's not required and can be done using Markdown. +2. All headlines have to get reduced by one ( remove one hashtag `###` gets to `##`) +3. You can modify HTML anchors like so: `## What Is Naemon? {#whatis}` +4. Add code blocks `like this` for code instead of quotes 'like so'. \ No newline at end of file diff --git a/community.md b/community.md new file mode 100644 index 0000000..f0dfde3 --- /dev/null +++ b/community.md @@ -0,0 +1,17 @@ +# Get involved + +We have several of the usual means of contact: + + + +We need our own [documentation](/documentation/) quite desperately. If you want to send us pull requests, or discuss how we should run the documentation project, get in touch. + +We're in great need of people who like to write web content, draw logos, make things pretty, and general do all the things that at no point involve debugging linker errors. If that's your cup of tea, do help us out, will ya? + +We would love more testers - fetch [development packages](/download#development_snapshot) and give us feedback. If you have ideas about how to do testing better, we would love that too. + +Supposedly there are bugs as well, both in the [core](https://github.com/naemon/naemon-core/issues) and [base](https://github.com/naemon/naemon/issues) project. We love it for there to be fewer of those. + +If you're interested in one of these things, or something else you'd like to us about, find us on IRC or send an email. + +[Why Naemon?](/project) diff --git a/community/index.md b/community/index.md deleted file mode 100644 index b318ee2..0000000 --- a/community/index.md +++ /dev/null @@ -1,24 +0,0 @@ ---- -layout: default -title: Get involved ---- -We have several of the usual means of contact: - -{% include contacts.md %} - -We need our own [documentation](/documentation) quite desperately. If you want to send us pull requests, or discuss how we should run the documentation project, get in touch. - -We're in great need of people who like to write web content, draw logos, tweet, make things pretty, and general do all the things that at no point involve debugging linker errors. If that's your cup of tea, do help us out, will ya? - -We would love more testers - fetch [development packages](/download) and give us feedback. If you have ideas about how to do testing better, we would love that too. - -Supposedly there are bugs as well, both in the [core] and [base] project. We love it for there to be fewer of those. - -If you're interested in one of these things, or something else you'd like to us about, find us on IRC or send an email. - -[Why naemon?][why] - -[core]: https://github.com/naemon/naemon-core/issues -[base]: https://github.com/naemon/naemon/issues -[why]: /project.html -[twitter]: https://twitter.com/naemoncore diff --git a/documentation/developer/api-incompat3to4.md b/documentation/developer/api-incompat3to4.md index ee9b817..ca94f5b 100644 --- a/documentation/developer/api-incompat3to4.md +++ b/documentation/developer/api-incompat3to4.md @@ -1,80 +1,75 @@ ---- -layout: doctoc -title: API Incompatibilities ---- +# API Incompatibilities A list of API incompatibilities between Nagios 3 and Naemon. -### Global Variables +## Global Variables - -### Data Structures + - `event_list_{high,low}` and `event_list_{high,low}_tail` are no more. + Instead there is `squeue_t *nagios_sqeueue`, which is a single queue + to handle all timed events. + - `last_command_check`, `command_check_interval`, `external_command_buffer` + and `external_command_buffer_slots` are no more. + - `check_result_list` is no more + - `passive_check_result_list` and `passive_check_result_list_tail` are no + more. - + notify on, based on `1 << current_state`. + - As per above, with `flap_detection_options` + - As per above, with `stalking_options` + - As per the three above, with services + - As per above, with dependencies which now have a `failure_options` + field instead of multiple `fail_on_foo` fields. + - As per above with escalations, which now have an + `escalation_options` field instead of multiple `escalate on foo` fields. + + +## Functions -### Functions - \ No newline at end of file + themselves. The new preferred form is `struct host *foo`, which + clearly shows that we're dealing with a non-opaque type. diff --git a/documentation/developer/build.md b/documentation/developer/build.md index 3ef2c49..091ec77 100644 --- a/documentation/developer/build.md +++ b/documentation/developer/build.md @@ -1,11 +1,5 @@ ---- -layout: doc -title: Core Development ---- -#### Build Naemon From Scratch - -##### Build Git Development Version +# Build Git Development Version Developers, Testers and early adopters may want to build their own packages, so here is how: We use CentOS 6 in our example. For Debian based system, replace 'make rpm' with 'make deb' @@ -14,27 +8,27 @@ and install the dependencies according to your system. First install some basic dependencies: ```bash -%> sudo yum install git perl perl-Module-Install automake gperf gcc-c++ \ - autoconf libtool gd-devel expat-devel mysql-devel rpm-build \ - wget httpd tar logrotate help2man libicu-devel +sudo dnf install git perl perl-Module-Install automake gperf gcc-c++ \ + autoconf libtool gd-devel expat-devel mysql-devel rpm-build \ + wget httpd tar logrotate help2man libicu-devel ``` Then clone our repository in any folder you like: ```bash -%> git clone --recursive https://github.com/naemon/naemon.git +git clone --recursive https://github.com/naemon/naemon.git ``` Update all git submodules: ```bash -%> cd naemon/ -%> make update +cd naemon/ +make update ``` Finally build your rpm package: ```bash -%> ./configure --without-compress -%> make rpm +./configure --without-compress +make rpm ``` diff --git a/documentation/developer/neb_broker.md b/documentation/developer/neb_broker.md index b9c1bc0..a6d362a 100644 --- a/documentation/developer/neb_broker.md +++ b/documentation/developer/neb_broker.md @@ -1,7 +1,4 @@ ---- -layout: doctoc -title: Naemon Event Broker Modules (NEB) ---- +# Naemon Event Broker Modules (NEB) Everything related to Naemon event broker modules (NEB). @@ -19,8 +16,9 @@ nothing else. Usually callbacks would be registered during the init function. -module.c: ```C +// module.c + #include NEB_API_VERSION(CURRENT_NEB_API_VERSION); @@ -43,12 +41,12 @@ compile with: %> gcc $(pkg-config --cflags naemon) -shared -fPIC module.c -o module.o ``` -And load the module from your naemon.cfg with: +And load the module from your `naemon.cfg` with: ``` broker_module=..../module.o ``` -If everything worked, you should see something like this in your naemon.log +If everything worked, you should see something like this in your `naemon.log` ``` [1636297273] module loaded @@ -70,13 +68,14 @@ Also have a look at real world examples: ### Callback Types -#### NEBCALLBACK_VAULT_MACRO_DATA +#### `NEBCALLBACK_VAULT_MACRO_DATA` The vault callback can be used to dynamically set macro values. The module registers a single callback which sets the value of the supplied data structure. -module.c: ```C +// module.c + #include NEB_API_VERSION(CURRENT_NEB_API_VERSION); static void *neb_handle = NULL; @@ -103,8 +102,8 @@ compile with: %> gcc $(pkg-config --cflags naemon) -shared -fPIC module.c -o module.o ``` -And load the module from your naemon.cfg with: +And load the module from your `naemon.cfg` with: ``` -broker_module=..../module.o +broker_module=/path/to/module.o ``` diff --git a/documentation/developer/queryhandlers.md b/documentation/developer/queryhandlers.md index a630f68..3b9944f 100644 --- a/documentation/developer/queryhandlers.md +++ b/documentation/developer/queryhandlers.md @@ -1,23 +1,20 @@ ---- -layout: doctoc -title: Query Handler ---- +# Query Handler A brief intro to the Naemon query handler system -### Purpose +## Purpose The purpose of the query handler is to provide Naemon Core and its eventbroker modules with the ability to communicate directly with the outside world through a well-defined API, as well as allowing external apps a way to help out with various Naemon tasks. -### Caveats +## Caveats The query handlers run in the main thread. Naemon doesn't provide any parallelism here and main Naemon will be blocked while a query is running. As such, it's a very good idea to make ones queryhandlers complete in as little time as possible. -### Registering a query handler +## Registering a query handler This is really for module authors only. To register a query handler, you *must* have a function like the one @@ -29,13 +26,13 @@ int lala_query_handler(int sd, char *query, unsigned int query_len) ``` The parameters don't have to have those exact names, and the function -certainly doesn't have to be called "lala_query_handler()". We're not +certainly doesn't have to be called `lala_query_handler()`. We're not quite that childish (well, we are, but we like to pretend we're not). They will suffice for this explanation, however. -- sd - The socket you should respond to. -- query - The query, minus the address and the magic byte. -- query_len - Length of the query, in bytes. +- `sd` - The socket you should respond to. +- `query` - The query, minus the address and the magic byte. +- `query_len` - Length of the query, in bytes. The call to register it with Naemon so you get all queries directed to the 'lala' address is then: @@ -47,14 +44,13 @@ qh_register_handler("lala", "The LaLa query handler", 0, lala_query_handler); The second argument is a description, which will be printed when someone sends a help request. -{{ site.info }} -It's a good idea to handle queries such as "help" and take -them to mean "print me some text telling me at least the basics -of how to use this query handler". -{{ site.end }} +> [!TIP] +> It's a good idea to handle queries such as "help" and take +> them to mean "print me some text telling me at least the basics +> of how to use this query handler". -### Syntax +## Syntax The query language is remarkably simple (although each handler may implement its own parsers that handle and do pretty much whatever they want). The first byte is magic. If it's an at-sign, we expect @@ -68,7 +64,7 @@ If no at-sign and no hash-sign is present at the first byte, the -1'th byte will be considered an at-sign, and the connection will consequently be considered persistent. -#### Example queries +### Example queries Subscribe for real-time push-events for servicechecks from the NERD radio: ``` @@ -94,10 +90,10 @@ Ask the help handler to list registered handlers: ``` -### In-core query handlers +## In-core query handlers There are a few in-core query handlers. -#### The help service +### The help service The help query handler is quite possibly the most important one. It can be used to list registered handlers (with short descriptions), and can be used to get help about registered handlers (assuming @@ -110,7 +106,7 @@ help output, like so: ``` -#### The echo service +### The echo service As I'm sure you've already guessed, the echo service just prints the inbound data right back at you. While that's not exactly nobel prize winning material, it's actually pretty nifty to figure out how fast @@ -125,12 +121,12 @@ It can be addressed as such: @echo foo bar baz said the bunny\0 ``` -#### Naemon Event Radio Dispatcher +### Naemon Event Radio Dispatcher The nerd radio is a core part of Naemon and but is current lacking further documentation. -#### Worker process manager +### Worker process manager The worker process manager lets you register workers that can help out with running checks, send notifications, run eventhandlers or whatever. diff --git a/documentation/developer/spoolfolder.md b/documentation/developer/spoolfolder.md index 003d0bf..32f854f 100644 --- a/documentation/developer/spoolfolder.md +++ b/documentation/developer/spoolfolder.md @@ -1,31 +1,28 @@ ---- -layout: doctoc -title: Check Result Spoolfolder ---- +# Check Result Spoolfolder A brief intro to the Naemon checkresult spoolfolder -### Purpose +## Purpose The purpose of the checkresult spoolfolder as set by the `check_result_path` configuration option is a fast and scalable option to submit active and passive host and service results. It is usually an internal API, but it can be used to submit check results from 3rd party scripts as well. -### When should i use this spoolfolder +## When should i use this spoolfolder There is more than one way to submit check results. The spoolfolder should be used if one of the following criteria matches: - Want to submit active check results - Want to submit many results at once -### Architecure Overview +## Architecure Overview 1. Script runs host/service check and writes result into new file below `check_result_path`. 2. When finished writing the file, write a .ok file. 3. Naemon will reap the results and delete the file. -### Spoolfile +## Spoolfile The spoolfile must match the pattern `cXXXXXX`. It must start with a literal `c` and the filename must be 7 bytes long. @@ -57,34 +54,23 @@ output=... When the file is finished and closed, create an empty file `cXXXXXX.ok` using the same filename as the actual checkresult and append `.ok`. -#### Checkresult Attributes +### Checkresult Attributes -`host_name`: Contains the host name. + - `host_name`: Contains the host name. + - `service_description`: Contains the service description. (Optional, skip for host results). + - `check_type`: Can be either `0` for active check results or `1` for passive check results. + - `check_options`: Should be 0. + - `scheduled_check`: Should be 1. But does not make any difference otherwise. + - `latency`: Latency in seconds (with fractions).. + - `start_time`: Unix timestamp (with fractions) when the check started. + - `finish_time`: Unix timestamp (with fractions) when the check finished. + - `early_timeout`: Should be 0, otherwise Naemon will create a generic timeout result. + - `exited_ok`: Should be 1. If 0, Naemon will discard the result and put a error message into the plugin output. + - `return_code`: The check plugin return code as 0:OK, 1:WARNING, 2:CRTICIAL and 3:UNKNOWN + - `output`: Contains the plugin output (with performance data) in a single line. Newlines must be escaped as `\n`. -`service_description`: Contains the service description. (Optional, skip for host results). -`check_type`: Can be either `0` for active check results or `1` for passive check results. - -`check_options`: Should be 0. - -`scheduled_check`: Should be 1. But does not make any difference otherwise. - -`latency`: Latency in seconds (with fractions).. - -`start_time`: Unix timestamp (with fractions) when the check started. - -`finish_time`: Unix timestamp (with fractions) when the check finished. - -`early_timeout`: Should be 0, otherwise Naemon will create a generic timeout result. - -`exited_ok`: Should be 1. If 0, Naemon will discard the result and put a error message into the plugin output. - -`return_code`: The check plugin return code as 0:OK, 1:WARNING, 2:CRTICIAL and 3:UNKNOWN - -`output`: Contains the plugin output (with performance data) in a single line. Newlines must be escaped as `\n`. - - -### Example +## Example ``` host_name=naemon.io @@ -99,8 +85,8 @@ output=HTTP OK: HTTP/1.1 302 Moved Temporarily - 324 bytes in 0.165 second respo ``` -### Libraries +## Libraries Here is a incomplete lists of libraries using this API: -- Perl: https://metacpan.org/pod/Nagios::Passive +- Perl: [https://metacpan.org/pod/Nagios::Passive](https://metacpan.org/pod/Nagios::Passive) diff --git a/documentation/developer/toc.md b/documentation/developer/toc.md index 6401944..87efb4b 100644 --- a/documentation/developer/toc.md +++ b/documentation/developer/toc.md @@ -1,47 +1,39 @@ ---- -layout: doc -title: Developer Documentation -body_class: toc ---- - -Technical and api documentation for Naemon. - -## Table of Contents +# Developer Documentation +Technical and api documentation for Naemon. -### Core - -Build Naemon From Scratch +## Core -Worker Processes +[Build Naemon From Scratch](build) -Naemon Event Broker Modules (NEB) +[Worker Processes](workers) +[Naemon Event Broker Modules (NEB)](neb_broker) -### API -API Incompatibilities between Nagios 3 and Naemon +## API -Query Handlers +[API Incompatibilities between Nagios 3 and Naemon](api-incompat3to4) -Livestatus +[Query Handlers](queryhandlers) -External Commands +[Livestatus](/documentation/usersguide/livestatus) -Check Result Spoolfolder +[External Commands](/documentation/developer/externalcommands/) +[Check Result Spoolfolder](spoolfolder) -### Naemon Plugins +## Naemon Plugins -Plugin API +[Plugin API](/documentation/usersguide/pluginapi) -Developing Plugins For Use With Embedded Perl +[Developing Plugins For Use With Embedded Perl](/documentation/usersguide/epnplugins) -Monitoring Plugins Developer Guidelines +[Monitoring Plugins Developer Guidelines](https://www.monitoring-plugins.org/doc/guidelines.html) -### Documentation / Website +## Documentation / Website -Run Naemon Website Locally +[Run Naemon Website Locally](website) diff --git a/documentation/developer/website.md b/documentation/developer/website.md index 6d4ebd8..b3bc3e7 100644 --- a/documentation/developer/website.md +++ b/documentation/developer/website.md @@ -1,42 +1,26 @@ ---- -layout: doc -title: Documentation ---- -### Run Naemon Website Locally +# Run Naemon Website Locally -#### Ubuntu 12.04 +The Naemon Website is build with [VitePress](https://vitepress.dev) and can run on any operating system. -For example on Ubuntu 12.04. We don't have a recent bundler here, so just use -gem directly. +## Installation -```bash - %> sudo apt-get install ruby1.9.3 ruby1.9.1-dev # yes, thats not a typo - %> cd /tmp && git clone https://github.com/naemon/naemon.github.io.git - %> cd /tmp/naemon.github.io - %> GEM_HOME=.gem gem1.9.3 install github-pages -``` +### Prerequisites -After the initial installation, start the server with the following command: + - [Node.js](https://nodejs.org/) version 18 or higher. + - Text Editor with [Markdown](https://en.wikipedia.org/wiki/Markdown) syntax support. + - [Visual Studio Code](https://code.visualstudio.com/) for example. ```bash - %> GEM_HOME=.gem ./.gem/bin/jekyll serve --watch -``` - - -#### OSX +git clone https://github.com/naemon/naemon.github.io.git +cd naemon.github.io/ -On OSX we use brew to install ruby 1.9: - -```bash - %> brew install ruby193 - %> cd /tmp && git clone https://github.com/naemon/naemon.github.io.git - %> cd /tmp/naemon.github.io - %> PATH=/usr/local/opt/ruby193/bin:$PATH GEM_HOME=.gem gem install github-pages +npm install ``` -After the initial installation, start the server with the following command: - +Now you are ready to start the development server ```bash - %> PATH=/usr/local/opt/ruby193/bin:$PATH GEM_HOME=.gem ./.gem/bin/jekyll serve --watch +npm run docs:dev ``` + +The dev server should be running at `http://localhost:5173` . Visit the URL in your browser to see the Naemon Website running. diff --git a/documentation/developer/workers.md b/documentation/developer/workers.md index ed6241b..1763999 100644 --- a/documentation/developer/workers.md +++ b/documentation/developer/workers.md @@ -1,11 +1,8 @@ ---- -layout: doctoc -title: Worker Processes ---- +# Worker Processes Everything related to worker processes. -### Philosophy +## Philosophy The idea behind separate worker processes is to achieve protected parallelization. Protected because a worker being naughty shouldn't affect the core process, and parallel because we use multiple @@ -13,7 +10,7 @@ workers. Ideally between 1.5 and 3 per CPU core available to us. Workers are free-standing processes, kept small, and with no knowledge about Naemon's object structure or logic. The reason for -this is that small processes can achieve a lot more fork()s per +this is that small processes can achieve a lot more `fork()s` per second than large processes (800/sec for a 300MB process against 13900/sec for a 1MB process). While workers can (and do) grow a little bit in memory usage when it's running many checks in @@ -21,31 +18,32 @@ parallel, they will still be a lot smaller than the primary Naemon daemon, and the memory they occupy should be released once the checks they're running are done. -### Protocol +## Protocol Workers use a text-based protocol to communicate with workers. It's fairly simple and very easy to debug. The breakdown goes as follows: - A request consists of a sequence of key/value pairs. -- A key is separated from its value with an equal sign ('='). +- A key is separated from its value with an equal sign (`=`). - A key/value pair is separated from the next key/value pair with a - nul byte ('\0'). + nul byte (`\0`). - Each request is separated from the next with a message delimiter - sequence made up by a one-byte followed by two nul bytes: "\1\0\0". + sequence made up by a one-byte followed by two nul bytes: `"\1\0\0"`. - Keys cannot contain equal signs. underscores and numbers. - Values cannot contain nul bytes. - Neither keys nor values can contain the message delimiter. - A zero-length value is considered to be the empty string. -{{ site.info }} -Even though it's technically legal to put almost anything in the -key field, you should stick to mnemonic names when extending the -protocol and just use lower case letters and underscores. -{{ site.end }} +> [!TIP] +> Even though it's technically legal to put almost anything in the +> key field, you should stick to mnemonic names when extending the +> protocol and just use lower case letters and underscores. -{{ site.info }}Keys are case sensitive. JOB_ID is *not* the same as job_id.{{ site.end }} +> [!IMPORTANT] +> Keys are case sensitive. `JOB_ID` is *not* the same as `job_id`. -#### API's + +### API's Worker processes communicate with Naemon using libnaemon API's exclusively. Since you're looking at a subpage of the documentation for that documentation right now, I'll just assume you've found it. @@ -54,21 +52,21 @@ completely optional, it's highly recommended. The key API's to use are: -- nsock - for connecting to and communicating through the qh socket -- kvvec - for parsing requests and building responses -- worker - for utils and stuff nifty to have if you're a worker -- runcmd - for spawning and reaping commands -- squeue - for maintaining a queue of the running job's timeouts -- iocache - for bulk-reading requests and parsing them -- iobroker - for multiplexing between running tasks and the master naemon process. - -{{ site.info }} -In particular, have a look at the "parse_command_kvvec()" and -"finish_job()" functions in lib/worker.c. They will do a large part -of the request/response handling for you. -{{ site.end }} - -### Registering a worker - The handshake +- `nsock` - for connecting to and communicating through the qh socket +- `kvvec` - for parsing requests and building responses +- `worker` - for utils and stuff nifty to have if you're a worker +- `runcmd` - for spawning and reaping commands +- `squeue` - for maintaining a queue of the running job's timeouts +- `iocache` - for bulk-reading requests and parsing them +- `iobroker` - for multiplexing between running tasks and the master naemon process. + + +> [!TIP] +> In particular, have a look at the `parse_command_kvvec()` and +> `finish_job()` functions in `lib/worker.c`. They will do a large part +> of the request/response handling for you. + +## Registering a worker - The handshake Workers register with Naemon through the queryhandler, using a query sent to the wproc handler. Since the query handler reserves the nul byte as a magic delimiter for its messages, this one time we use the @@ -96,16 +94,14 @@ keys: - max_jobs - Used to tell Naemon how many concurrent jobs this worker can handle - plugin - basename() or absolute path of specific plugins that this worker wants to handle checks for. -{{ site.info }} -plugin can be given multiple times. It is valid for a single -single worker to say "plugin=check_snmp;plugin=check_iferrors", for -example. -{{ site.end }} +> [!TIP] +> Plugin can be given multiple times. It is valid for a single +> single worker to say `plugin=check_snmp;plugin=check_iferrors`, for +> example. -{{ site.info }} -Many workers can register for the same plugin(s). They will -share the load in round-robin fashion. -{{ site.end }} +> [!IMPORTANT] +> Many workers can register for the same plugin(s). They will +> share the load in round-robin fashion. Complete C-code for registering a generic worker with Naemon follows: @@ -149,8 +145,8 @@ static int naemon_core_worker(const char *path) } ``` -The "enter_worker()" part actually refers to a libnaemon function that -lives in worker.c. The set_loadctl_defaults() call can be ignored. +The `enter_worker()` part actually refers to a libnaemon function that +lives in `worker.c`. The `set_loadctl_defaults()` call can be ignored. It's primarily intended to give sane defaults about how many jobs we can run, so we (in theory) can tell Naemon that we're swamped in case we run out of file descriptors or child processes. @@ -158,7 +154,7 @@ we run out of file descriptors or child processes. -#### Requests +### Requests A complete request looks like this (with C-style format codes replaced with actual values): @@ -168,12 +164,12 @@ job_id=%d\0type=%d\0command=%s\0timeout=%u\0\1\0\0 Note that values can contain equal signs, but cannot contain nul bytes, and cannot contain the message delimiter sequence. -By including naemon/lib/worker.h and using worker_ioc2msg() followed -by worker_kvvec2buf_prealloc(), you will get a parsed key/value vector +By including `naemon/lib/worker.h` and using `worker_ioc2msg()` followed +by `worker_kvvec2buf_prealloc()`, you will get a parsed key/value vector handed to you. Have a look in base/workers.c to see how it's done for the core workers. -#### Responses +### Responses Once the worker is done running a task, it hands over the result to the master Naemon process and forgets it ever ran the job. The workers take no further action, regardless of how the task went. The exception @@ -190,47 +186,46 @@ result rather than as something else. The variables required for the response to a successfully executed job on a registered worker process are as follows: -- job_id - The job id (as received by Naemon) -- type - The job type (as Naemon sent it) -- start - Timeval struct for start value in $sec.$usec format -- stop - Timeval struct for stop time in $sec.$usec format -- runtime - Floating point value of runtime, in seconds -- outstd - Output caught on stdout -- outerr - Output caught on stderr -- exited_ok - Boolean flag to denote if the job exited ok. A non-zero return code can still be achieved -- wait_status - Integer, as set by the wait() family of system calls +- `job_id` - The job id (as received by Naemon) +- `type` - The job type (as Naemon sent it) +- `start` - Timeval struct for start value in `$sec.$usec` format +- `stop` - Timeval struct for stop time in `$sec.$usec` format +- `runtime` - Floating point value of runtime, in seconds +- `outstd` - Output caught on stdout +- `outerr` - Output caught on stderr +- `exited_ok` - Boolean flag to denote if the job exited ok. A non-zero return code can still be achieved +- `wait_status` - Integer, as set by the `wait()` family of system calls The following should only be present when the worker is unable to execute the check due to an error, or when it cannot provide all the variables required for a successfully executed job due to arbitrary system errors: -- error_msg - An error message generated by the worker process -- error_code - The error code generated by the worker process +- `error_msg` - An error message generated by the worker process +- `error_code` - The error code generated by the worker process error_code 62 (ETIME - Timer expired) is reserved and means that the job timed out. -{{ site.warn }} -*never* invent error codes in the range 0-10000, since we'll -want to reserve that for special cases. -{{ site.end }} +> [!WARNING] +> **Never** invent error codes in the range 0-10000, since we'll +> want to reserve that for special cases. The following are completely optional (for now): -- command - The command we executed -- timeout - The timeout Naemon requested for this job -- ru_nsignals - The ru_nsignals field from the rusage struct -- ru_nswap - The ru_nswap field from the rusage struct -- ru_minflt - The ru_minflt field from the rusage struct -- ru_majflt - The ru_majflt field from the rusage struct -- ru_stime - The ru_stime field from the rusage struct -- ru_utime - The ru_utime field from the rusage struct -- ru_inblock - The ru_inblock field from the rusage struct -- ru_oublock - The ru_oublock field from the rusage struct +- `command` - The command we executed +- `timeout` - The timeout Naemon requested for this job +- `ru_nsignals` - The ru_nsignals field from the rusage struct +- `ru_nswap` - The ru_nswap field from the rusage struct +- `ru_minflt` - The ru_minflt field from the rusage struct +- `ru_majflt` - The ru_majflt field from the rusage struct +- `ru_stime` - The ru_stime field from the rusage struct +- `ru_utime` - The ru_utime field from the rusage struct +- `ru_inblock` - The ru_inblock field from the rusage struct +- `ru_oublock` - The ru_oublock field from the rusage struct The meaning of the fields of the rusage struct can be viewed in the -section 2 man-page for the getrusage() system call. Normally, you +section 2 man-page for the `getrusage()` system call. Normally, you would access it by executing the following command: ``` @@ -240,7 +235,7 @@ man 2 getrusage Note that most systems do not support all the fields of the rusage struct and may leave them empty if so. -### Logging +## Logging Worker processes can send events to the main Naemon process that will end up in the naemon.log file. The format is the same as that in requests and responses, but a log-message consists of a single @@ -255,7 +250,7 @@ It's worth noting that Naemon will prefix the message with the worker process name, so as to make grep'ing easy when debugging experimental workers. -### Protocol Exchange Example +## Protocol Exchange Example A register + execution of one job on a worker process will, with the standard Naemon core worker look like this, after the worker process has connected to the query handler socket but before it has sent diff --git a/documentation/faq/bootstrap-markdown-guide.md b/documentation/faq/bootstrap-markdown-guide.md deleted file mode 100644 index b8f2c48..0000000 --- a/documentation/faq/bootstrap-markdown-guide.md +++ /dev/null @@ -1,55 +0,0 @@ ---- -layout: affix -title: Bootstrap and Markdown guide ---- -This document will help the community to mainstream Naemon users guide to make it easy to follow with a common look and feel for the best user experience possible. - -### Bootstrap and Markdown syntax -Our website including the documentation are built upon Bootstrap and Markdown syntax at Github. - -#### Markdown and html -It's possible to use both Markdown and html when writing code. - -For more information how to use Github's version of Markdown, see this web site: [https://help.github.com/articles/github-flavored-markdown](https://help.github.com/articles/github-flavored-markdown) - -{{ site.warning }}It's not possible to use Markdown inside a html block. Don't forget that <table>...</table> are inside a html block as well{{ site.end }} - -##### Example - Invalid use of Markdown -``` -

This is **bold** text

-``` -

This is **bold** text

- -##### Example - Valid use of Markdown -``` -This is **bold** text -``` -This is **bold** text - -##### Bootstrap CSS -Make full use of Bootstrap infrastructure, see Bootstrap web page for more info: [http://getbootstrap.com/css/](http://getbootstrap.com/css/) - -#### Bootstrap layouts -Each Bootstrap webpage starts with a header with the layout definition. There are two different layouts available for documentation: - -* doc - doc layout is a one column page without table of content -* doctoc - doctoc layout are the same as doc but with a table of content to the right. The TOC are automatically generated using headers - -##### Example header -``` ---- -layout: doctoc -title: Example header page ---- -``` - -### Images and glyphs -Bootstrap offers support for Glyphicon Halflings set. It's easy to include glyphs in text, just add the icon class and the individual icon class. See example below - -``` -This is a thumb up -``` - -This is a thumb up - -For more glyphs see [http://getbootstrap.com/components/#glyphicons-glyphs](http://getbootstrap.com/components/#glyphicons-glyphs) diff --git a/documentation/faq/index.md b/documentation/faq/index.md index 9b6c621..4cd0d4f 100644 --- a/documentation/faq/index.md +++ b/documentation/faq/index.md @@ -1,31 +1,28 @@ ---- -layout: affix -title: FAQ ---- +# FAQ Frequently asked questions... If you don't find the answer here, it's either in -the [Users Guide](/documentation/usersguide), the [Developers Guide](/documentation/developer) -or not yet written. For the latter, see [](#) +the [Users Guide](/documentation/usersguide/toc.md), the [Developers Guide](/documentation/developer/toc.md) +or not yet written. -### General +## General -#### Why A Fork? +### Why A Fork? Read [Why A Fork](/project.html) on the projects page. -#### How Can I Help? +### How Can I Help? Help is much appreciated and possible in many ways. Details can be found on the [community page](/community) page. -#### What Are The Differences To Nagios +### What Are The Differences To Nagios A lot of open Nagios 4 issues have been fixed in Naemon. Also we removed the CGIs in favor of the Thruk gui. -### Suite +## Suite ### Core @@ -34,13 +31,15 @@ Also we removed the CGIs in favor of the Thruk gui. For error tracing its often useful to have a backtrace. For example if naemon crashes. You can start naemon with GDB like this. -{{ site.warn }}All commands should be run as the 'naemon' user.{{ site.end }} +> [!WARNING] +> All commands should be run as the `naemon` user. -Livestatus requires us to export or set LD_PRELOAD before running GDB, so we + +Livestatus requires us to export or set `LD_PRELOAD` before running GDB, so we first have to find that library: ```bash - %> find /lib/ /usr/lib/ /lib64/ /usr/lib64/ -name libpthread.so.0 +%> find /lib/ /usr/lib/ /lib64/ /usr/lib64/ -name libpthread.so.0 /lib/i386-linux-gnu/libpthread.so.0 ``` @@ -50,7 +49,7 @@ contains additional debugging symbols that makes troubleshooting a lot easier. Then run Naemon with GDB, you will have to type `run` after the prompt: ```bash - %>LD_PRELOAD=/lib/libpthread.so.0 gdb --args /usr/bin/naemon-dbg /etc/naemon/naemon.cfg +%>LD_PRELOAD=/lib/libpthread.so.0 gdb --args /usr/bin/naemon-dbg /etc/naemon/naemon.cfg GNU gdb (GDB) 7.0.1-debian Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later @@ -64,8 +63,8 @@ Then run Naemon with GDB, you will have to type `run` after the prompt: (gdb) run ``` -After typing 'run' you need to wait till the program crashes or exists otherwise. -In our case we just used 'kill -11' to fake a segfault in the core: +After typing `run` you need to wait till the program crashes or exists otherwise. +In our case we just used `kill -11` to fake a segfault in the core: ```bash Program received signal SIGSEGV, Segmentation fault. @@ -84,47 +83,32 @@ By typing `bt` you will get the desired backtrace: #4 0x080821db in main (argc=2, argv=0xbffff644) at naemon.c:768 ``` -Now go to the [naemon issues](https://github.com/naemon/naemon/issues) page and file a +Now go to the [naemon issues](https://github.com/naemon/naemon-core/issues) page and file a new bug after having a look if this hasn't been reported yet. -### Thruk - -### Livestatus - -### Addons - -### Development +## Help Extending The Documentation -### Documentation +Helping writing documentation is really easy and much appreciated. Most pages +are written in either Markdown ([Cheat Sheet](https://vitepress.dev/guide/markdown)) or HTML. The website +itself uses [VitePress](https://vitepress.dev/) for a simple and nice layout. -#### Help Extending The Documentation +See our [VitePress and Markdown guide](/documentation/faq/vitepress-markdown-guide) for more info -Helping writing documentation is really easy and much appreciated. Most pages -are written in either Markdown ([Cheat Sheet][markdown]) or HTML. The website -itself uses [bootstrap][bootstrap] for a simple and nice layout. +Please see our [Usersguide guidelines](/documentation/faq/usersguide-guidelines) for some basic information how we write our documentation -See our [Bootstrap and Markdown guide](/documentation/faq/bootstrap-markdown-guide.html) for more info +### Small Changes +Small changes like typos can be corrected and submitted directly on [GitHub](https://github.com/naemon/naemon.github.io) via the edit button. -Please see our [Usersguide guidelines](/documentation/faq/usersguide-guidelines.html) for some basic information how we write our documentation +Just navigation to the page you want to change and send a pull request via the online editor of GitHub. -##### Small Changes -Small changes like typos can be corrected and submitted directly on [github][githubdocs] via the edit button. -

![github edit button](images/githubedit.png "Github Edit Button")

-Just navigation to the page you want to change and send a pull request via the online editor of github. -Read more about the [online editor][githubedithelp]... +Read more about the [online editor](https://github.com/blog/905-edit-like-an-ace)... -##### Larger Changes +### Larger Changes Larger changes should be tested and reviewed locally before submitting them. Also it's good practice to talk to a team member before spending large amounts of time in things we eventually won't accept for whatever reasons. The [developer guide](/documentation/developer/website.html) contains instructions on -how to run a local Jekyll server. +how to run a local VitePress server. When done, just submit a normal pull request. - - -[markdown]: https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet -[bootstrap]: http://getbootstrap.com/css/ -[githubdocs]: https://github.com/naemon/naemon.github.io/tree/master/documentation -[githubedithelp]: https://github.com/blog/905-edit-like-an-ace diff --git a/documentation/faq/usersguide-guidelines.md b/documentation/faq/usersguide-guidelines.md index b331795..a67b207 100644 --- a/documentation/faq/usersguide-guidelines.md +++ b/documentation/faq/usersguide-guidelines.md @@ -1,79 +1,72 @@ ---- -layout: affix -title: Usersguide guidelines ---- +# Usersguide guidelines + This document will help the community to mainstream Naemon usersguide to make it easy to follow with a common look and feel for the best user experience possible. -### Naming +## Naming -* **Naemon** - The preferred name for Naemon Suite -* Naemon Suite - The entire suite, both the Naemon Core and Thruk Monitoring Webinterface -* Naemon Core - The monitoring engine -* Thruk - Monitoring Webinterface used by Naemon (also compatible with Icinga, Shinken and Nagios) +- **Naemon** - The preferred name for Naemon Suite +- Naemon Suite - The entire suite, both the Naemon Core and Thruk Monitoring Webinterface +- Naemon Core - The monitoring engine +- Thruk - Monitoring Webinterface used by Naemon (also compatible with Icinga, Shinken and Nagios) -### Syntax +## Syntax -#### Code snippets -

Use <pre>...</pre> or ```...``` for all code snippets in the documentation

+### Code snippets +Use \`\`\`...\`\`\` for all code snippets in the documentation. -``` +
+```bash
 mkdir download
 cd download
 ```
-
+
+ + ```bash mkdir download cd download ``` -
-{{ site.info }}The language is optional. Common languages are 'bash', 'c' or 'perl'.{{ site.end }} +> [!INFO] +> The language is optional. Common languages are `bash`, `c` or `perl`. ### Alerts -Alerts are used in the text to highlight something specific. It could be success, +Alerts are used in the text to highlight something specific. It could be `NOTE`, +`TIP`, `IMPORTANT`, `WARNING` or `CAUTION` informational, warning or danger. See code snippets below +```md +> [!NOTE] +> Some useful hint. -#### Success or Hints - -{{ site.hint }}Some useful hint.{{ site.end }} - -
-{{ site.hint }}Some useful hint.{{ site.end }}
-
- - -#### Information +> [!TIP] +> Some useful tips. -{{ site.info }}Informational Alert{{ site.end }} +> [!IMPORTANT] +> Informational Alert -
-{{ site.info }}Informational Alert{{ site.end }}
-
+> [!WARNING] +> It is not possible to use Markdown inside a html block. +> [!CAUTION] +> Make a backup before you upgrade +``` -#### Warning -{{ site.warn }}It's not possible to use Markdown inside a html block. Don't forget that <table>...</table> are inside a html block as well{{ site.end }} +> [!NOTE] +> Some useful hint. -
-{{ site.warn }}It's not possible to use Markdown inside a html block...{{ site.end }}
-
+> [!TIP] +> Some useful tips. -#### Note +> [!IMPORTANT] +> Informational Alert -{{ site.note }}{{ "You can use the Liquid filter `markdownify` to use markdown syntax inside html blocks." | markdownify }}{{ site.end }} -
-{{ site.note }}{{ "You can use the Liquid filter `markdownify` ..." | markdownify }}...{{ site.end }}
-
- -#### Danger +> [!WARNING] +> It is not possible to use Markdown inside a html block. -{{ site.danger }}Make a backup before you upgrade{{ site.end }} - -
-{{ site.danger }}Make a backup before you upgrade{{ site.end }}
-
+> [!CAUTION] +> Make a backup before you upgrade diff --git a/documentation/faq/vitepress-markdown-guide.md b/documentation/faq/vitepress-markdown-guide.md new file mode 100644 index 0000000..7be1ed2 --- /dev/null +++ b/documentation/faq/vitepress-markdown-guide.md @@ -0,0 +1,44 @@ +# VitePress and Markdown guide + +This document will help the community to mainstream Naemon users guide to make it easy to follow with a common look and feel for the best user experience possible. + +## VitePress and Markdown syntax +Our website including the documentation are built upon VitePress and Markdown syntax at Github. + +### Markdown and HTML +It's possible to use both Markdown and HTML when writing code. + +For more information how to use Github's version of Markdown, see this web site: [https://docs.github.com/de/get-started/writing-on-github](https://docs.github.com/de/get-started/writing-on-github) + +Also the [VitePress documentation](https://vitepress.dev/guide/markdown) contains a lot of good Markdown examples if you want to insert code blocs, alerts or Emojis :tada:. + +> [!WARNING] +> It's not possible to use Markdown inside a HTML block. Don't forget that <table>...</table> are inside a HTML block as well + +#### Example - Invalid use of Markdown +Markdown: +``` +

This is **bold** text

+``` +Result: +

This is **bold** text

+ +#### Example - Valid use of Markdown +Markdown: +``` +This is **bold** text +``` +Result: +This is **bold** text + + +## Font Awesome +All Font Awesome Free icons are available. + +``` +This is a thumb up +``` + +This is a thumb up + +For more icons see [https://fontawesome.com/icons](https://fontawesome.com/icons) diff --git a/documentation/index.md b/documentation/index.md index c94c07b..b7767dd 100644 --- a/documentation/index.md +++ b/documentation/index.md @@ -1,39 +1,21 @@ --- -layout: raw -title: Documentation +# https://vitepress.dev/reference/default-theme-home-page +layout: home + +hero: + name: "Documentation" + text: "" + tagline: Knowledge base for users and developers. + +features: + - title: Users Guide + details: Contains all the stuff you need to get started. Documentation for installation, basic operations and configuration topics. + link: /documentation/usersguide/toc + - title: Developers + details: Advanced topics for everyone who wants to build Naemon from scratch or hack NEB module and Addons. This is also the place for the API documentation. + link: /documentation/developer/toc + - title: FAQ + details: Find frequently asked questions and answers here. + link: /documentation/faq --- -
-
-

{{ page.title }}

-

Knowledge base for users and developers.

-
-
-
-
-
-

Users Guide

-

Contains all the stuff you need to get started. Documentation for installation, basic operations and configuration topics.

-
-
-

Developers

-

Advanced topics for everyone who wants to build Naemon from scratch or hack NEB module and Addons. - This is also the place for the API documentation.

-
-
-

FAQ

-

Find frequently asked questions and answers here.

-
-
-
- - -
-

FAQ »

-
-
-
diff --git a/documentation/usersguide/about.md b/documentation/usersguide/about.md index 4cee090..e929457 100644 --- a/documentation/usersguide/about.md +++ b/documentation/usersguide/about.md @@ -1,17 +1,6 @@ ---- -layout: doctoc -title: About Naemon ---- +# About Naemon -### Naemon Overview - -More information about Naemon - including features and technical specifications can be -found online at naemon.io. - - - - -### What Is Naemon? +## What Is Naemon? {#whatis} Naemon is an Open Source system and network monitoring application. It watches hosts and services that you specify, alerts you when things go bad and @@ -26,7 +15,7 @@ core as Nagios Core. Naemon Suite is currently roughly equivalent to Nagios Core which makes Naemon Core the equivalent of "Nagios Core Core". Naemon is the general term of the entire "Naemon Suite" that consists of two different -parts, Naemon Core and the Thruk Monitoring Webinterface. +parts, Naemon Core and the [Thruk Monitoring Webinterface](https://thruk.org/). We will generally refer to Naemon Suite as just Naemon. Some of the many features of Naemon include: @@ -46,21 +35,21 @@ Some of the many features of Naemon include: -### Components +## Components -#### Naemon core +### Naemon core The naemon core is the process that does the actual monitoring of your system. -#### Livestatus +### Livestatus Livestatus is an interface that your tools can use to query the Naemon core like a database. -Read more about Livestatus. +[Read more about Livestatus.](/documentation/usersguide/livestatus) -#### Thruk +### Thruk Thruk is the UI shipped with the Naemon Suite. -The Thruk documentation is at [its own page][thruk]. +The Thruk documentation is at [its own page](https://thruk.org/documentation/). -#### Plugins +### Plugins The monitoring application itself is quite useless without plugins to actually checks things for you. Check out [monitoring plugins][monplugins] for a large, well maintained collection of core plugins. @@ -69,10 +58,10 @@ by the monitoring plugins package. You can find a large body of plugins - mainta individual authors - at [monitoring exchange][monexchange]. You can also easily write your own - see the [monitoring plugins][monplugins] project. -Read more about the Plugin API. +Read more about the [Plugin API](/documentation/usersguide/pluginapi) -### System Requirements +## System Requirements The only requirement of running Naemon is a machine running Linux (or UNIX variant) that has network access and a C compiler installed (if installing from source code). @@ -80,25 +69,25 @@ access and a C compiler installed (if installing from source code). You are not required to use the CGIs included with Naemon. However, if you do decide to use them, you will need to have the following software installed... -* A web server (preferrably Apache) +* A web server (preferrably [Apache](https://httpd.apache.org/)) * Perl -### Licensing +## Licensing -Naemon Core is licensed under the terms of the GNU General Public License -Version 2 as published by the Free Software Foundation. +Naemon Core is licensed under the terms of the [GNU General Public License](https://www.gnu.org/licenses/gpl-2.0.html) +Version 2 as published by the [Free Software Foundation](https://www.fsf.org/). This gives you legal permission to copy, distribute and/or modify Naemon under certain conditions. -Read the 'LICENSE' file in the Naemon distribution or read the online -version of the license for more details. +Read the 'LICENSE' file in the Naemon distribution or read the [online +version of the license](https://www.gnu.org/licenses/gpl-2.0.html) for more details. Naemon Core is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. -### Acknowledgements +## Acknowledgements Several people have contributed to Naemon by either reporting bugs, suggesting improvements, writing plugins, etc. A list of some of the many contributors to the development of @@ -106,11 +95,11 @@ Naemon Core can be found in the THANKS file in the root of the Naemon Core distr -### Downloading The Latest Version +## Downloading The Latest Version -You can check for new versions of Naemon at https://www.naemon.io/download. +You can check for new versions of Naemon at [Downloads](/download) -[thruk]: http://thruk.org/documentation.html +[thruk]: https://thruk.org/documentation/ [monplugins]: https://www.monitoring-plugins.org/ [monexchange]: https://www.monitoringexchange.org/ diff --git a/documentation/usersguide/toc.md b/documentation/usersguide/toc.md index c439d66..2c41af8 100644 --- a/documentation/usersguide/toc.md +++ b/documentation/usersguide/toc.md @@ -1,233 +1,226 @@ ---- -layout: doctoc -title: User Documentation -body_class: toc ---- +# User Documentation -## Table of Contents -### About +## About -What is Naemon? +[What is Naemon?](about#whatis) -Components +[Components](about#components) -System requirements +[System requirements](about#system-requirements) -Licensing +[Licensing](about#licensing) -Downloading the latest version +[Downloading the latest version](about#downloading-the-latest-version) -### Release Notes +## Release Notes -What's new in this version +[What's new in this version](whatsnew) -Known issues +[Known issues](knownissues) -Configuration Incompatibilities Nagios 3 -> Naemon +[Configuration Incompatibilities Nagios 3 -> Naemon](config-incompat3to4) -### Support +## Support -Support +[Support](support) -Community +[Community](/community) +## Getting Started -### Getting Started +[Advice for beginners](beginners) -Advice for beginners +[Quickstart installation guide](quickstart) -Quickstart installation guide +[Upgrading from previous versions](upgrading) -Upgrading from previous versions +[How to monitor a Windows machine](monitoring-windows) -How to monitor a Windows machine +[How to monitor a Linux/Unix machine](monitoring-linux) -How to monitor a Linux/Unix machine +[How to monitor a network printer](monitoring-printers) -How to monitor a network printer +[How to monitor a router/switch](monitoring-routers) -How to monitor a router/switch +[How to monitor network services (HTTP, FTP, SSH, etc.)](monitoring-networkservices) -How to monitor network services (HTTP, FTP, SSH, etc.) +[How to install PNP graphs](addon-pnp-quickstart) -How to install PNP graphs +## Configuring Naemon -### Configuring Naemon +[Configuration overview](config) -Configuration overview +[Main configuration file options](configmain) -Main configuration file options +[Object configuration overview](configobject) -Object configuration overview +[Object definitions](objectdefinitions) -Object definitions +[CGI configuration file options](configcgi) -CGI configuration file options +[Configuring authorization for the CGIs](cgiauth) -Configuring authorization for the CGIs +## Running Naemon -### Running Naemon +[Verifying your configuration](verifyconfig) -Verifying your configuration +[Starting and stopping Naemon](startstop) -Starting and stopping Naemon +## The Basics {#basics} - +[Plugins](plugins) -### The Basics +[Macros and how they work](macros) -Plugins +[Standard macros available in Naemon](macrolist) -Macros and how they work +[Host checks](hostchecks) -Standard macros available in Naemon +[Service checks](servicechecks) -Host checks +[Active checks](activechecks) -Service checks +[Passive checks](passivechecks) -Active checks +[State types](statetypes) -Passive checks +[Time periods](timeperiods) -State types +[Determining status and reachability of network hosts](networkreachability) -Time periods +[Notifications](notifications) -Determining status and reachability of network hosts +[Information on the CGIs](cgis) -Notifications -Information on the CGIs +## Advanced Topics +[External commands](extcommands) -### Advanced Topics +[Event handlers](eventhandlers) -External commands +[Volatile services](volatileservices) -Event handlers +[Service and host result freshness checks](freshness) -Volatile services +[Distributed monitoring](distributed) -Service and host result freshness checks +[Redundant and failover monitoring](redundancy) -Distributed monitoring +[Detection and handling of state flapping](flapping) -Redundant and failover monitoring +[Notification escalations](escalations) -Detection and handling of state flapping +[On-call notification rotations](oncallrotation) -Notification escalations +[Monitoring service and host clusters](clusters) -On-call notification rotations +[Host and service dependencies](dependencies) -Monitoring service and host clusters +[State stalking](stalking) -Host and service dependencies +[Performance data](perfdata) -State stalking +[Scheduled host and service downtime](downtime) -Performance data +[Using the embedded Perl interpreter](embeddedperl) -Scheduled host and service downtime +[Adaptive monitoring](adaptive) -Using the embedded Perl interpreter +[Predictive dependency checks](dependencychecks) -Adaptive monitoring +[Cached checks](cachedchecks) -Predictive dependency checks +[Passive host state translation](passivestatetranslation) -Cached checks +[Custom CGI headers and footers](cgiincludes) -Passive host state translation +[Object inheritance](objectinheritance) -Custom CGI headers and footers +[Time-saving tips for object definitions](objecttricks) -Object inheritance -Time-saving tips for object definitions +## Security and Performance Tuning +[Security considerations](security) +[Enhanced CGI security and authentication](cgisecurity) -### Security and Performance Tuning +[Tuning Naemon for maximum performance](tuning) -Security considerations +[Fast startup options](faststartup) -Enhanced CGI security and authentication +[Large installation tweaks](largeinstalltweaks) -Tuning Naemon for maximum performance +[Using the naemonstats utility](naemonstats) -Fast startup options +## Naemon Addons -Large installation tweaks +[Thruk](addons#thruk) -Using the naemonstats utility +[Livestatus](livestatus) -### Naemon Addons +[NRPE](addons#nrpe) -Thruk +[NSCA](addons#nsca) -Livestatus +[NDOUtils](addons#ndoutils) -NRPE +[Statusengine 2](addons#statusengine_2) -NSCA +[Statusengine 3](addons#statusengine_3) -NDOUtils +[PNP](addons#pnp) -Statusengine 2 +[Graphing Performance Info With MRTG](mrtggraphs) -Statusengine 3 +[Merlin](addons#merlin) -PNP +[Mod-Gearman](addons#mod-gearman) -Graphing Performance Info With MRTG +[OMD](addons#omd) -Merlin +[Other addons](addons#others) -Mod-Gearman +[Nagios Exchange](http://exchange.nagios.org/) -OMD -Other addons -Nagios Exchange +## Integration With Other Software +[Integration Overview](integration) +[SNMP Traps](int-snmptrap) -### Integration With Other Software +[TCP Wrappers](int-tcpwrappers) -Integration Overview -SNMP Traps -TCP Wrappers +## Development +[Plugin API](pluginapi) +[Developing Plugins For Use With Embedded Perl](epnplugins) -### Development +[Developer Documentation](/documentation/developer/) -Plugin API +## Naemon Logo -Developing Plugins For Use With Embedded Perl +[Naemon Logo](/logo) -Developer Documentation - - - -### Licensing +## Licensing Copyright © 2014- Naemon Development Team and Community Contributors @@ -235,6 +228,6 @@ Copyright © 2009-2010 Nagios Core Development Team and Community Contributo Copyright © 1999-2009 Ethan Galstad -Portions copyright by Nagios Community members. See the THANKS file for more information. +Portions copyright by Nagios Community members. See the [THANKS](https://github.com/naemon/naemon-core/blob/master/THANKS) file for more information. Nagios, Nagios Core, NRPE, NSCA, and the Nagios logo are trademarks, servicemarks, registered servicemarks or registered trademarks of Nagios Enterprises. All other trademarks, servicemarks, registered trademarks, and registered servicemarks mentioned herein may be the property of their respective owner(s). The information contained herein is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE WARRANTY OF DESIGN, MERCHANTABILITY, AND FITNESS FOR A PARTICULAR PURPOSE. diff --git a/documentation/usersguide/whatsnew.md b/documentation/usersguide/whatsnew.md index d01663e..bb96de4 100644 --- a/documentation/usersguide/whatsnew.md +++ b/documentation/usersguide/whatsnew.md @@ -1,441 +1,490 @@ +# What's New + +## Known Issues + +All known issues for Naemon are tracked on Github. + +- Naemon Core: [https://github.com/naemon/naemon-core/issues](https://github.com/naemon/naemon-core/issues) +- Naemon Livestatus: [https://github.com/naemon/naemon-livestatus/issues](https://github.com/naemon/naemon-livestatus/issues) +- Naemon Website: [https://github.com/naemon/naemon.github.io/issues](https://github.com/naemon/naemon.github.io/issues) +- Naemon Packaging: [https://github.com/naemon/naemon/issues](https://github.com/naemon/naemon/issues) + +## Upcoming next release + +See upcoming changes from the next version on [Github](https://github.com/naemon/naemon-core/blob/master/NEWS) + + +## Changelog + +### 1.4.3 - Nov 19 2024 +#### Features + - add global notifications handler + - add external command to add log entries + - add hint of previous object when duplicate detection fails + - add options to keep services running as long as they are up + - add problem timestamps and duration + +#### Changed +- clean up output of `naemon -V` +- change problem_id and notification_id to uuids +- change service parents suppressing only normal notifcations + +#### Bugfixes +- fix leaking object.cache file references +- fix host not being in hard state with max_check_attempts=1 +- throw config errors if boolean values cannot be parsed +- fix retrieving comments after deleting first +- fix rpm installation race condition +- fix resetting modified_attributes + +#### Livestatus +- add support for new log types HOST/SERVICE NOTE +- improve performance on logs table +- fix crash on core reload +- fix crash when requesting invalid table names +- fix crash if stats queries errors halfway +- fix crash on stats queries on the logs table + --- -layout: doctoc -title: What's New + +### 1.4.2 - 04 Jan 2024 +#### Features +- remove size limit on external command argument length +- performance improvements when having lots of comments +- respawn dead core worker + +#### Changed +- write objects.precache into a tmp file first +- increased CURRENT_NEB_API_VERSION to 6 (neb modules need to be rebuild) + +#### Bugfixes +- fix build error on fedora +- fix latency calculation having negative value sometimes + +#### Livestatus +- contacts: add host/service_notification_commands column +- contacts: add groups column +- do not print error message if client dissconects +- avoid Cannot delete non-existing downtime/comment error during startup +- fix too low thread stacksize +- reopen logfile if cores last_log_rotation changed + --- - See Also: Known Issues - - - -### Notable Changes and New Features - -#### Upcoming next release - -See upcoming changes from the next version on [github](https://github.com/naemon/naemon-core/blob/master/NEWS) - -#### 1.4.3 - Nov 19 2024 -##### Features -* add global notifications handler -* add external command to add log entries -* add hint of previous object when duplicate detection fails -* add options to keep services running as long as they are up -* add problem timestamps and duration - -##### Changed -* clean up output of naemon -V -* change problem_id and notification_id to uuids -* change service parents suppressing only normal notifcations - -##### Bugfixes -* fix leaking object.cache file references -* fix host not being in hard state with max_check_attempts=1 -* throw config errors if boolean values cannot be parsed -* fix retrieving comments after deleting first -* fix rpm installation race condition -* fix resetting modified_attributes - -##### Livestatus -* add support for new log types HOST/SERVICE NOTE -* improve performance on logs table -* fix crash on core reload -* fix crash when requesting invalid table names -* fix crash if stats queries errors halfway -* fix crash on stats queries on the logs table - -#### 1.4.2 - 04 Jan 2024 -##### Features -* remove size limit on external command argument length -* performance improvements when having lots of comments -* respawn dead core worker - -##### Changed -* write objects.precache into a tmp file first -* increased CURRENT_NEB_API_VERSION to 6 (neb modules need to be rebuild) - -##### Bugfixes -* fix build error on fedora -* fix latency calculation having negative value sometimes - -##### Livestatus -* contacts: add host/service_notification_commands column -* contacts: add groups column -* do not print error message if client dissconects -* avoid Cannot delete non-existing downtime/comment error during startup -* fix too low thread stacksize -* reopen logfile if cores last_log_rotation changed - -#### 1.4.1 - 01 Feb 2023 -##### Features - * None - -##### Changed - * Use /run/naemon instead of /var/run/naemon - -##### Bugfixes - * Fix bashisms in scripts - * Fix fg: no job control output - * Fix memory leak in cmd parser - * Fix closing worker filehandles - -##### Livestatus - * Fix service parents to be always a list of host,service tupels - * Fix g_tree_foreach: assertion `tree != NULL' in logs table - -#### 1.4.0 - 11 Nov 2022 -##### Breaking Changes: - * Due to object structure changes, it is recommended to recompile any +### 1.4.1 - 01 Feb 2023 +#### Features +- None + +#### Changed +- Use /run/naemon instead of /var/run/naemon + +#### Bugfixes +- Fix bashisms in scripts +- Fix fg: no job control output +- Fix memory leak in cmd parser +- Fix closing worker filehandles + +#### Livestatus +- Fix service parents to be always a list of host,service tupels +- Fix g_tree_foreach: assertion `tree != NULL' in logs table + +--- + +### 1.4.0 - 11 Nov 2022 +#### Breaking Changes: +- Due to object structure changes, it is recommended to recompile any NEB mobules when upgrading to 1.4.0 -##### Features - * Support for expiring acknowledgments - -##### Changed - * Improvements to Debian packaging, including multiarch installs - -##### Bugfixes - * Fix a crash for external command: CHANGE_CONTACT_HOST_NOTIFICATION_TIMEPERIOD - * Fix a crash for external command: CHANGE_HOST_CHECK_TIMEPERIOD - -##### Livestatus - * Allow multiline output when submitting passive checks by allowing escaped newlines - -#### 1.3.1 - 22 Apr 2022 -##### Changed - * change homepage url to https://www.naemon.io - -##### Bugfixes - * fix running commands containing tilde sign - * improve updating last_update attribute - -##### Livestatus - * make Python API compatible with Python 2 & 3 - -#### 1.3.0 - 03 Nov 2021 -##### Features - * add vault macro neb broker api - * set environment variables in a more secure way - -##### Livestatus - * fix reload issue when using tcp listener - * fix contacts listed multiple times - -#### 1.2.4 - 03 Mar 2021 -##### Changes - * improve config check when having lots of servicegroups - * change header file location in deb/rpm packages - -##### Bugfixes - * Fix check_command in svc neb broker call - -##### Livestatus - * improve contacts column performance - -#### 1.2.3 - 07 Dec 2020 -##### Bugfixes - * fix package update on debian / ubuntu - -#### 1.2.2 - 13 Nov 2020 -##### Changes - * improved sample configuration - * improved external command help - * debian package source format changed - * debian packages changed to systemd - -##### Bugfixes - * fix scheduling flexible service downtime - * fix setting last_update whenever next_check changes - * fix worker crashing - -##### Livestatus - * improved table descriptions - * debian packages switched to systemd invoke - * debian packages source format changed - -#### 1.2.1 - 13 Jul 2020 -##### Bugfixes - * fix executing commands with pipes - * fix external command to remove downtimes by filter - -##### Livestatus - * Increase max_response_size default to 500 MiB - -#### 1.2.0 - 17 Feb 2020 -##### Features - * Add new skip check options to set a particular state on skipped checks - * CentOS 8 support - -##### Bugfixes - * Retain flap detection option over restarts - * Don't process perfdata file if perfdata is disabled - -##### Livestatus - * Add support for TCP sockets with the inet_addr option - * Add support for the statehist table, to calulate and query availability data - * Fix logging during argument parsing - * Fix deadlock when querying comments/downtimes - -#### 1.1.0 - 02 Sep 2019 -##### Features - * add internal last_update timestamp to track host/service changes - * speed up configuration check when using lots of dependencies - -##### Changed - * increased CURRENT_NEB_API_VERSION, this means you have to recompile your NEB modules - -##### Bugfixes - * bail out config check if parent host cannot be resolved - * bail out config check if group members cannot be resolved (#300) - * fix calculating group on demand macros - * fix last_hard_state when using neb modules (#287) - * fix loading neb modules multiple times - -##### Livestatus - * add new columns last_update to host and services - * send error when result set would be too large - * fix issue when reloading while processing a long query - * fix issue when parsing incomplete log entries - * fix issue with accessing downtimes and comments - - -#### 1.0.10 - 19 Mar 2019 -##### Bugfixes - * fix newline handling in spoolfiles - -##### Livestatus - * add new columns: service.parents, service.depends_notify, service.depends_exec, +#### Features +- Support for expiring acknowledgments + +#### Changed +- Improvements to Debian packaging, including multiarch installs + +#### Bugfixes +- Fix a crash for external command: CHANGE_CONTACT_HOST_NOTIFICATION_TIMEPERIOD +- Fix a crash for external command: CHANGE_HOST_CHECK_TIMEPERIOD + +#### Livestatus +- Allow multiline output when submitting passive checks by allowing escaped newlines + +--- + +### 1.3.1 - 22 Apr 2022 +#### Changed +- change homepage url to https://www.naemon.io + +#### Bugfixes +- fix running commands containing tilde sign +- improve updating last_update attribute + +#### Livestatus +- make Python API compatible with Python 2 & 3 + +--- + + +### 1.3.0 - 03 Nov 2021 +#### Features +- add vault macro neb broker api +- set environment variables in a more secure way + +#### Livestatus +- fix reload issue when using tcp listener +- fix contacts listed multiple times + +--- + + +### 1.2.4 - 03 Mar 2021 +#### Changes +- improve config check when having lots of servicegroups +- change header file location in deb/rpm packages + +#### Bugfixes +- Fix check_command in svc neb broker call + +#### Livestatus +- improve contacts column performance + +--- + + +### 1.2.3 - 07 Dec 2020 +#### Bugfixes +- fix package update on debian / ubuntu + +--- + +### 1.2.2 - 13 Nov 2020 +#### Changes +- improved sample configuration +- improved external command help +- debian package source format changed +- debian packages changed to systemd + +#### Bugfixes +- fix scheduling flexible service downtime +- fix setting last_update whenever next_check changes +- fix worker crashing + +#### Livestatus +- improved table descriptions +- debian packages switched to systemd invoke +- debian packages source format changed + +--- + +### 1.2.1 - 13 Jul 2020 +#### Bugfixes +- fix executing commands with pipes +- fix external command to remove downtimes by filter + +#### Livestatus +- Increase max_response_size default to 500 MiB + +--- + +### 1.2.0 - 17 Feb 2020 +#### Features +- Add new skip check options to set a particular state on skipped checks +- CentOS 8 support + +#### Bugfixes +- Retain flap detection option over restarts +- Don't process perfdata file if perfdata is disabled + +#### Livestatus +- Add support for TCP sockets with the inet_addr option +- Add support for the statehist table, to calulate and query availability data +- Fix logging during argument parsing +- Fix deadlock when querying comments/downtimes + +--- + + +### 1.1.0 - 02 Sep 2019 +#### Features +- add internal last_update timestamp to track host/service changes +- speed up configuration check when using lots of dependencies + +#### Changed +- increased CURRENT_NEB_API_VERSION, this means you have to recompile your NEB modules + +#### Bugfixes +- bail out config check if parent host cannot be resolved +- bail out config check if group members cannot be resolved (#300) +- fix calculating group on demand macros +- fix last_hard_state when using neb modules (#287) +- fix loading neb modules multiple times + +#### Livestatus +- add new columns last_update to host and services +- send error when result set would be too large +- fix issue when reloading while processing a long query +- fix issue when parsing incomplete log entries +- fix issue with accessing downtimes and comments + +--- + +### 1.0.10 - 19 Mar 2019 +#### Bugfixes +- fix newline handling in spoolfiles + +#### Livestatus +- add new columns: service.parents, service.depends_notify, service.depends_exec, host.depends_notify, host.depends_exec +--- + +### 1.0.9 - 18 Dec 2018 +#### Features +- Add host_down_disable_service_checks config option +- Add retained_scheduling_randomize_window setting + +#### Changed +- No on-demand host checks when service is in hard critical +- Log successful save of retention data +- Init: Increase time till SIGKILL is sent + +#### Bugfixes +- Make naemon-core depend on libnaemon +- Add conflicts/replaces tags for naemon-tools +- parse_check: Don't escape already escaped newlines +- Reload: Fix defuct for debian/ubuntu packaging (#150) +- Retain next_check schedule on restart (#156, 224) +- el6: use correct logrotate script +- fix pending dependencies +- fix orphaned checks logic +- reset is_executing flag when processing active host check result (#154) +- set CHECK_OPTION_ORPHAN_CHECK flag if check is scheduled from the orphan event handler +- fix memory leak when overriding checks +- fix query handler not returning command response +- Fix heap corruption when callback dereigsters itself + +#### Livestatus + +- make listen() backlog adjustable with 'max_backlog' option +- pass errors from the query handler back to the client +- report command errors back via livestatus COMMAND requests + +--- + +### 1.0.8 - 16 Jul 2018 +#### Features +- source defaults file if exists (#241) + +#### Changed +- _nothing_ + +#### Bugfixes +- Fix naemon-tools conflict (#242) +- Fix reload command on el6 (#239) + +--- -#### 1.0.9 - 18 Dec 2018 -##### Features - * Add host_down_disable_service_checks config option - * Add retained_scheduling_randomize_window setting - -##### Changed - * No on-demand host checks when service is in hard critical - * Log successful save of retention data - * Init: Increase time till SIGKILL is sent - -##### Bugfixes - * Make naemon-core depend on libnaemon - * Add conflicts/replaces tags for naemon-tools - * parse_check: Don't escape already escaped newlines - * Reload: Fix defuct for debian/ubuntu packaging (#150) - * Retain next_check schedule on restart (#156, 224) - * el6: use correct logrotate script - * fix pending dependencies - * fix orphaned checks logic - * reset is_executing flag when processing active host check result (#154) - * set CHECK_OPTION_ORPHAN_CHECK flag if check is scheduled from the orphan event handler - * fix memory leak when overriding checks - * fix query handler not returning command response - * Fix heap corruption when callback dereigsters itself - -##### Livestatus - - * make listen() backlog adjustable with 'max_backlog' option - * pass errors from the query handler back to the client - * report command errors back via livestatus COMMAND requests - - -#### 1.0.8 - 16 Jul 2018 -##### Features - * source defaults file if exists (#241) - -##### Changed - * _nothing_ - -##### Bugfixes - * Fix naemon-tools conflict (#242) - * Fix reload command on el6 (#239) - - -#### 1.0.7 - 01 Jun 2018 -##### Features - * Allow circular dependencies in Naemons host graph (experimental) - -##### Changed - * Do not verify config when starting daemon - * first_notification_delay starts on last hard change instead of last ok - -##### Bugfixes - * Fix various memory leaks (#200, #189) - * Fix newline escaping for check results (#153) - * Fix segfault when there is no eventbroker - * Fix segfault on invalid host_notification_commands (#213) - * Fix external command CHANGE_SVC_MODATTR (#174) - * Fix compilation with GCC 7 & 8 (#184, #228, #229) - * Fix notification is sent even if a service is in a schedule flexible downtime - * Fix triggered scheduled downtime is removed - * Fix downtime comment ids increment on reload - * Output an error exit code if daemonization fails instead OK - * Restart Naemon on SIGHUP instead of killing (#192) - * Fix Naemon killing wrong processes if PID wrap-around is too short (#211) - * Reload: fix defunct processes after reload (#150) - * Fix quoting in systemd startpre command (#204) - * Make systemd startup cleaner - * Fix logrotate on EL7 - * Do not use errno set by function calls in a library - * Documentation fix for Sticky Acknowledgments - * Make nm_g_log_handler_id extern. Fixes issue when including logging.h in external modules - -##### Removed - * shadownaemon - * distributed-monitoring from the contrib/eventhandlers folder - -##### Other - * Decouple core, livestatus and thruk - * Add more timing points - * Undeprecate check_result_path - * Remove NICE from systemd - * Format service timeout print to use the same format as host timeouts (#168) - * Lower wproc log level to debug_info - * Do not log timeouts 3 times for every timeout - * Add log message that explains why a service changes directly hard down state when the host is down - * make buildopts.h depend on Makefile - * version: append date to daily git builds - -#### 1.0.6 - 23 Jan 2017 -##### Bugfixes - * Fix CVE-2016-9566 by removing drop_privileges. Note: naemon cannot be started as root anymore. - * Fix shell command parsing for some special cases when defining environment variables in a command - * Fix custom variables persistence accros restarts for single byte values - * Fix writing to already rotated logfile - * Fix memory leak in broker_notification_data - * Fix notification commands beeing reaped to early (#137) - -#### 1.0.5 - 21 Jun 2016 -##### Bugfixes - * Fix segfault when trying to log to null pointer (#140) - * Fix naemon exiting on USR1 signal (#138, #139) - -#### 1.0.4 - 03 Jun 2016 -##### Features - * Downtimes can now be scheduled to start before their time of their scheduling - * Naemon can now start without any configured objects - * Add new NEB callback API version with better support for communicating + +### 1.0.7 - 01 Jun 2018 +#### Features +- Allow circular dependencies in Naemons host graph (experimental) + +#### Changed +- Do not verify config when starting daemon +- first_notification_delay starts on last hard change instead of last ok + +#### Bugfixes +- Fix various memory leaks (#200, #189) +- Fix newline escaping for check results (#153) +- Fix segfault when there is no eventbroker +- Fix segfault on invalid host_notification_commands (#213) +- Fix external command CHANGE_SVC_MODATTR (#174) +- Fix compilation with GCC 7 & 8 (#184, #228, #229) +- Fix notification is sent even if a service is in a schedule flexible downtime +- Fix triggered scheduled downtime is removed +- Fix downtime comment ids increment on reload +- Output an error exit code if daemonization fails instead OK +- Restart Naemon on SIGHUP instead of killing (#192) +- Fix Naemon killing wrong processes if PID wrap-around is too short (#211) +- Reload: fix defunct processes after reload (#150) +- Fix quoting in systemd startpre command (#204) +- Make systemd startup cleaner +- Fix logrotate on EL7 +- Do not use errno set by function calls in a library +- Documentation fix for Sticky Acknowledgments +- Make nm_g_log_handler_id extern. Fixes issue when including logging.h in external modules + +#### Removed +- shadownaemon +- distributed-monitoring from the contrib/eventhandlers folder + +#### Other +- Decouple core, livestatus and thruk +- Add more timing points +- Undeprecate check_result_path +- Remove NICE from systemd +- Format service timeout print to use the same format as host timeouts (#168) +- Lower wproc log level to debug_info +- Do not log timeouts 3 times for every timeout +- Add log message that explains why a service changes directly hard down state when the host is down +- make buildopts.h depend on Makefile +- version: append date to daily git builds + +--- + +### 1.0.6 - 23 Jan 2017 +#### Bugfixes +- Fix CVE-2016-9566 by removing drop_privileges. Note: naemon cannot be started as root anymore. +- Fix shell command parsing for some special cases when defining environment variables in a command +- Fix custom variables persistence accros restarts for single byte values +- Fix writing to already rotated logfile +- Fix memory leak in broker_notification_data +- Fix notification commands beeing reaped to early (#137) + +--- + +### 1.0.5 - 21 Jun 2016 +#### Bugfixes +- Fix segfault when trying to log to null pointer (#140) +- Fix naemon exiting on USR1 signal (#138, #139) + +--- + +### 1.0.4 - 03 Jun 2016 +#### Features +- Downtimes can now be scheduled to start before their time of their scheduling +- Naemon can now start without any configured objects +- Add new NEB callback API version with better support for communicating cancellation and override reasons - * Naemon now consistently logs when a notification is suppressed, along with +- Naemon now consistently logs when a notification is suppressed, along with the reason why (very useful for troubleshooting notification issues!). This feature is enabled by default, and can be overridden by setting enable_notification_suppression_reason_logging=0 in naemon.cfg. - * Scheduling logic completely overhauled to not depend on wallclock time, +- Scheduling logic completely overhauled to not depend on wallclock time, which makes it much more reliable (no more lost or orphaned events!) - * It is now possible to disable status data updates completely +- It is now possible to disable status data updates completely (status_update_interval=0) - * GLib messages are now logged to the regular outputs. +- GLib messages are now logged to the regular outputs. -##### Bugfixes - * Fix segfault which would happen when a plugin's output is one or more +#### Bugfixes +- Fix segfault which would happen when a plugin's output is one or more newlines only - * Shadownaemon: fix segfault if plugin output contains csv separator - * Fix an ancient bug where reconstructing a downtime from retention data +- Shadownaemon: fix segfault if plugin output contains csv separator +- Fix an ancient bug where reconstructing a downtime from retention data would result in double downtime alerts being emitted - * Fix another ancient race condition where a rapidly reload and starting +- Fix another ancient race condition where a rapidly reload and starting naemon would leave you with two instances running - * Stop logging if check_result_path (deprecated) is not available even +- Stop logging if check_result_path (deprecated) is not available even if it's set - * Strings in retention data are now properly escaped, fixing various bugs - * Various init script fixes - * Fix a race condition that would sometimes lead to complete deadlock - * Fix a bug where Naemon would allow duplicate objects to be created - * Replace in-tree (ha-ha) rbtree with GLib's GTree, to get rid of incorrect +- Strings in retention data are now properly escaped, fixing various bugs +- Various init script fixes +- Fix a race condition that would sometimes lead to complete deadlock +- Fix a bug where Naemon would allow duplicate objects to be created +- Replace in-tree (ha-ha) rbtree with GLib's GTree, to get rid of incorrect node removal behaviour in the former - * Fix a race condition that would sometimes occur during a reload - * Fix a bug in signal handling code which would sometimes cause the command +- Fix a race condition that would sometimes occur during a reload +- Fix a bug in signal handling code which would sometimes cause the command file worker to become defunct - * Fix a bug where the specified retry_interval of a service or host +- Fix a bug where the specified retry_interval of a service or host would not be properly respected, and the check_interval would be used instead - * Fix a potential crash (segfault) when freeing parent/child references - * Fix a bug where "stale" objects would only have one freshness check executed - * Fix improper handling of CHECK_OPTION_FORCE_EXECUTION, which would lead to +- Fix a potential crash (segfault) when freeing parent/child references +- Fix a bug where "stale" objects would only have one freshness check executed +- Fix improper handling of CHECK_OPTION_FORCE_EXECUTION, which would lead to checks not being run, despite being forcibly scheduled - * Fix a bug where Naemon wouldn't properly initialize its lock file, but +- Fix a bug where Naemon wouldn't properly initialize its lock file, but start regardless -##### Other - * Grafted Nagios git history onto Naemon's for easier code archeology - * Lots of code cleanup, typo fixes, new test cases, new assertions & +#### Other +- Grafted Nagios git history onto Naemon's for easier code archeology +- Lots of code cleanup, typo fixes, new test cases, new assertions & error handling, fixed memory leaks, logging and refactoring - * Removed an undocumented, experimental, untested "load control" feature - * Decoupled Thruk packages, we now use the official upstream Thruk packages - -##### New contributors - * Carl Helmertz (chelmertz@op5.com) - * Emil Hessman (emil@hessman.se) - * Robin Hagman (rhagman@op5.com) - * Philip Eklöf (peklof@op5.com) - * Simen Aasland (simen@opera.com) - * Tobias Sjöndin (tsjondin@op5.com) - - - -#### 1.0.3 - 29 Mar 2015 -##### Bugfixes - * shadownaemon: fix request counter - -#### 1.0.2 - 28 Mar 2015 -##### Bugfixes - * shadownaemon: remove external commands from shadownaemon (#104) - * shadownaemon: propagate last_hard_* values (Michael Kraus) - -#### 1.0.0 - 13 Feb 2015 -##### Bugfixes - * Fix shadownaemon comment and downtime synchronization - * Fix spelling errors - -#### 0.9.1 - 8 Jan 2015 -##### Code Contributors - * Robin Sonefors - * Sven Nierlein - * Andreas Ericsson - * Anton Lofgren - * Max Sikström - * Ricardo Maraschini - * Andreas Boesl - * Mathias Kettner - * Sebastian Hahn - * Daniel Wittenberg - * Johan Ryberg - * Franky Van Liedekerke - * Julian Brost - * Mikael Falkvidd - * Sven Velt - -##### Features - * The config option include_dir allows you to specify a dropdir +- Removed an undocumented, experimental, untested "load control" feature +- Decoupled Thruk packages, we now use the official upstream Thruk packages + +#### New contributors +- Carl Helmertz (chelmertz@op5.com) +- Emil Hessman (emil@hessman.se) +- Robin Hagman (rhagman@op5.com) +- Philip Eklöf (peklof@op5.com) +- Simen Aasland (simen@opera.com) +- Tobias Sjöndin (tsjondin@op5.com) + +--- + + +### 1.0.3 - 29 Mar 2015 +#### Bugfixes +- shadownaemon: fix request counter + +--- + +### 1.0.2 - 28 Mar 2015 +#### Bugfixes +- shadownaemon: remove external commands from shadownaemon (#104) +- shadownaemon: propagate last_hard_- values (Michael Kraus) + +--- + +### 1.0.0 - 13 Feb 2015 +#### Bugfixes +- Fix shadownaemon comment and downtime synchronization +- Fix spelling errors + +--- + +### 0.9.1 - 8 Jan 2015 +#### Code Contributors +- Robin Sonefors +- Sven Nierlein +- Andreas Ericsson +- Anton Lofgren +- Max Sikström +- Ricardo Maraschini +- Andreas Boesl +- Mathias Kettner +- Sebastian Hahn +- Daniel Wittenberg +- Johan Ryberg +- Franky Van Liedekerke +- Julian Brost +- Mikael Falkvidd +- Sven Velt + +#### Features +- The config option include_dir allows you to specify a dropdir where main configuration files can be read from. This should help module authors quite a bit. - * We now have pkgconfig support, making it easier to create +- We now have pkgconfig support, making it easier to create build- and install systems for modules. -##### Bugfixes - * Workers are now prevented from becoming zombies - * Workers should be choked far less often - * Check scheduling will now always be consistently done - * Checks should clump up a lot less, keeping system load smoother - * Several crash-on-close with corner-case configurations are fixed - * Several small memory leaks are fixed - * Check output should no longer be lost unless the kernel drops it +#### Bugfixes +- Workers are now prevented from becoming zombies +- Workers should be choked far less often +- Check scheduling will now always be consistently done +- Checks should clump up a lot less, keeping system load smoother +- Several crash-on-close with corner-case configurations are fixed +- Several small memory leaks are fixed +- Check output should no longer be lost unless the kernel drops it due to out-of-memory errors - * We will now always shut down fairly gracefully on OOM errors - * Workers should no longer cause zombies to appear - * Several fixes have been made to make building on OSX work +- We will now always shut down fairly gracefully on OOM errors +- Workers should no longer cause zombies to appear +- Several fixes have been made to make building on OSX work better - * Submitting passive check results for in-flight active checks +- Submitting passive check results for in-flight active checks will no longer cause crashes -#### 0.8 - 14 Feb 2014 - - * Based on nagios 4.0.2 - * Rename a lot of things, replace build system, etc. - * The CGIs are gone - use Thruk instead. - * Remove the upstream version check - use your package manager instead. - * New NEB callback, NEBATTR_CHECK_ALERT, when a check generates an alert. - * Allow contactgroups without members but having contactgroup_members. - * No longer spam Naemon log when checks time out. - * All positive values for ACKNOWLEDGE_{HOST,CHECK} means TRUE. - * Check output parsing rewritten. - - Fixes crashes, bugs, and improves performance. - * Log rotation is done by logrotate instead of in-core log rotation. - * Fix misc crashes, speed up misc areas, and other bug fixes. +--- + +### 0.8 - 14 Feb 2014 + +- Based on nagios 4.0.2 +- Rename a lot of things, replace build system, etc. +- The CGIs are gone- use Thruk instead. +- Remove the upstream version check- use your package manager instead. +- New NEB callback, NEBATTR_CHECK_ALERT, when a check generates an alert. +- Allow contactgroups without members but having contactgroup_members. +- No longer spam Naemon log when checks time out. +- All positive values for ACKNOWLEDGE_{HOST,CHECK} means TRUE. +- Check output parsing rewritten. + - Fixes crashes, bugs, and improves performance. +- Log rotation is done by logrotate instead of in-core log rotation. +- Fix misc crashes, speed up misc areas, and other bug fixes. diff --git a/download/index.md b/download.md similarity index 81% rename from download/index.md rename to download.md index 68457f2..1c81638 100644 --- a/download/index.md +++ b/download.md @@ -1,11 +1,10 @@ ---- -layout: default -title: Downloads ---- -### Stable release +# Download -
Latest stable release: {{ site.release_version }}, released {{ site.release_date }}
+## Stable release + +> [!TIP] +> Latest stable release: **{{ $RELEASE_VERSION }}**, released **{{ $RELEASE_DATE }}** We have build binary packages for several versions of RedHat/CentOS, Debian, SLES, and Ubuntu which are available via the [openSUSE Build Service](https://build.opensuse.org/project/show/home:naemon). After the repository [has been setup](#repo_setup), you just @@ -15,7 +14,7 @@ The binary packages can also be downloaded here: - + - + - + - + - +
Enterprise Linux (Red Hat, RockyLinux, AlmaLinux etc) EL9
@@ -24,7 +23,7 @@ The binary packages can also be downloaded here:
SLES 15 SP6
@@ -33,7 +32,7 @@ The binary packages can also be downloaded here:
Debian Testing
@@ -44,7 +43,7 @@ The binary packages can also be downloaded here:
Ubuntu 24.04 Noble Numbat
@@ -60,7 +59,7 @@ The binary packages can also be downloaded here:
Fedora fc40
@@ -72,84 +71,81 @@ The binary packages can also be downloaded here:
-### Installing via repository -Packages are available either using the openSUSE Build Service (below) or via the [Consol repository](http://labs.consol.de/repo/stable/). +## Installing via repository {#repo_setup} + +Packages are available either using the openSUSE Build Service (below) or via the [ConSol repository](http://labs.consol.de/repo/stable/). This list is not synchronized with the build server, so there might be more repositories available at the [openSUSE Build Service Repository Overview](https://build.opensuse.org/repositories/home:naemon). -#### Debian / Ubuntu -##### Install GPG key +### Debian / Ubuntu +#### Install GPG key First you import the GPG key. -``` +```bash curl -s -o /etc/apt/trusted.gpg.d/naemon.asc "https://build.opensuse.org/projects/home:naemon/signing_keys/download?kind=gpg" - ``` -##### Ubuntu -``` +#### Ubuntu +```bash echo "deb [signed-by=/etc/apt/trusted.gpg.d/naemon.asc] http://download.opensuse.org/repositories/home:/naemon/xUbuntu_$(lsb_release -rs)/ ./" >> /etc/apt/sources.list.d/naemon-stable.list apt-get update ``` -##### Debian -``` +#### Debian +```bash echo "deb [signed-by=/etc/apt/trusted.gpg.d/naemon.asc] http://download.opensuse.org/repositories/home:/naemon/Debian_$(lsb_release -rs)/ ./" >> /etc/apt/sources.list.d/naemon-stable.list apt-get update ``` -#### Centos / Redhat / Rocky / Alma -When using Centos or Redhat you may have to add the EPEL repository to resolve all dependencies. +### Red Hat / Rocky Linux / AlmaLinux +You may have to add the EPEL repository to resolve all dependencies. -##### 7 -``` +#### EL 7 +```bash curl -s https://download.opensuse.org/repositories/home:/naemon/CentOS_7/home:naemon.repo >> /etc/yum.repos.d/naemon-stable.repo ``` -##### 8 -``` +#### EL 8 +```bash curl -s https://download.opensuse.org/repositories/home:/naemon/AlmaLinux_8/home:naemon.repo >> /etc/yum.repos.d/naemon-stable.repo ``` -##### 9 -``` +#### EL 9 +```bash curl -s https://download.opensuse.org/repositories/home:/naemon/AlmaLinux_9/home:naemon.repo >> /etc/yum.repos.d/naemon-stable.repo ``` #### Fedora -``` +```bash curl -s https://download.opensuse.org/repositories/home:/naemon/Fedora_$(cut -f 3 -d " " /etc/redhat-release)/home:naemon.repo >> /etc/yum.repos.d/naemon-stable.repo ``` -#### Suse Linux Enterprise +### Suse Linux Enterprise -##### SLES 15 SP4 -``` +#### SLES 15 SP4 +```bash zypper addrepo -f https://download.opensuse.org/repositories/home:/naemon/15.4/home:naemon.repo ``` -##### SLES 15 SP5 -``` +#### SLES 15 SP5 +```bash zypper addrepo -f https://download.opensuse.org/repositories/home:/naemon/15.5/home:naemon.repo ``` - -### Development snapshot +## Development snapshot {#development_snapshot} For new user, we recommend you grab one of our nightly binary snapshots. You can also build yourself from source. CI core build status: Build Status
CI suite build status: Build Status -#### openSuse Build Service +### openSuse Build Service There are daily builds available for recent platforms at the [obs home:naemon:daily project](https://build.opensuse.org/project/show/home:naemon:daily) -#### Binary packages -We build nightly packages for several versions of CentOS/RedHat, Debian, SLES, and Ubuntu. First [install the Consol testing repository](http://labs.consol.de/repo/testing/), and then install the `naemon` package with your package manager. - -#### Source -Download the latest development source code from [github](http://github.com/naemon/naemon). +### Binary packages +We build nightly packages for several versions of CentOS/RedHat, Debian, SLES, and Ubuntu. First [install the ConSol testing repository](http://labs.consol.de/repo/testing/), and then install the `naemon` package with your package manager. -### Getting started +## Source +Download the latest development source code from [GitHub](http://github.com/naemon/naemon). -See the [getting started](/documentation/usersguide/toc.html#getting_started) document in the users guide. +See the [Build Naemon From Scratch](/documentation/developer/build) document in the developer guide. diff --git a/includes/contacts.md b/includes/contacts.md new file mode 100644 index 0000000..edf2fe0 --- /dev/null +++ b/includes/contacts.md @@ -0,0 +1,4 @@ +- Slack channel: [invite link](https://join.slack.com/t/opensourcemonitoring/shared_invite/enQtODE3NTQyMTcxMTg1LWZiMDQyYzBjMDI4OGI2NDJlMzExZWE0NjcyMTg3MWUzMWRjYzIzYzRjODJiZDUyNTFlZDEwNDVlZmI1NmUwMDY) +- Mailing lists: [users list](https://www.monitoring-lists.org/list/listinfo/naemon-users/) | [developers list](https://www.monitoring-lists.org/list/listinfo/naemon-dev/) +- IRC channels: [#naemon](irc://libera.chat/naemon) and [#naemon-devel](irc://libera.chat/naemon-devel) on libera.chat. ([WebChat](https://kiwiirc.com/nextclient/irc.libera.chat/#naemon)) +- [Github](https://github.com/naemon) with code and bug tracker. diff --git a/index.html b/index.html deleted file mode 100644 index 4ae085b..0000000 --- a/index.html +++ /dev/null @@ -1,54 +0,0 @@ ---- -layout: raw -title: Monitoring Suite ---- -
-
-

naemon logo

-

Naemon is the new monitoring suite that aims to be fast, stable and innovative while giving you a clear view of the state of your network and applications.

-

The latest version of Naemon is {{ site.release_version }}, released {{ site.release_date }}.

- -
-
- -
-
-
-

The Core

-

The Naemon core is a network monitoring tool based on the Nagios 4 core, but with many bug fixes, new features, and performance enhancements. If you today use Nagios, you should switch to Naemon to get bugfixes, new features, and performance enhancements.

-
-
-

The Suite

-

Rather than the Nagios way of putting everything from UI to check scheduler in one package, we like to keep things more modular. The sum of all the modules that we build and ship will give you a good monitoring suite.

-
-
-

The Project

-

Naemon is created by the community, for the community, and (soon) owned by the community ourselves. This lets us be governed by our needs, rather than corporate profit motives.

-
-
- -
diff --git a/index.md b/index.md new file mode 100644 index 0000000..03b12ac --- /dev/null +++ b/index.md @@ -0,0 +1,37 @@ +--- +# https://vitepress.dev/reference/default-theme-home-page +layout: home + +hero: + name: "Naemon" + text: "Network Application and Event Monitor" + tagline: Naemon is the new monitoring suite that aims to be fast, stable and innovative while giving you a clear view of the state of your network and applications. + image: + light: ./images/pixel/naemon_light.png + dark: ./images/pixel/naemon_dark.png + alt: Naemon Logo + actions: + - theme: brand + text: Download + link: /download + - theme: alt + text: Quick Start + link: /documentation + +features: + - title: The Core + details: The Naemon core is a network monitoring tool based on the Nagios 4 core, but with many bug fixes, new features, and performance enhancements. If you today use Nagios, you should switch to Naemon to get bugfixes, new features, and performance enhancements. + link: /documentation/usersguide/whatsnew + linkText: Changelog + + - title: The Suite + details: Rather than the Nagios way of putting everything from UI to check scheduler in one package, we like to keep things more modular. The sum of all the modules that we build and ship will give you a good monitoring suite. + link: /suite + linkText: Suite Information + + - title: The Project + details: Naemon is created by the community, for the community, and (soon) owned by the community ourselves. This lets us be governed by our needs, rather than corporate profit motives. + link: /project + linkText: Project Information +--- + diff --git a/CNAME b/legacy/CNAME similarity index 100% rename from CNAME rename to legacy/CNAME diff --git a/Gemfile b/legacy/Gemfile similarity index 100% rename from Gemfile rename to legacy/Gemfile diff --git a/LICENSE b/legacy/LICENSE similarity index 100% rename from LICENSE rename to legacy/LICENSE diff --git a/Makefile b/legacy/Makefile similarity index 100% rename from Makefile rename to legacy/Makefile diff --git a/_config.yml b/legacy/_config.yml similarity index 100% rename from _config.yml rename to legacy/_config.yml diff --git a/_includes/affix.html b/legacy/_includes/affix.html similarity index 100% rename from _includes/affix.html rename to legacy/_includes/affix.html diff --git a/_includes/contacts.md b/legacy/_includes/contacts.md similarity index 100% rename from _includes/contacts.md rename to legacy/_includes/contacts.md diff --git a/_includes/more_details_required.md b/legacy/_includes/more_details_required.md similarity index 100% rename from _includes/more_details_required.md rename to legacy/_includes/more_details_required.md diff --git a/_includes/review_required.md b/legacy/_includes/review_required.md similarity index 100% rename from _includes/review_required.md rename to legacy/_includes/review_required.md diff --git a/_layouts/affix.html b/legacy/_layouts/affix.html similarity index 100% rename from _layouts/affix.html rename to legacy/_layouts/affix.html diff --git a/_layouts/default.html b/legacy/_layouts/default.html similarity index 100% rename from _layouts/default.html rename to legacy/_layouts/default.html diff --git a/_layouts/doc.html b/legacy/_layouts/doc.html similarity index 100% rename from _layouts/doc.html rename to legacy/_layouts/doc.html diff --git a/_layouts/doctoc.html b/legacy/_layouts/doctoc.html similarity index 100% rename from _layouts/doctoc.html rename to legacy/_layouts/doctoc.html diff --git a/_layouts/nil.html b/legacy/_layouts/nil.html similarity index 100% rename from _layouts/nil.html rename to legacy/_layouts/nil.html diff --git a/_layouts/post.html b/legacy/_layouts/post.html similarity index 100% rename from _layouts/post.html rename to legacy/_layouts/post.html diff --git a/_layouts/raw.html b/legacy/_layouts/raw.html similarity index 100% rename from _layouts/raw.html rename to legacy/_layouts/raw.html diff --git a/_layouts/redirect.html b/legacy/_layouts/redirect.html similarity index 100% rename from _layouts/redirect.html rename to legacy/_layouts/redirect.html diff --git a/_posts/2014-02-01-quality-work.md b/legacy/_posts/2014-02-01-quality-work.md similarity index 100% rename from _posts/2014-02-01-quality-work.md rename to legacy/_posts/2014-02-01-quality-work.md diff --git a/_posts/2014-02-01-release.md b/legacy/_posts/2014-02-01-release.md similarity index 100% rename from _posts/2014-02-01-release.md rename to legacy/_posts/2014-02-01-release.md diff --git a/_posts/2014-02-09-docs.md b/legacy/_posts/2014-02-09-docs.md similarity index 100% rename from _posts/2014-02-09-docs.md rename to legacy/_posts/2014-02-09-docs.md diff --git a/_posts/2014-02-14-release-day.md b/legacy/_posts/2014-02-14-release-day.md similarity index 100% rename from _posts/2014-02-14-release-day.md rename to legacy/_posts/2014-02-14-release-day.md diff --git a/_posts/2014-03-22-docs.md b/legacy/_posts/2014-03-22-docs.md similarity index 100% rename from _posts/2014-03-22-docs.md rename to legacy/_posts/2014-03-22-docs.md diff --git a/_posts/2014-08-27-on-the-road.md b/legacy/_posts/2014-08-27-on-the-road.md similarity index 100% rename from _posts/2014-08-27-on-the-road.md rename to legacy/_posts/2014-08-27-on-the-road.md diff --git a/_posts/2015-03-30-release-day.md b/legacy/_posts/2015-03-30-release-day.md similarity index 100% rename from _posts/2015-03-30-release-day.md rename to legacy/_posts/2015-03-30-release-day.md diff --git a/_posts/2016-06-03-release-1.0.4.md b/legacy/_posts/2016-06-03-release-1.0.4.md similarity index 100% rename from _posts/2016-06-03-release-1.0.4.md rename to legacy/_posts/2016-06-03-release-1.0.4.md diff --git a/_posts/2016-06-21-release-1.0.5.md b/legacy/_posts/2016-06-21-release-1.0.5.md similarity index 100% rename from _posts/2016-06-21-release-1.0.5.md rename to legacy/_posts/2016-06-21-release-1.0.5.md diff --git a/_posts/2017-01-23-release-1.0.6.md b/legacy/_posts/2017-01-23-release-1.0.6.md similarity index 100% rename from _posts/2017-01-23-release-1.0.6.md rename to legacy/_posts/2017-01-23-release-1.0.6.md diff --git a/_posts/2017-11-01-vulnerabilities.md b/legacy/_posts/2017-11-01-vulnerabilities.md similarity index 100% rename from _posts/2017-11-01-vulnerabilities.md rename to legacy/_posts/2017-11-01-vulnerabilities.md diff --git a/_posts/2018-06-01-release-1.0.7.md b/legacy/_posts/2018-06-01-release-1.0.7.md similarity index 100% rename from _posts/2018-06-01-release-1.0.7.md rename to legacy/_posts/2018-06-01-release-1.0.7.md diff --git a/_posts/2018-07-16-release-1.0.8.md b/legacy/_posts/2018-07-16-release-1.0.8.md similarity index 100% rename from _posts/2018-07-16-release-1.0.8.md rename to legacy/_posts/2018-07-16-release-1.0.8.md diff --git a/_posts/2018-08-13-cve.md b/legacy/_posts/2018-08-13-cve.md similarity index 100% rename from _posts/2018-08-13-cve.md rename to legacy/_posts/2018-08-13-cve.md diff --git a/_posts/2018-12-18-release-1.0.9.md b/legacy/_posts/2018-12-18-release-1.0.9.md similarity index 100% rename from _posts/2018-12-18-release-1.0.9.md rename to legacy/_posts/2018-12-18-release-1.0.9.md diff --git a/_posts/2019-03-19-release-1.0.10.md b/legacy/_posts/2019-03-19-release-1.0.10.md similarity index 100% rename from _posts/2019-03-19-release-1.0.10.md rename to legacy/_posts/2019-03-19-release-1.0.10.md diff --git a/_posts/2019-09-05-release-1.1.0.md b/legacy/_posts/2019-09-05-release-1.1.0.md similarity index 100% rename from _posts/2019-09-05-release-1.1.0.md rename to legacy/_posts/2019-09-05-release-1.1.0.md diff --git a/_posts/2020-02-17-release-1.2.0.md b/legacy/_posts/2020-02-17-release-1.2.0.md similarity index 100% rename from _posts/2020-02-17-release-1.2.0.md rename to legacy/_posts/2020-02-17-release-1.2.0.md diff --git a/_posts/2020-11-13-release-1.2.2.md b/legacy/_posts/2020-11-13-release-1.2.2.md similarity index 100% rename from _posts/2020-11-13-release-1.2.2.md rename to legacy/_posts/2020-11-13-release-1.2.2.md diff --git a/_posts/2020-12-07-release-1.2.3.md b/legacy/_posts/2020-12-07-release-1.2.3.md similarity index 100% rename from _posts/2020-12-07-release-1.2.3.md rename to legacy/_posts/2020-12-07-release-1.2.3.md diff --git a/_posts/2021-03-03-release-1.2.4.md b/legacy/_posts/2021-03-03-release-1.2.4.md similarity index 100% rename from _posts/2021-03-03-release-1.2.4.md rename to legacy/_posts/2021-03-03-release-1.2.4.md diff --git a/_posts/2021-05-27-irc.md b/legacy/_posts/2021-05-27-irc.md similarity index 100% rename from _posts/2021-05-27-irc.md rename to legacy/_posts/2021-05-27-irc.md diff --git a/_posts/2021-11-03-release-1.3.0.md b/legacy/_posts/2021-11-03-release-1.3.0.md similarity index 100% rename from _posts/2021-11-03-release-1.3.0.md rename to legacy/_posts/2021-11-03-release-1.3.0.md diff --git a/_posts/2022-04-22-release-1.3.1.md b/legacy/_posts/2022-04-22-release-1.3.1.md similarity index 100% rename from _posts/2022-04-22-release-1.3.1.md rename to legacy/_posts/2022-04-22-release-1.3.1.md diff --git a/_posts/2022-11-11-release-1.4.0.md b/legacy/_posts/2022-11-11-release-1.4.0.md similarity index 100% rename from _posts/2022-11-11-release-1.4.0.md rename to legacy/_posts/2022-11-11-release-1.4.0.md diff --git a/_posts/2023-02-02-release-1.4.1.md b/legacy/_posts/2023-02-02-release-1.4.1.md similarity index 100% rename from _posts/2023-02-02-release-1.4.1.md rename to legacy/_posts/2023-02-02-release-1.4.1.md diff --git a/_posts/2024-01-04-release-1.4.2.md b/legacy/_posts/2024-01-04-release-1.4.2.md similarity index 100% rename from _posts/2024-01-04-release-1.4.2.md rename to legacy/_posts/2024-01-04-release-1.4.2.md diff --git a/_posts/2024-11-13-OSMC-2024.md b/legacy/_posts/2024-11-13-OSMC-2024.md similarity index 100% rename from _posts/2024-11-13-OSMC-2024.md rename to legacy/_posts/2024-11-13-OSMC-2024.md diff --git a/_posts/2024-11-19-release-1.4.3.md b/legacy/_posts/2024-11-19-release-1.4.3.md similarity index 100% rename from _posts/2024-11-19-release-1.4.3.md rename to legacy/_posts/2024-11-19-release-1.4.3.md diff --git a/core.md b/legacy/core.md similarity index 100% rename from core.md rename to legacy/core.md diff --git a/css/bootstrap-sortable.css b/legacy/css/bootstrap-sortable.css similarity index 100% rename from css/bootstrap-sortable.css rename to legacy/css/bootstrap-sortable.css diff --git a/css/bootstrap.min.3.1.0.css b/legacy/css/bootstrap.min.3.1.0.css similarity index 100% rename from css/bootstrap.min.3.1.0.css rename to legacy/css/bootstrap.min.3.1.0.css diff --git a/css/doc.css b/legacy/css/doc.css similarity index 100% rename from css/doc.css rename to legacy/css/doc.css diff --git a/css/main.css b/legacy/css/main.css similarity index 100% rename from css/main.css rename to legacy/css/main.css diff --git a/css/syntax.css b/legacy/css/syntax.css similarity index 100% rename from css/syntax.css rename to legacy/css/syntax.css diff --git a/documentation/developer/externalcommands/.gitignore b/legacy/documentation/developer/externalcommands/.gitignore similarity index 100% rename from documentation/developer/externalcommands/.gitignore rename to legacy/documentation/developer/externalcommands/.gitignore diff --git a/documentation/developer/externalcommands/acknowledge_host_problem.md b/legacy/documentation/developer/externalcommands/acknowledge_host_problem.md similarity index 100% rename from documentation/developer/externalcommands/acknowledge_host_problem.md rename to legacy/documentation/developer/externalcommands/acknowledge_host_problem.md diff --git a/documentation/developer/externalcommands/acknowledge_host_problem_expire.md b/legacy/documentation/developer/externalcommands/acknowledge_host_problem_expire.md similarity index 100% rename from documentation/developer/externalcommands/acknowledge_host_problem_expire.md rename to legacy/documentation/developer/externalcommands/acknowledge_host_problem_expire.md diff --git a/documentation/developer/externalcommands/acknowledge_svc_problem.md b/legacy/documentation/developer/externalcommands/acknowledge_svc_problem.md similarity index 100% rename from documentation/developer/externalcommands/acknowledge_svc_problem.md rename to legacy/documentation/developer/externalcommands/acknowledge_svc_problem.md diff --git a/documentation/developer/externalcommands/acknowledge_svc_problem_expire.md b/legacy/documentation/developer/externalcommands/acknowledge_svc_problem_expire.md similarity index 100% rename from documentation/developer/externalcommands/acknowledge_svc_problem_expire.md rename to legacy/documentation/developer/externalcommands/acknowledge_svc_problem_expire.md diff --git a/documentation/developer/externalcommands/add_host_comment.md b/legacy/documentation/developer/externalcommands/add_host_comment.md similarity index 100% rename from documentation/developer/externalcommands/add_host_comment.md rename to legacy/documentation/developer/externalcommands/add_host_comment.md diff --git a/documentation/developer/externalcommands/add_svc_comment.md b/legacy/documentation/developer/externalcommands/add_svc_comment.md similarity index 100% rename from documentation/developer/externalcommands/add_svc_comment.md rename to legacy/documentation/developer/externalcommands/add_svc_comment.md diff --git a/documentation/developer/externalcommands/change_contact_host_notification_timeperiod.md b/legacy/documentation/developer/externalcommands/change_contact_host_notification_timeperiod.md similarity index 100% rename from documentation/developer/externalcommands/change_contact_host_notification_timeperiod.md rename to legacy/documentation/developer/externalcommands/change_contact_host_notification_timeperiod.md diff --git a/documentation/developer/externalcommands/change_contact_modattr.md b/legacy/documentation/developer/externalcommands/change_contact_modattr.md similarity index 100% rename from documentation/developer/externalcommands/change_contact_modattr.md rename to legacy/documentation/developer/externalcommands/change_contact_modattr.md diff --git a/documentation/developer/externalcommands/change_contact_modhattr.md b/legacy/documentation/developer/externalcommands/change_contact_modhattr.md similarity index 100% rename from documentation/developer/externalcommands/change_contact_modhattr.md rename to legacy/documentation/developer/externalcommands/change_contact_modhattr.md diff --git a/documentation/developer/externalcommands/change_contact_modsattr.md b/legacy/documentation/developer/externalcommands/change_contact_modsattr.md similarity index 100% rename from documentation/developer/externalcommands/change_contact_modsattr.md rename to legacy/documentation/developer/externalcommands/change_contact_modsattr.md diff --git a/documentation/developer/externalcommands/change_contact_svc_notification_timeperiod.md b/legacy/documentation/developer/externalcommands/change_contact_svc_notification_timeperiod.md similarity index 100% rename from documentation/developer/externalcommands/change_contact_svc_notification_timeperiod.md rename to legacy/documentation/developer/externalcommands/change_contact_svc_notification_timeperiod.md diff --git a/documentation/developer/externalcommands/change_custom_contact_var.md b/legacy/documentation/developer/externalcommands/change_custom_contact_var.md similarity index 100% rename from documentation/developer/externalcommands/change_custom_contact_var.md rename to legacy/documentation/developer/externalcommands/change_custom_contact_var.md diff --git a/documentation/developer/externalcommands/change_custom_host_var.md b/legacy/documentation/developer/externalcommands/change_custom_host_var.md similarity index 100% rename from documentation/developer/externalcommands/change_custom_host_var.md rename to legacy/documentation/developer/externalcommands/change_custom_host_var.md diff --git a/documentation/developer/externalcommands/change_custom_svc_var.md b/legacy/documentation/developer/externalcommands/change_custom_svc_var.md similarity index 100% rename from documentation/developer/externalcommands/change_custom_svc_var.md rename to legacy/documentation/developer/externalcommands/change_custom_svc_var.md diff --git a/documentation/developer/externalcommands/change_global_host_event_handler.md b/legacy/documentation/developer/externalcommands/change_global_host_event_handler.md similarity index 100% rename from documentation/developer/externalcommands/change_global_host_event_handler.md rename to legacy/documentation/developer/externalcommands/change_global_host_event_handler.md diff --git a/documentation/developer/externalcommands/change_global_svc_event_handler.md b/legacy/documentation/developer/externalcommands/change_global_svc_event_handler.md similarity index 100% rename from documentation/developer/externalcommands/change_global_svc_event_handler.md rename to legacy/documentation/developer/externalcommands/change_global_svc_event_handler.md diff --git a/documentation/developer/externalcommands/change_host_check_command.md b/legacy/documentation/developer/externalcommands/change_host_check_command.md similarity index 100% rename from documentation/developer/externalcommands/change_host_check_command.md rename to legacy/documentation/developer/externalcommands/change_host_check_command.md diff --git a/documentation/developer/externalcommands/change_host_check_timeperiod.md b/legacy/documentation/developer/externalcommands/change_host_check_timeperiod.md similarity index 100% rename from documentation/developer/externalcommands/change_host_check_timeperiod.md rename to legacy/documentation/developer/externalcommands/change_host_check_timeperiod.md diff --git a/documentation/developer/externalcommands/change_host_event_handler.md b/legacy/documentation/developer/externalcommands/change_host_event_handler.md similarity index 100% rename from documentation/developer/externalcommands/change_host_event_handler.md rename to legacy/documentation/developer/externalcommands/change_host_event_handler.md diff --git a/documentation/developer/externalcommands/change_host_modattr.md b/legacy/documentation/developer/externalcommands/change_host_modattr.md similarity index 100% rename from documentation/developer/externalcommands/change_host_modattr.md rename to legacy/documentation/developer/externalcommands/change_host_modattr.md diff --git a/documentation/developer/externalcommands/change_host_notification_timeperiod.md b/legacy/documentation/developer/externalcommands/change_host_notification_timeperiod.md similarity index 100% rename from documentation/developer/externalcommands/change_host_notification_timeperiod.md rename to legacy/documentation/developer/externalcommands/change_host_notification_timeperiod.md diff --git a/documentation/developer/externalcommands/change_max_host_check_attempts.md b/legacy/documentation/developer/externalcommands/change_max_host_check_attempts.md similarity index 100% rename from documentation/developer/externalcommands/change_max_host_check_attempts.md rename to legacy/documentation/developer/externalcommands/change_max_host_check_attempts.md diff --git a/documentation/developer/externalcommands/change_max_svc_check_attempts.md b/legacy/documentation/developer/externalcommands/change_max_svc_check_attempts.md similarity index 100% rename from documentation/developer/externalcommands/change_max_svc_check_attempts.md rename to legacy/documentation/developer/externalcommands/change_max_svc_check_attempts.md diff --git a/documentation/developer/externalcommands/change_normal_host_check_interval.md b/legacy/documentation/developer/externalcommands/change_normal_host_check_interval.md similarity index 100% rename from documentation/developer/externalcommands/change_normal_host_check_interval.md rename to legacy/documentation/developer/externalcommands/change_normal_host_check_interval.md diff --git a/documentation/developer/externalcommands/change_normal_svc_check_interval.md b/legacy/documentation/developer/externalcommands/change_normal_svc_check_interval.md similarity index 100% rename from documentation/developer/externalcommands/change_normal_svc_check_interval.md rename to legacy/documentation/developer/externalcommands/change_normal_svc_check_interval.md diff --git a/documentation/developer/externalcommands/change_retry_host_check_interval.md b/legacy/documentation/developer/externalcommands/change_retry_host_check_interval.md similarity index 100% rename from documentation/developer/externalcommands/change_retry_host_check_interval.md rename to legacy/documentation/developer/externalcommands/change_retry_host_check_interval.md diff --git a/documentation/developer/externalcommands/change_retry_svc_check_interval.md b/legacy/documentation/developer/externalcommands/change_retry_svc_check_interval.md similarity index 100% rename from documentation/developer/externalcommands/change_retry_svc_check_interval.md rename to legacy/documentation/developer/externalcommands/change_retry_svc_check_interval.md diff --git a/documentation/developer/externalcommands/change_svc_check_command.md b/legacy/documentation/developer/externalcommands/change_svc_check_command.md similarity index 100% rename from documentation/developer/externalcommands/change_svc_check_command.md rename to legacy/documentation/developer/externalcommands/change_svc_check_command.md diff --git a/documentation/developer/externalcommands/change_svc_check_timeperiod.md b/legacy/documentation/developer/externalcommands/change_svc_check_timeperiod.md similarity index 100% rename from documentation/developer/externalcommands/change_svc_check_timeperiod.md rename to legacy/documentation/developer/externalcommands/change_svc_check_timeperiod.md diff --git a/documentation/developer/externalcommands/change_svc_event_handler.md b/legacy/documentation/developer/externalcommands/change_svc_event_handler.md similarity index 100% rename from documentation/developer/externalcommands/change_svc_event_handler.md rename to legacy/documentation/developer/externalcommands/change_svc_event_handler.md diff --git a/documentation/developer/externalcommands/change_svc_modattr.md b/legacy/documentation/developer/externalcommands/change_svc_modattr.md similarity index 100% rename from documentation/developer/externalcommands/change_svc_modattr.md rename to legacy/documentation/developer/externalcommands/change_svc_modattr.md diff --git a/documentation/developer/externalcommands/change_svc_notification_timeperiod.md b/legacy/documentation/developer/externalcommands/change_svc_notification_timeperiod.md similarity index 100% rename from documentation/developer/externalcommands/change_svc_notification_timeperiod.md rename to legacy/documentation/developer/externalcommands/change_svc_notification_timeperiod.md diff --git a/documentation/developer/externalcommands/command.tpl b/legacy/documentation/developer/externalcommands/command.tpl similarity index 100% rename from documentation/developer/externalcommands/command.tpl rename to legacy/documentation/developer/externalcommands/command.tpl diff --git a/documentation/developer/externalcommands/del_all_host_comments.md b/legacy/documentation/developer/externalcommands/del_all_host_comments.md similarity index 100% rename from documentation/developer/externalcommands/del_all_host_comments.md rename to legacy/documentation/developer/externalcommands/del_all_host_comments.md diff --git a/documentation/developer/externalcommands/del_all_svc_comments.md b/legacy/documentation/developer/externalcommands/del_all_svc_comments.md similarity index 100% rename from documentation/developer/externalcommands/del_all_svc_comments.md rename to legacy/documentation/developer/externalcommands/del_all_svc_comments.md diff --git a/documentation/developer/externalcommands/del_downtime_by_host_name.md b/legacy/documentation/developer/externalcommands/del_downtime_by_host_name.md similarity index 100% rename from documentation/developer/externalcommands/del_downtime_by_host_name.md rename to legacy/documentation/developer/externalcommands/del_downtime_by_host_name.md diff --git a/documentation/developer/externalcommands/del_downtime_by_hostgroup_name.md b/legacy/documentation/developer/externalcommands/del_downtime_by_hostgroup_name.md similarity index 100% rename from documentation/developer/externalcommands/del_downtime_by_hostgroup_name.md rename to legacy/documentation/developer/externalcommands/del_downtime_by_hostgroup_name.md diff --git a/documentation/developer/externalcommands/del_downtime_by_start_time_comment.md b/legacy/documentation/developer/externalcommands/del_downtime_by_start_time_comment.md similarity index 100% rename from documentation/developer/externalcommands/del_downtime_by_start_time_comment.md rename to legacy/documentation/developer/externalcommands/del_downtime_by_start_time_comment.md diff --git a/documentation/developer/externalcommands/del_host_comment.md b/legacy/documentation/developer/externalcommands/del_host_comment.md similarity index 100% rename from documentation/developer/externalcommands/del_host_comment.md rename to legacy/documentation/developer/externalcommands/del_host_comment.md diff --git a/documentation/developer/externalcommands/del_host_downtime.md b/legacy/documentation/developer/externalcommands/del_host_downtime.md similarity index 100% rename from documentation/developer/externalcommands/del_host_downtime.md rename to legacy/documentation/developer/externalcommands/del_host_downtime.md diff --git a/documentation/developer/externalcommands/del_svc_comment.md b/legacy/documentation/developer/externalcommands/del_svc_comment.md similarity index 100% rename from documentation/developer/externalcommands/del_svc_comment.md rename to legacy/documentation/developer/externalcommands/del_svc_comment.md diff --git a/documentation/developer/externalcommands/del_svc_downtime.md b/legacy/documentation/developer/externalcommands/del_svc_downtime.md similarity index 100% rename from documentation/developer/externalcommands/del_svc_downtime.md rename to legacy/documentation/developer/externalcommands/del_svc_downtime.md diff --git a/documentation/developer/externalcommands/delay_host_notification.md b/legacy/documentation/developer/externalcommands/delay_host_notification.md similarity index 100% rename from documentation/developer/externalcommands/delay_host_notification.md rename to legacy/documentation/developer/externalcommands/delay_host_notification.md diff --git a/documentation/developer/externalcommands/delay_svc_notification.md b/legacy/documentation/developer/externalcommands/delay_svc_notification.md similarity index 100% rename from documentation/developer/externalcommands/delay_svc_notification.md rename to legacy/documentation/developer/externalcommands/delay_svc_notification.md diff --git a/documentation/developer/externalcommands/disable_all_notifications_beyond_host.md b/legacy/documentation/developer/externalcommands/disable_all_notifications_beyond_host.md similarity index 100% rename from documentation/developer/externalcommands/disable_all_notifications_beyond_host.md rename to legacy/documentation/developer/externalcommands/disable_all_notifications_beyond_host.md diff --git a/documentation/developer/externalcommands/disable_contact_host_notifications.md b/legacy/documentation/developer/externalcommands/disable_contact_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_contact_host_notifications.md rename to legacy/documentation/developer/externalcommands/disable_contact_host_notifications.md diff --git a/documentation/developer/externalcommands/disable_contact_svc_notifications.md b/legacy/documentation/developer/externalcommands/disable_contact_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_contact_svc_notifications.md rename to legacy/documentation/developer/externalcommands/disable_contact_svc_notifications.md diff --git a/documentation/developer/externalcommands/disable_contactgroup_host_notifications.md b/legacy/documentation/developer/externalcommands/disable_contactgroup_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_contactgroup_host_notifications.md rename to legacy/documentation/developer/externalcommands/disable_contactgroup_host_notifications.md diff --git a/documentation/developer/externalcommands/disable_contactgroup_svc_notifications.md b/legacy/documentation/developer/externalcommands/disable_contactgroup_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_contactgroup_svc_notifications.md rename to legacy/documentation/developer/externalcommands/disable_contactgroup_svc_notifications.md diff --git a/documentation/developer/externalcommands/disable_event_handlers.md b/legacy/documentation/developer/externalcommands/disable_event_handlers.md similarity index 100% rename from documentation/developer/externalcommands/disable_event_handlers.md rename to legacy/documentation/developer/externalcommands/disable_event_handlers.md diff --git a/documentation/developer/externalcommands/disable_flap_detection.md b/legacy/documentation/developer/externalcommands/disable_flap_detection.md similarity index 100% rename from documentation/developer/externalcommands/disable_flap_detection.md rename to legacy/documentation/developer/externalcommands/disable_flap_detection.md diff --git a/documentation/developer/externalcommands/disable_host_and_child_notifications.md b/legacy/documentation/developer/externalcommands/disable_host_and_child_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_host_and_child_notifications.md rename to legacy/documentation/developer/externalcommands/disable_host_and_child_notifications.md diff --git a/documentation/developer/externalcommands/disable_host_check.md b/legacy/documentation/developer/externalcommands/disable_host_check.md similarity index 100% rename from documentation/developer/externalcommands/disable_host_check.md rename to legacy/documentation/developer/externalcommands/disable_host_check.md diff --git a/documentation/developer/externalcommands/disable_host_event_handler.md b/legacy/documentation/developer/externalcommands/disable_host_event_handler.md similarity index 100% rename from documentation/developer/externalcommands/disable_host_event_handler.md rename to legacy/documentation/developer/externalcommands/disable_host_event_handler.md diff --git a/documentation/developer/externalcommands/disable_host_flap_detection.md b/legacy/documentation/developer/externalcommands/disable_host_flap_detection.md similarity index 100% rename from documentation/developer/externalcommands/disable_host_flap_detection.md rename to legacy/documentation/developer/externalcommands/disable_host_flap_detection.md diff --git a/documentation/developer/externalcommands/disable_host_freshness_checks.md b/legacy/documentation/developer/externalcommands/disable_host_freshness_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_host_freshness_checks.md rename to legacy/documentation/developer/externalcommands/disable_host_freshness_checks.md diff --git a/documentation/developer/externalcommands/disable_host_notifications.md b/legacy/documentation/developer/externalcommands/disable_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_host_notifications.md rename to legacy/documentation/developer/externalcommands/disable_host_notifications.md diff --git a/documentation/developer/externalcommands/disable_host_svc_checks.md b/legacy/documentation/developer/externalcommands/disable_host_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_host_svc_checks.md rename to legacy/documentation/developer/externalcommands/disable_host_svc_checks.md diff --git a/documentation/developer/externalcommands/disable_host_svc_notifications.md b/legacy/documentation/developer/externalcommands/disable_host_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_host_svc_notifications.md rename to legacy/documentation/developer/externalcommands/disable_host_svc_notifications.md diff --git a/documentation/developer/externalcommands/disable_hostgroup_host_checks.md b/legacy/documentation/developer/externalcommands/disable_hostgroup_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_hostgroup_host_checks.md rename to legacy/documentation/developer/externalcommands/disable_hostgroup_host_checks.md diff --git a/documentation/developer/externalcommands/disable_hostgroup_host_notifications.md b/legacy/documentation/developer/externalcommands/disable_hostgroup_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_hostgroup_host_notifications.md rename to legacy/documentation/developer/externalcommands/disable_hostgroup_host_notifications.md diff --git a/documentation/developer/externalcommands/disable_hostgroup_passive_host_checks.md b/legacy/documentation/developer/externalcommands/disable_hostgroup_passive_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_hostgroup_passive_host_checks.md rename to legacy/documentation/developer/externalcommands/disable_hostgroup_passive_host_checks.md diff --git a/documentation/developer/externalcommands/disable_hostgroup_passive_svc_checks.md b/legacy/documentation/developer/externalcommands/disable_hostgroup_passive_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_hostgroup_passive_svc_checks.md rename to legacy/documentation/developer/externalcommands/disable_hostgroup_passive_svc_checks.md diff --git a/documentation/developer/externalcommands/disable_hostgroup_svc_checks.md b/legacy/documentation/developer/externalcommands/disable_hostgroup_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_hostgroup_svc_checks.md rename to legacy/documentation/developer/externalcommands/disable_hostgroup_svc_checks.md diff --git a/documentation/developer/externalcommands/disable_hostgroup_svc_notifications.md b/legacy/documentation/developer/externalcommands/disable_hostgroup_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_hostgroup_svc_notifications.md rename to legacy/documentation/developer/externalcommands/disable_hostgroup_svc_notifications.md diff --git a/documentation/developer/externalcommands/disable_notifications.md b/legacy/documentation/developer/externalcommands/disable_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_notifications.md rename to legacy/documentation/developer/externalcommands/disable_notifications.md diff --git a/documentation/developer/externalcommands/disable_passive_host_checks.md b/legacy/documentation/developer/externalcommands/disable_passive_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_passive_host_checks.md rename to legacy/documentation/developer/externalcommands/disable_passive_host_checks.md diff --git a/documentation/developer/externalcommands/disable_passive_svc_checks.md b/legacy/documentation/developer/externalcommands/disable_passive_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_passive_svc_checks.md rename to legacy/documentation/developer/externalcommands/disable_passive_svc_checks.md diff --git a/documentation/developer/externalcommands/disable_performance_data.md b/legacy/documentation/developer/externalcommands/disable_performance_data.md similarity index 100% rename from documentation/developer/externalcommands/disable_performance_data.md rename to legacy/documentation/developer/externalcommands/disable_performance_data.md diff --git a/documentation/developer/externalcommands/disable_service_freshness_checks.md b/legacy/documentation/developer/externalcommands/disable_service_freshness_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_service_freshness_checks.md rename to legacy/documentation/developer/externalcommands/disable_service_freshness_checks.md diff --git a/documentation/developer/externalcommands/disable_servicegroup_host_checks.md b/legacy/documentation/developer/externalcommands/disable_servicegroup_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_servicegroup_host_checks.md rename to legacy/documentation/developer/externalcommands/disable_servicegroup_host_checks.md diff --git a/documentation/developer/externalcommands/disable_servicegroup_host_notifications.md b/legacy/documentation/developer/externalcommands/disable_servicegroup_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_servicegroup_host_notifications.md rename to legacy/documentation/developer/externalcommands/disable_servicegroup_host_notifications.md diff --git a/documentation/developer/externalcommands/disable_servicegroup_passive_host_checks.md b/legacy/documentation/developer/externalcommands/disable_servicegroup_passive_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_servicegroup_passive_host_checks.md rename to legacy/documentation/developer/externalcommands/disable_servicegroup_passive_host_checks.md diff --git a/documentation/developer/externalcommands/disable_servicegroup_passive_svc_checks.md b/legacy/documentation/developer/externalcommands/disable_servicegroup_passive_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_servicegroup_passive_svc_checks.md rename to legacy/documentation/developer/externalcommands/disable_servicegroup_passive_svc_checks.md diff --git a/documentation/developer/externalcommands/disable_servicegroup_svc_checks.md b/legacy/documentation/developer/externalcommands/disable_servicegroup_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/disable_servicegroup_svc_checks.md rename to legacy/documentation/developer/externalcommands/disable_servicegroup_svc_checks.md diff --git a/documentation/developer/externalcommands/disable_servicegroup_svc_notifications.md b/legacy/documentation/developer/externalcommands/disable_servicegroup_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_servicegroup_svc_notifications.md rename to legacy/documentation/developer/externalcommands/disable_servicegroup_svc_notifications.md diff --git a/documentation/developer/externalcommands/disable_svc_check.md b/legacy/documentation/developer/externalcommands/disable_svc_check.md similarity index 100% rename from documentation/developer/externalcommands/disable_svc_check.md rename to legacy/documentation/developer/externalcommands/disable_svc_check.md diff --git a/documentation/developer/externalcommands/disable_svc_event_handler.md b/legacy/documentation/developer/externalcommands/disable_svc_event_handler.md similarity index 100% rename from documentation/developer/externalcommands/disable_svc_event_handler.md rename to legacy/documentation/developer/externalcommands/disable_svc_event_handler.md diff --git a/documentation/developer/externalcommands/disable_svc_flap_detection.md b/legacy/documentation/developer/externalcommands/disable_svc_flap_detection.md similarity index 100% rename from documentation/developer/externalcommands/disable_svc_flap_detection.md rename to legacy/documentation/developer/externalcommands/disable_svc_flap_detection.md diff --git a/documentation/developer/externalcommands/disable_svc_notifications.md b/legacy/documentation/developer/externalcommands/disable_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/disable_svc_notifications.md rename to legacy/documentation/developer/externalcommands/disable_svc_notifications.md diff --git a/documentation/developer/externalcommands/enable_all_notifications_beyond_host.md b/legacy/documentation/developer/externalcommands/enable_all_notifications_beyond_host.md similarity index 100% rename from documentation/developer/externalcommands/enable_all_notifications_beyond_host.md rename to legacy/documentation/developer/externalcommands/enable_all_notifications_beyond_host.md diff --git a/documentation/developer/externalcommands/enable_contact_host_notifications.md b/legacy/documentation/developer/externalcommands/enable_contact_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_contact_host_notifications.md rename to legacy/documentation/developer/externalcommands/enable_contact_host_notifications.md diff --git a/documentation/developer/externalcommands/enable_contact_svc_notifications.md b/legacy/documentation/developer/externalcommands/enable_contact_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_contact_svc_notifications.md rename to legacy/documentation/developer/externalcommands/enable_contact_svc_notifications.md diff --git a/documentation/developer/externalcommands/enable_contactgroup_host_notifications.md b/legacy/documentation/developer/externalcommands/enable_contactgroup_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_contactgroup_host_notifications.md rename to legacy/documentation/developer/externalcommands/enable_contactgroup_host_notifications.md diff --git a/documentation/developer/externalcommands/enable_contactgroup_svc_notifications.md b/legacy/documentation/developer/externalcommands/enable_contactgroup_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_contactgroup_svc_notifications.md rename to legacy/documentation/developer/externalcommands/enable_contactgroup_svc_notifications.md diff --git a/documentation/developer/externalcommands/enable_event_handlers.md b/legacy/documentation/developer/externalcommands/enable_event_handlers.md similarity index 100% rename from documentation/developer/externalcommands/enable_event_handlers.md rename to legacy/documentation/developer/externalcommands/enable_event_handlers.md diff --git a/documentation/developer/externalcommands/enable_flap_detection.md b/legacy/documentation/developer/externalcommands/enable_flap_detection.md similarity index 100% rename from documentation/developer/externalcommands/enable_flap_detection.md rename to legacy/documentation/developer/externalcommands/enable_flap_detection.md diff --git a/documentation/developer/externalcommands/enable_host_and_child_notifications.md b/legacy/documentation/developer/externalcommands/enable_host_and_child_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_host_and_child_notifications.md rename to legacy/documentation/developer/externalcommands/enable_host_and_child_notifications.md diff --git a/documentation/developer/externalcommands/enable_host_check.md b/legacy/documentation/developer/externalcommands/enable_host_check.md similarity index 100% rename from documentation/developer/externalcommands/enable_host_check.md rename to legacy/documentation/developer/externalcommands/enable_host_check.md diff --git a/documentation/developer/externalcommands/enable_host_event_handler.md b/legacy/documentation/developer/externalcommands/enable_host_event_handler.md similarity index 100% rename from documentation/developer/externalcommands/enable_host_event_handler.md rename to legacy/documentation/developer/externalcommands/enable_host_event_handler.md diff --git a/documentation/developer/externalcommands/enable_host_flap_detection.md b/legacy/documentation/developer/externalcommands/enable_host_flap_detection.md similarity index 100% rename from documentation/developer/externalcommands/enable_host_flap_detection.md rename to legacy/documentation/developer/externalcommands/enable_host_flap_detection.md diff --git a/documentation/developer/externalcommands/enable_host_freshness_checks.md b/legacy/documentation/developer/externalcommands/enable_host_freshness_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_host_freshness_checks.md rename to legacy/documentation/developer/externalcommands/enable_host_freshness_checks.md diff --git a/documentation/developer/externalcommands/enable_host_notifications.md b/legacy/documentation/developer/externalcommands/enable_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_host_notifications.md rename to legacy/documentation/developer/externalcommands/enable_host_notifications.md diff --git a/documentation/developer/externalcommands/enable_host_svc_checks.md b/legacy/documentation/developer/externalcommands/enable_host_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_host_svc_checks.md rename to legacy/documentation/developer/externalcommands/enable_host_svc_checks.md diff --git a/documentation/developer/externalcommands/enable_host_svc_notifications.md b/legacy/documentation/developer/externalcommands/enable_host_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_host_svc_notifications.md rename to legacy/documentation/developer/externalcommands/enable_host_svc_notifications.md diff --git a/documentation/developer/externalcommands/enable_hostgroup_host_checks.md b/legacy/documentation/developer/externalcommands/enable_hostgroup_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_hostgroup_host_checks.md rename to legacy/documentation/developer/externalcommands/enable_hostgroup_host_checks.md diff --git a/documentation/developer/externalcommands/enable_hostgroup_host_notifications.md b/legacy/documentation/developer/externalcommands/enable_hostgroup_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_hostgroup_host_notifications.md rename to legacy/documentation/developer/externalcommands/enable_hostgroup_host_notifications.md diff --git a/documentation/developer/externalcommands/enable_hostgroup_passive_host_checks.md b/legacy/documentation/developer/externalcommands/enable_hostgroup_passive_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_hostgroup_passive_host_checks.md rename to legacy/documentation/developer/externalcommands/enable_hostgroup_passive_host_checks.md diff --git a/documentation/developer/externalcommands/enable_hostgroup_passive_svc_checks.md b/legacy/documentation/developer/externalcommands/enable_hostgroup_passive_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_hostgroup_passive_svc_checks.md rename to legacy/documentation/developer/externalcommands/enable_hostgroup_passive_svc_checks.md diff --git a/documentation/developer/externalcommands/enable_hostgroup_svc_checks.md b/legacy/documentation/developer/externalcommands/enable_hostgroup_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_hostgroup_svc_checks.md rename to legacy/documentation/developer/externalcommands/enable_hostgroup_svc_checks.md diff --git a/documentation/developer/externalcommands/enable_hostgroup_svc_notifications.md b/legacy/documentation/developer/externalcommands/enable_hostgroup_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_hostgroup_svc_notifications.md rename to legacy/documentation/developer/externalcommands/enable_hostgroup_svc_notifications.md diff --git a/documentation/developer/externalcommands/enable_notifications.md b/legacy/documentation/developer/externalcommands/enable_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_notifications.md rename to legacy/documentation/developer/externalcommands/enable_notifications.md diff --git a/documentation/developer/externalcommands/enable_passive_host_checks.md b/legacy/documentation/developer/externalcommands/enable_passive_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_passive_host_checks.md rename to legacy/documentation/developer/externalcommands/enable_passive_host_checks.md diff --git a/documentation/developer/externalcommands/enable_passive_svc_checks.md b/legacy/documentation/developer/externalcommands/enable_passive_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_passive_svc_checks.md rename to legacy/documentation/developer/externalcommands/enable_passive_svc_checks.md diff --git a/documentation/developer/externalcommands/enable_performance_data.md b/legacy/documentation/developer/externalcommands/enable_performance_data.md similarity index 100% rename from documentation/developer/externalcommands/enable_performance_data.md rename to legacy/documentation/developer/externalcommands/enable_performance_data.md diff --git a/documentation/developer/externalcommands/enable_service_freshness_checks.md b/legacy/documentation/developer/externalcommands/enable_service_freshness_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_service_freshness_checks.md rename to legacy/documentation/developer/externalcommands/enable_service_freshness_checks.md diff --git a/documentation/developer/externalcommands/enable_servicegroup_host_checks.md b/legacy/documentation/developer/externalcommands/enable_servicegroup_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_servicegroup_host_checks.md rename to legacy/documentation/developer/externalcommands/enable_servicegroup_host_checks.md diff --git a/documentation/developer/externalcommands/enable_servicegroup_host_notifications.md b/legacy/documentation/developer/externalcommands/enable_servicegroup_host_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_servicegroup_host_notifications.md rename to legacy/documentation/developer/externalcommands/enable_servicegroup_host_notifications.md diff --git a/documentation/developer/externalcommands/enable_servicegroup_passive_host_checks.md b/legacy/documentation/developer/externalcommands/enable_servicegroup_passive_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_servicegroup_passive_host_checks.md rename to legacy/documentation/developer/externalcommands/enable_servicegroup_passive_host_checks.md diff --git a/documentation/developer/externalcommands/enable_servicegroup_passive_svc_checks.md b/legacy/documentation/developer/externalcommands/enable_servicegroup_passive_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_servicegroup_passive_svc_checks.md rename to legacy/documentation/developer/externalcommands/enable_servicegroup_passive_svc_checks.md diff --git a/documentation/developer/externalcommands/enable_servicegroup_svc_checks.md b/legacy/documentation/developer/externalcommands/enable_servicegroup_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/enable_servicegroup_svc_checks.md rename to legacy/documentation/developer/externalcommands/enable_servicegroup_svc_checks.md diff --git a/documentation/developer/externalcommands/enable_servicegroup_svc_notifications.md b/legacy/documentation/developer/externalcommands/enable_servicegroup_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_servicegroup_svc_notifications.md rename to legacy/documentation/developer/externalcommands/enable_servicegroup_svc_notifications.md diff --git a/documentation/developer/externalcommands/enable_svc_check.md b/legacy/documentation/developer/externalcommands/enable_svc_check.md similarity index 100% rename from documentation/developer/externalcommands/enable_svc_check.md rename to legacy/documentation/developer/externalcommands/enable_svc_check.md diff --git a/documentation/developer/externalcommands/enable_svc_event_handler.md b/legacy/documentation/developer/externalcommands/enable_svc_event_handler.md similarity index 100% rename from documentation/developer/externalcommands/enable_svc_event_handler.md rename to legacy/documentation/developer/externalcommands/enable_svc_event_handler.md diff --git a/documentation/developer/externalcommands/enable_svc_flap_detection.md b/legacy/documentation/developer/externalcommands/enable_svc_flap_detection.md similarity index 100% rename from documentation/developer/externalcommands/enable_svc_flap_detection.md rename to legacy/documentation/developer/externalcommands/enable_svc_flap_detection.md diff --git a/documentation/developer/externalcommands/enable_svc_notifications.md b/legacy/documentation/developer/externalcommands/enable_svc_notifications.md similarity index 100% rename from documentation/developer/externalcommands/enable_svc_notifications.md rename to legacy/documentation/developer/externalcommands/enable_svc_notifications.md diff --git a/documentation/developer/externalcommands/index.md b/legacy/documentation/developer/externalcommands/index.md similarity index 100% rename from documentation/developer/externalcommands/index.md rename to legacy/documentation/developer/externalcommands/index.md diff --git a/documentation/developer/externalcommands/index.tpl b/legacy/documentation/developer/externalcommands/index.tpl similarity index 100% rename from documentation/developer/externalcommands/index.tpl rename to legacy/documentation/developer/externalcommands/index.tpl diff --git a/documentation/developer/externalcommands/log.md b/legacy/documentation/developer/externalcommands/log.md similarity index 100% rename from documentation/developer/externalcommands/log.md rename to legacy/documentation/developer/externalcommands/log.md diff --git a/documentation/developer/externalcommands/process_file.md b/legacy/documentation/developer/externalcommands/process_file.md similarity index 100% rename from documentation/developer/externalcommands/process_file.md rename to legacy/documentation/developer/externalcommands/process_file.md diff --git a/documentation/developer/externalcommands/process_host_check_result.md b/legacy/documentation/developer/externalcommands/process_host_check_result.md similarity index 100% rename from documentation/developer/externalcommands/process_host_check_result.md rename to legacy/documentation/developer/externalcommands/process_host_check_result.md diff --git a/documentation/developer/externalcommands/process_service_check_result.md b/legacy/documentation/developer/externalcommands/process_service_check_result.md similarity index 100% rename from documentation/developer/externalcommands/process_service_check_result.md rename to legacy/documentation/developer/externalcommands/process_service_check_result.md diff --git a/documentation/developer/externalcommands/read_state_information.md b/legacy/documentation/developer/externalcommands/read_state_information.md similarity index 100% rename from documentation/developer/externalcommands/read_state_information.md rename to legacy/documentation/developer/externalcommands/read_state_information.md diff --git a/documentation/developer/externalcommands/remove_host_acknowledgement.md b/legacy/documentation/developer/externalcommands/remove_host_acknowledgement.md similarity index 100% rename from documentation/developer/externalcommands/remove_host_acknowledgement.md rename to legacy/documentation/developer/externalcommands/remove_host_acknowledgement.md diff --git a/documentation/developer/externalcommands/remove_svc_acknowledgement.md b/legacy/documentation/developer/externalcommands/remove_svc_acknowledgement.md similarity index 100% rename from documentation/developer/externalcommands/remove_svc_acknowledgement.md rename to legacy/documentation/developer/externalcommands/remove_svc_acknowledgement.md diff --git a/documentation/developer/externalcommands/restart_process.md b/legacy/documentation/developer/externalcommands/restart_process.md similarity index 100% rename from documentation/developer/externalcommands/restart_process.md rename to legacy/documentation/developer/externalcommands/restart_process.md diff --git a/documentation/developer/externalcommands/restart_program.md b/legacy/documentation/developer/externalcommands/restart_program.md similarity index 100% rename from documentation/developer/externalcommands/restart_program.md rename to legacy/documentation/developer/externalcommands/restart_program.md diff --git a/documentation/developer/externalcommands/save_state_information.md b/legacy/documentation/developer/externalcommands/save_state_information.md similarity index 100% rename from documentation/developer/externalcommands/save_state_information.md rename to legacy/documentation/developer/externalcommands/save_state_information.md diff --git a/documentation/developer/externalcommands/schedule_and_propagate_host_downtime.md b/legacy/documentation/developer/externalcommands/schedule_and_propagate_host_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_and_propagate_host_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_and_propagate_host_downtime.md diff --git a/documentation/developer/externalcommands/schedule_and_propagate_triggered_host_downtime.md b/legacy/documentation/developer/externalcommands/schedule_and_propagate_triggered_host_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_and_propagate_triggered_host_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_and_propagate_triggered_host_downtime.md diff --git a/documentation/developer/externalcommands/schedule_forced_host_check.md b/legacy/documentation/developer/externalcommands/schedule_forced_host_check.md similarity index 100% rename from documentation/developer/externalcommands/schedule_forced_host_check.md rename to legacy/documentation/developer/externalcommands/schedule_forced_host_check.md diff --git a/documentation/developer/externalcommands/schedule_forced_host_svc_checks.md b/legacy/documentation/developer/externalcommands/schedule_forced_host_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/schedule_forced_host_svc_checks.md rename to legacy/documentation/developer/externalcommands/schedule_forced_host_svc_checks.md diff --git a/documentation/developer/externalcommands/schedule_forced_svc_check.md b/legacy/documentation/developer/externalcommands/schedule_forced_svc_check.md similarity index 100% rename from documentation/developer/externalcommands/schedule_forced_svc_check.md rename to legacy/documentation/developer/externalcommands/schedule_forced_svc_check.md diff --git a/documentation/developer/externalcommands/schedule_host_check.md b/legacy/documentation/developer/externalcommands/schedule_host_check.md similarity index 100% rename from documentation/developer/externalcommands/schedule_host_check.md rename to legacy/documentation/developer/externalcommands/schedule_host_check.md diff --git a/documentation/developer/externalcommands/schedule_host_downtime.md b/legacy/documentation/developer/externalcommands/schedule_host_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_host_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_host_downtime.md diff --git a/documentation/developer/externalcommands/schedule_host_svc_checks.md b/legacy/documentation/developer/externalcommands/schedule_host_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/schedule_host_svc_checks.md rename to legacy/documentation/developer/externalcommands/schedule_host_svc_checks.md diff --git a/documentation/developer/externalcommands/schedule_host_svc_downtime.md b/legacy/documentation/developer/externalcommands/schedule_host_svc_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_host_svc_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_host_svc_downtime.md diff --git a/documentation/developer/externalcommands/schedule_hostgroup_host_downtime.md b/legacy/documentation/developer/externalcommands/schedule_hostgroup_host_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_hostgroup_host_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_hostgroup_host_downtime.md diff --git a/documentation/developer/externalcommands/schedule_hostgroup_svc_downtime.md b/legacy/documentation/developer/externalcommands/schedule_hostgroup_svc_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_hostgroup_svc_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_hostgroup_svc_downtime.md diff --git a/documentation/developer/externalcommands/schedule_servicegroup_host_downtime.md b/legacy/documentation/developer/externalcommands/schedule_servicegroup_host_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_servicegroup_host_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_servicegroup_host_downtime.md diff --git a/documentation/developer/externalcommands/schedule_servicegroup_svc_downtime.md b/legacy/documentation/developer/externalcommands/schedule_servicegroup_svc_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_servicegroup_svc_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_servicegroup_svc_downtime.md diff --git a/documentation/developer/externalcommands/schedule_svc_check.md b/legacy/documentation/developer/externalcommands/schedule_svc_check.md similarity index 100% rename from documentation/developer/externalcommands/schedule_svc_check.md rename to legacy/documentation/developer/externalcommands/schedule_svc_check.md diff --git a/documentation/developer/externalcommands/schedule_svc_downtime.md b/legacy/documentation/developer/externalcommands/schedule_svc_downtime.md similarity index 100% rename from documentation/developer/externalcommands/schedule_svc_downtime.md rename to legacy/documentation/developer/externalcommands/schedule_svc_downtime.md diff --git a/documentation/developer/externalcommands/send_custom_host_notification.md b/legacy/documentation/developer/externalcommands/send_custom_host_notification.md similarity index 100% rename from documentation/developer/externalcommands/send_custom_host_notification.md rename to legacy/documentation/developer/externalcommands/send_custom_host_notification.md diff --git a/documentation/developer/externalcommands/send_custom_svc_notification.md b/legacy/documentation/developer/externalcommands/send_custom_svc_notification.md similarity index 100% rename from documentation/developer/externalcommands/send_custom_svc_notification.md rename to legacy/documentation/developer/externalcommands/send_custom_svc_notification.md diff --git a/documentation/developer/externalcommands/set_host_notification_number.md b/legacy/documentation/developer/externalcommands/set_host_notification_number.md similarity index 100% rename from documentation/developer/externalcommands/set_host_notification_number.md rename to legacy/documentation/developer/externalcommands/set_host_notification_number.md diff --git a/documentation/developer/externalcommands/set_svc_notification_number.md b/legacy/documentation/developer/externalcommands/set_svc_notification_number.md similarity index 100% rename from documentation/developer/externalcommands/set_svc_notification_number.md rename to legacy/documentation/developer/externalcommands/set_svc_notification_number.md diff --git a/documentation/developer/externalcommands/shutdown_process.md b/legacy/documentation/developer/externalcommands/shutdown_process.md similarity index 100% rename from documentation/developer/externalcommands/shutdown_process.md rename to legacy/documentation/developer/externalcommands/shutdown_process.md diff --git a/documentation/developer/externalcommands/shutdown_program.md b/legacy/documentation/developer/externalcommands/shutdown_program.md similarity index 100% rename from documentation/developer/externalcommands/shutdown_program.md rename to legacy/documentation/developer/externalcommands/shutdown_program.md diff --git a/documentation/developer/externalcommands/start_accepting_passive_host_checks.md b/legacy/documentation/developer/externalcommands/start_accepting_passive_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/start_accepting_passive_host_checks.md rename to legacy/documentation/developer/externalcommands/start_accepting_passive_host_checks.md diff --git a/documentation/developer/externalcommands/start_accepting_passive_svc_checks.md b/legacy/documentation/developer/externalcommands/start_accepting_passive_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/start_accepting_passive_svc_checks.md rename to legacy/documentation/developer/externalcommands/start_accepting_passive_svc_checks.md diff --git a/documentation/developer/externalcommands/start_executing_host_checks.md b/legacy/documentation/developer/externalcommands/start_executing_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/start_executing_host_checks.md rename to legacy/documentation/developer/externalcommands/start_executing_host_checks.md diff --git a/documentation/developer/externalcommands/start_executing_svc_checks.md b/legacy/documentation/developer/externalcommands/start_executing_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/start_executing_svc_checks.md rename to legacy/documentation/developer/externalcommands/start_executing_svc_checks.md diff --git a/documentation/developer/externalcommands/start_obsessing_over_host.md b/legacy/documentation/developer/externalcommands/start_obsessing_over_host.md similarity index 100% rename from documentation/developer/externalcommands/start_obsessing_over_host.md rename to legacy/documentation/developer/externalcommands/start_obsessing_over_host.md diff --git a/documentation/developer/externalcommands/start_obsessing_over_host_checks.md b/legacy/documentation/developer/externalcommands/start_obsessing_over_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/start_obsessing_over_host_checks.md rename to legacy/documentation/developer/externalcommands/start_obsessing_over_host_checks.md diff --git a/documentation/developer/externalcommands/start_obsessing_over_svc.md b/legacy/documentation/developer/externalcommands/start_obsessing_over_svc.md similarity index 100% rename from documentation/developer/externalcommands/start_obsessing_over_svc.md rename to legacy/documentation/developer/externalcommands/start_obsessing_over_svc.md diff --git a/documentation/developer/externalcommands/start_obsessing_over_svc_checks.md b/legacy/documentation/developer/externalcommands/start_obsessing_over_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/start_obsessing_over_svc_checks.md rename to legacy/documentation/developer/externalcommands/start_obsessing_over_svc_checks.md diff --git a/documentation/developer/externalcommands/stop_accepting_passive_host_checks.md b/legacy/documentation/developer/externalcommands/stop_accepting_passive_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/stop_accepting_passive_host_checks.md rename to legacy/documentation/developer/externalcommands/stop_accepting_passive_host_checks.md diff --git a/documentation/developer/externalcommands/stop_accepting_passive_svc_checks.md b/legacy/documentation/developer/externalcommands/stop_accepting_passive_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/stop_accepting_passive_svc_checks.md rename to legacy/documentation/developer/externalcommands/stop_accepting_passive_svc_checks.md diff --git a/documentation/developer/externalcommands/stop_executing_host_checks.md b/legacy/documentation/developer/externalcommands/stop_executing_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/stop_executing_host_checks.md rename to legacy/documentation/developer/externalcommands/stop_executing_host_checks.md diff --git a/documentation/developer/externalcommands/stop_executing_svc_checks.md b/legacy/documentation/developer/externalcommands/stop_executing_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/stop_executing_svc_checks.md rename to legacy/documentation/developer/externalcommands/stop_executing_svc_checks.md diff --git a/documentation/developer/externalcommands/stop_obsessing_over_host.md b/legacy/documentation/developer/externalcommands/stop_obsessing_over_host.md similarity index 100% rename from documentation/developer/externalcommands/stop_obsessing_over_host.md rename to legacy/documentation/developer/externalcommands/stop_obsessing_over_host.md diff --git a/documentation/developer/externalcommands/stop_obsessing_over_host_checks.md b/legacy/documentation/developer/externalcommands/stop_obsessing_over_host_checks.md similarity index 100% rename from documentation/developer/externalcommands/stop_obsessing_over_host_checks.md rename to legacy/documentation/developer/externalcommands/stop_obsessing_over_host_checks.md diff --git a/documentation/developer/externalcommands/stop_obsessing_over_svc.md b/legacy/documentation/developer/externalcommands/stop_obsessing_over_svc.md similarity index 100% rename from documentation/developer/externalcommands/stop_obsessing_over_svc.md rename to legacy/documentation/developer/externalcommands/stop_obsessing_over_svc.md diff --git a/documentation/developer/externalcommands/stop_obsessing_over_svc_checks.md b/legacy/documentation/developer/externalcommands/stop_obsessing_over_svc_checks.md similarity index 100% rename from documentation/developer/externalcommands/stop_obsessing_over_svc_checks.md rename to legacy/documentation/developer/externalcommands/stop_obsessing_over_svc_checks.md diff --git a/documentation/developer/externalcommands/update b/legacy/documentation/developer/externalcommands/update similarity index 100% rename from documentation/developer/externalcommands/update rename to legacy/documentation/developer/externalcommands/update diff --git a/documentation/developer/index.md b/legacy/documentation/developer/index.md similarity index 100% rename from documentation/developer/index.md rename to legacy/documentation/developer/index.md diff --git a/documentation/faq/images/githubedit.png b/legacy/documentation/faq/images/githubedit.png similarity index 100% rename from documentation/faq/images/githubedit.png rename to legacy/documentation/faq/images/githubedit.png diff --git a/documentation/usersguide/activechecks.md b/legacy/documentation/usersguide/activechecks.md similarity index 100% rename from documentation/usersguide/activechecks.md rename to legacy/documentation/usersguide/activechecks.md diff --git a/documentation/usersguide/adaptive.md b/legacy/documentation/usersguide/adaptive.md similarity index 100% rename from documentation/usersguide/adaptive.md rename to legacy/documentation/usersguide/adaptive.md diff --git a/documentation/usersguide/addon-pnp-quickstart.md b/legacy/documentation/usersguide/addon-pnp-quickstart.md similarity index 100% rename from documentation/usersguide/addon-pnp-quickstart.md rename to legacy/documentation/usersguide/addon-pnp-quickstart.md diff --git a/documentation/usersguide/addons.md b/legacy/documentation/usersguide/addons.md similarity index 100% rename from documentation/usersguide/addons.md rename to legacy/documentation/usersguide/addons.md diff --git a/documentation/usersguide/beginners.md b/legacy/documentation/usersguide/beginners.md similarity index 100% rename from documentation/usersguide/beginners.md rename to legacy/documentation/usersguide/beginners.md diff --git a/documentation/usersguide/cachedchecks.md b/legacy/documentation/usersguide/cachedchecks.md similarity index 100% rename from documentation/usersguide/cachedchecks.md rename to legacy/documentation/usersguide/cachedchecks.md diff --git a/documentation/usersguide/cgiauth.md b/legacy/documentation/usersguide/cgiauth.md similarity index 100% rename from documentation/usersguide/cgiauth.md rename to legacy/documentation/usersguide/cgiauth.md diff --git a/documentation/usersguide/cgiincludes.md b/legacy/documentation/usersguide/cgiincludes.md similarity index 100% rename from documentation/usersguide/cgiincludes.md rename to legacy/documentation/usersguide/cgiincludes.md diff --git a/documentation/usersguide/cgis.md b/legacy/documentation/usersguide/cgis.md similarity index 100% rename from documentation/usersguide/cgis.md rename to legacy/documentation/usersguide/cgis.md diff --git a/documentation/usersguide/cgisecurity.md b/legacy/documentation/usersguide/cgisecurity.md similarity index 100% rename from documentation/usersguide/cgisecurity.md rename to legacy/documentation/usersguide/cgisecurity.md diff --git a/documentation/usersguide/clusters.md b/legacy/documentation/usersguide/clusters.md similarity index 100% rename from documentation/usersguide/clusters.md rename to legacy/documentation/usersguide/clusters.md diff --git a/documentation/usersguide/config-incompat3to4.md b/legacy/documentation/usersguide/config-incompat3to4.md similarity index 100% rename from documentation/usersguide/config-incompat3to4.md rename to legacy/documentation/usersguide/config-incompat3to4.md diff --git a/documentation/usersguide/config.md b/legacy/documentation/usersguide/config.md similarity index 100% rename from documentation/usersguide/config.md rename to legacy/documentation/usersguide/config.md diff --git a/documentation/usersguide/configcgi.md b/legacy/documentation/usersguide/configcgi.md similarity index 100% rename from documentation/usersguide/configcgi.md rename to legacy/documentation/usersguide/configcgi.md diff --git a/documentation/usersguide/configmain.md b/legacy/documentation/usersguide/configmain.md similarity index 100% rename from documentation/usersguide/configmain.md rename to legacy/documentation/usersguide/configmain.md diff --git a/documentation/usersguide/configobject.md b/legacy/documentation/usersguide/configobject.md similarity index 100% rename from documentation/usersguide/configobject.md rename to legacy/documentation/usersguide/configobject.md diff --git a/documentation/usersguide/customobjectvars.md b/legacy/documentation/usersguide/customobjectvars.md similarity index 100% rename from documentation/usersguide/customobjectvars.md rename to legacy/documentation/usersguide/customobjectvars.md diff --git a/documentation/usersguide/dependencies.md b/legacy/documentation/usersguide/dependencies.md similarity index 100% rename from documentation/usersguide/dependencies.md rename to legacy/documentation/usersguide/dependencies.md diff --git a/documentation/usersguide/dependencychecks.md b/legacy/documentation/usersguide/dependencychecks.md similarity index 100% rename from documentation/usersguide/dependencychecks.md rename to legacy/documentation/usersguide/dependencychecks.md diff --git a/documentation/usersguide/distributed.md b/legacy/documentation/usersguide/distributed.md similarity index 100% rename from documentation/usersguide/distributed.md rename to legacy/documentation/usersguide/distributed.md diff --git a/documentation/usersguide/downtime.md b/legacy/documentation/usersguide/downtime.md similarity index 100% rename from documentation/usersguide/downtime.md rename to legacy/documentation/usersguide/downtime.md diff --git a/documentation/usersguide/embeddedperl.md b/legacy/documentation/usersguide/embeddedperl.md similarity index 100% rename from documentation/usersguide/embeddedperl.md rename to legacy/documentation/usersguide/embeddedperl.md diff --git a/documentation/usersguide/epnplugins.md b/legacy/documentation/usersguide/epnplugins.md similarity index 100% rename from documentation/usersguide/epnplugins.md rename to legacy/documentation/usersguide/epnplugins.md diff --git a/documentation/usersguide/escalations.md b/legacy/documentation/usersguide/escalations.md similarity index 100% rename from documentation/usersguide/escalations.md rename to legacy/documentation/usersguide/escalations.md diff --git a/documentation/usersguide/eventhandlers.md b/legacy/documentation/usersguide/eventhandlers.md similarity index 100% rename from documentation/usersguide/eventhandlers.md rename to legacy/documentation/usersguide/eventhandlers.md diff --git a/documentation/usersguide/extcommands.md b/legacy/documentation/usersguide/extcommands.md similarity index 100% rename from documentation/usersguide/extcommands.md rename to legacy/documentation/usersguide/extcommands.md diff --git a/documentation/usersguide/faststartup.md b/legacy/documentation/usersguide/faststartup.md similarity index 100% rename from documentation/usersguide/faststartup.md rename to legacy/documentation/usersguide/faststartup.md diff --git a/documentation/usersguide/flapping.md b/legacy/documentation/usersguide/flapping.md similarity index 100% rename from documentation/usersguide/flapping.md rename to legacy/documentation/usersguide/flapping.md diff --git a/documentation/usersguide/freshness.md b/legacy/documentation/usersguide/freshness.md similarity index 100% rename from documentation/usersguide/freshness.md rename to legacy/documentation/usersguide/freshness.md diff --git a/documentation/usersguide/hostchecks.md b/legacy/documentation/usersguide/hostchecks.md similarity index 100% rename from documentation/usersguide/hostchecks.md rename to legacy/documentation/usersguide/hostchecks.md diff --git a/documentation/usersguide/images/activechecks.png b/legacy/documentation/usersguide/images/activechecks.png similarity index 100% rename from documentation/usersguide/images/activechecks.png rename to legacy/documentation/usersguide/images/activechecks.png diff --git a/documentation/usersguide/images/cachedcheckgraphs.png b/legacy/documentation/usersguide/images/cachedcheckgraphs.png similarity index 100% rename from documentation/usersguide/images/cachedcheckgraphs.png rename to legacy/documentation/usersguide/images/cachedcheckgraphs.png diff --git a/documentation/usersguide/images/cachedchecks.png b/legacy/documentation/usersguide/images/cachedchecks.png similarity index 100% rename from documentation/usersguide/images/cachedchecks.png rename to legacy/documentation/usersguide/images/cachedchecks.png diff --git a/documentation/usersguide/images/cachedchecks1.png b/legacy/documentation/usersguide/images/cachedchecks1.png similarity index 100% rename from documentation/usersguide/images/cachedchecks1.png rename to legacy/documentation/usersguide/images/cachedchecks1.png diff --git a/documentation/usersguide/images/cgi-avail-a.png b/legacy/documentation/usersguide/images/cgi-avail-a.png similarity index 100% rename from documentation/usersguide/images/cgi-avail-a.png rename to legacy/documentation/usersguide/images/cgi-avail-a.png diff --git a/documentation/usersguide/images/cgi-avail-b.png b/legacy/documentation/usersguide/images/cgi-avail-b.png similarity index 100% rename from documentation/usersguide/images/cgi-avail-b.png rename to legacy/documentation/usersguide/images/cgi-avail-b.png diff --git a/documentation/usersguide/images/cgi-bp-a.png b/legacy/documentation/usersguide/images/cgi-bp-a.png similarity index 100% rename from documentation/usersguide/images/cgi-bp-a.png rename to legacy/documentation/usersguide/images/cgi-bp-a.png diff --git a/documentation/usersguide/images/cgi-bp-b.png b/legacy/documentation/usersguide/images/cgi-bp-b.png similarity index 100% rename from documentation/usersguide/images/cgi-bp-b.png rename to legacy/documentation/usersguide/images/cgi-bp-b.png diff --git a/documentation/usersguide/images/cgi-cmd.png b/legacy/documentation/usersguide/images/cgi-cmd.png similarity index 100% rename from documentation/usersguide/images/cgi-cmd.png rename to legacy/documentation/usersguide/images/cgi-cmd.png diff --git a/documentation/usersguide/images/cgi-conf-tool-a.png b/legacy/documentation/usersguide/images/cgi-conf-tool-a.png similarity index 100% rename from documentation/usersguide/images/cgi-conf-tool-a.png rename to legacy/documentation/usersguide/images/cgi-conf-tool-a.png diff --git a/documentation/usersguide/images/cgi-conf-tool-b.png b/legacy/documentation/usersguide/images/cgi-conf-tool-b.png similarity index 100% rename from documentation/usersguide/images/cgi-conf-tool-b.png rename to legacy/documentation/usersguide/images/cgi-conf-tool-b.png diff --git a/documentation/usersguide/images/cgi-conf-tool-c.png b/legacy/documentation/usersguide/images/cgi-conf-tool-c.png similarity index 100% rename from documentation/usersguide/images/cgi-conf-tool-c.png rename to legacy/documentation/usersguide/images/cgi-conf-tool-c.png diff --git a/documentation/usersguide/images/cgi-config.png b/legacy/documentation/usersguide/images/cgi-config.png similarity index 100% rename from documentation/usersguide/images/cgi-config.png rename to legacy/documentation/usersguide/images/cgi-config.png diff --git a/documentation/usersguide/images/cgi-extinfo-a.png b/legacy/documentation/usersguide/images/cgi-extinfo-a.png similarity index 100% rename from documentation/usersguide/images/cgi-extinfo-a.png rename to legacy/documentation/usersguide/images/cgi-extinfo-a.png diff --git a/documentation/usersguide/images/cgi-extinfo-b.png b/legacy/documentation/usersguide/images/cgi-extinfo-b.png similarity index 100% rename from documentation/usersguide/images/cgi-extinfo-b.png rename to legacy/documentation/usersguide/images/cgi-extinfo-b.png diff --git a/documentation/usersguide/images/cgi-extinfo-c.png b/legacy/documentation/usersguide/images/cgi-extinfo-c.png similarity index 100% rename from documentation/usersguide/images/cgi-extinfo-c.png rename to legacy/documentation/usersguide/images/cgi-extinfo-c.png diff --git a/documentation/usersguide/images/cgi-extinfo-d.png b/legacy/documentation/usersguide/images/cgi-extinfo-d.png similarity index 100% rename from documentation/usersguide/images/cgi-extinfo-d.png rename to legacy/documentation/usersguide/images/cgi-extinfo-d.png diff --git a/documentation/usersguide/images/cgi-history.png b/legacy/documentation/usersguide/images/cgi-history.png similarity index 100% rename from documentation/usersguide/images/cgi-history.png rename to legacy/documentation/usersguide/images/cgi-history.png diff --git a/documentation/usersguide/images/cgi-minemap.png b/legacy/documentation/usersguide/images/cgi-minemap.png similarity index 100% rename from documentation/usersguide/images/cgi-minemap.png rename to legacy/documentation/usersguide/images/cgi-minemap.png diff --git a/documentation/usersguide/images/cgi-mobile.png b/legacy/documentation/usersguide/images/cgi-mobile.png similarity index 100% rename from documentation/usersguide/images/cgi-mobile.png rename to legacy/documentation/usersguide/images/cgi-mobile.png diff --git a/documentation/usersguide/images/cgi-notifications.png b/legacy/documentation/usersguide/images/cgi-notifications.png similarity index 100% rename from documentation/usersguide/images/cgi-notifications.png rename to legacy/documentation/usersguide/images/cgi-notifications.png diff --git a/documentation/usersguide/images/cgi-outages.png b/legacy/documentation/usersguide/images/cgi-outages.png similarity index 100% rename from documentation/usersguide/images/cgi-outages.png rename to legacy/documentation/usersguide/images/cgi-outages.png diff --git a/documentation/usersguide/images/cgi-panorama.png b/legacy/documentation/usersguide/images/cgi-panorama.png similarity index 100% rename from documentation/usersguide/images/cgi-panorama.png rename to legacy/documentation/usersguide/images/cgi-panorama.png diff --git a/documentation/usersguide/images/cgi-reports-a.png b/legacy/documentation/usersguide/images/cgi-reports-a.png similarity index 100% rename from documentation/usersguide/images/cgi-reports-a.png rename to legacy/documentation/usersguide/images/cgi-reports-a.png diff --git a/documentation/usersguide/images/cgi-reports-b.png b/legacy/documentation/usersguide/images/cgi-reports-b.png similarity index 100% rename from documentation/usersguide/images/cgi-reports-b.png rename to legacy/documentation/usersguide/images/cgi-reports-b.png diff --git a/documentation/usersguide/images/cgi-showlog.png b/legacy/documentation/usersguide/images/cgi-showlog.png similarity index 100% rename from documentation/usersguide/images/cgi-showlog.png rename to legacy/documentation/usersguide/images/cgi-showlog.png diff --git a/documentation/usersguide/images/cgi-status-a.png b/legacy/documentation/usersguide/images/cgi-status-a.png similarity index 100% rename from documentation/usersguide/images/cgi-status-a.png rename to legacy/documentation/usersguide/images/cgi-status-a.png diff --git a/documentation/usersguide/images/cgi-status-b.png b/legacy/documentation/usersguide/images/cgi-status-b.png similarity index 100% rename from documentation/usersguide/images/cgi-status-b.png rename to legacy/documentation/usersguide/images/cgi-status-b.png diff --git a/documentation/usersguide/images/cgi-status-c.png b/legacy/documentation/usersguide/images/cgi-status-c.png similarity index 100% rename from documentation/usersguide/images/cgi-status-c.png rename to legacy/documentation/usersguide/images/cgi-status-c.png diff --git a/documentation/usersguide/images/cgi-status-d.png b/legacy/documentation/usersguide/images/cgi-status-d.png similarity index 100% rename from documentation/usersguide/images/cgi-status-d.png rename to legacy/documentation/usersguide/images/cgi-status-d.png diff --git a/documentation/usersguide/images/cgi-statusmap.png b/legacy/documentation/usersguide/images/cgi-statusmap.png similarity index 100% rename from documentation/usersguide/images/cgi-statusmap.png rename to legacy/documentation/usersguide/images/cgi-statusmap.png diff --git a/documentation/usersguide/images/cgi-summary.png b/legacy/documentation/usersguide/images/cgi-summary.png similarity index 100% rename from documentation/usersguide/images/cgi-summary.png rename to legacy/documentation/usersguide/images/cgi-summary.png diff --git a/documentation/usersguide/images/cgi-tac.png b/legacy/documentation/usersguide/images/cgi-tac.png similarity index 100% rename from documentation/usersguide/images/cgi-tac.png rename to legacy/documentation/usersguide/images/cgi-tac.png diff --git a/documentation/usersguide/images/cgi-trends.png b/legacy/documentation/usersguide/images/cgi-trends.png similarity index 100% rename from documentation/usersguide/images/cgi-trends.png rename to legacy/documentation/usersguide/images/cgi-trends.png diff --git a/documentation/usersguide/images/checkmark.png b/legacy/documentation/usersguide/images/checkmark.png similarity index 100% rename from documentation/usersguide/images/checkmark.png rename to legacy/documentation/usersguide/images/checkmark.png diff --git a/documentation/usersguide/images/downtime.png b/legacy/documentation/usersguide/images/downtime.png similarity index 100% rename from documentation/usersguide/images/downtime.png rename to legacy/documentation/usersguide/images/downtime.png diff --git a/documentation/usersguide/images/epn.png b/legacy/documentation/usersguide/images/epn.png similarity index 100% rename from documentation/usersguide/images/epn.png rename to legacy/documentation/usersguide/images/epn.png diff --git a/documentation/usersguide/images/eventhandlers.png b/legacy/documentation/usersguide/images/eventhandlers.png similarity index 100% rename from documentation/usersguide/images/eventhandlers.png rename to legacy/documentation/usersguide/images/eventhandlers.png diff --git a/documentation/usersguide/images/externalcommands.png b/legacy/documentation/usersguide/images/externalcommands.png similarity index 100% rename from documentation/usersguide/images/externalcommands.png rename to legacy/documentation/usersguide/images/externalcommands.png diff --git a/documentation/usersguide/images/freshness.png b/legacy/documentation/usersguide/images/freshness.png similarity index 100% rename from documentation/usersguide/images/freshness.png rename to legacy/documentation/usersguide/images/freshness.png diff --git a/documentation/usersguide/images/host-dependencies.png b/legacy/documentation/usersguide/images/host-dependencies.png similarity index 100% rename from documentation/usersguide/images/host-dependencies.png rename to legacy/documentation/usersguide/images/host-dependencies.png diff --git a/documentation/usersguide/images/monitoring-windows.png b/legacy/documentation/usersguide/images/monitoring-windows.png similarity index 100% rename from documentation/usersguide/images/monitoring-windows.png rename to legacy/documentation/usersguide/images/monitoring-windows.png diff --git a/documentation/usersguide/images/mrtg-activehostchecks.png b/legacy/documentation/usersguide/images/mrtg-activehostchecks.png similarity index 100% rename from documentation/usersguide/images/mrtg-activehostchecks.png rename to legacy/documentation/usersguide/images/mrtg-activehostchecks.png diff --git a/documentation/usersguide/images/mrtg-activelychecked.png b/legacy/documentation/usersguide/images/mrtg-activelychecked.png similarity index 100% rename from documentation/usersguide/images/mrtg-activelychecked.png rename to legacy/documentation/usersguide/images/mrtg-activelychecked.png diff --git a/documentation/usersguide/images/mrtg-activeservicechecks.png b/legacy/documentation/usersguide/images/mrtg-activeservicechecks.png similarity index 100% rename from documentation/usersguide/images/mrtg-activeservicechecks.png rename to legacy/documentation/usersguide/images/mrtg-activeservicechecks.png diff --git a/documentation/usersguide/images/mrtg-cachedchecks.png b/legacy/documentation/usersguide/images/mrtg-cachedchecks.png similarity index 100% rename from documentation/usersguide/images/mrtg-cachedchecks.png rename to legacy/documentation/usersguide/images/mrtg-cachedchecks.png diff --git a/documentation/usersguide/images/mrtg-externalcommands.png b/legacy/documentation/usersguide/images/mrtg-externalcommands.png similarity index 100% rename from documentation/usersguide/images/mrtg-externalcommands.png rename to legacy/documentation/usersguide/images/mrtg-externalcommands.png diff --git a/documentation/usersguide/images/mrtg-hostperfstats.png b/legacy/documentation/usersguide/images/mrtg-hostperfstats.png similarity index 100% rename from documentation/usersguide/images/mrtg-hostperfstats.png rename to legacy/documentation/usersguide/images/mrtg-hostperfstats.png diff --git a/documentation/usersguide/images/mrtg-hoststatechange.png b/legacy/documentation/usersguide/images/mrtg-hoststatechange.png similarity index 100% rename from documentation/usersguide/images/mrtg-hoststatechange.png rename to legacy/documentation/usersguide/images/mrtg-hoststatechange.png diff --git a/documentation/usersguide/images/mrtg-passivechecks.png b/legacy/documentation/usersguide/images/mrtg-passivechecks.png similarity index 100% rename from documentation/usersguide/images/mrtg-passivechecks.png rename to legacy/documentation/usersguide/images/mrtg-passivechecks.png diff --git a/documentation/usersguide/images/mrtg-passivelychecked.png b/legacy/documentation/usersguide/images/mrtg-passivelychecked.png similarity index 100% rename from documentation/usersguide/images/mrtg-passivelychecked.png rename to legacy/documentation/usersguide/images/mrtg-passivelychecked.png diff --git a/documentation/usersguide/images/mrtg-serviceperfstats.png b/legacy/documentation/usersguide/images/mrtg-serviceperfstats.png similarity index 100% rename from documentation/usersguide/images/mrtg-serviceperfstats.png rename to legacy/documentation/usersguide/images/mrtg-serviceperfstats.png diff --git a/documentation/usersguide/images/mrtg-servicestatechange.png b/legacy/documentation/usersguide/images/mrtg-servicestatechange.png similarity index 100% rename from documentation/usersguide/images/mrtg-servicestatechange.png rename to legacy/documentation/usersguide/images/mrtg-servicestatechange.png diff --git a/documentation/usersguide/images/multiple-templates1.png b/legacy/documentation/usersguide/images/multiple-templates1.png similarity index 100% rename from documentation/usersguide/images/multiple-templates1.png rename to legacy/documentation/usersguide/images/multiple-templates1.png diff --git a/documentation/usersguide/images/multiple-templates2.png b/legacy/documentation/usersguide/images/multiple-templates2.png similarity index 100% rename from documentation/usersguide/images/multiple-templates2.png rename to legacy/documentation/usersguide/images/multiple-templates2.png diff --git a/documentation/usersguide/images/ndoutils.png b/legacy/documentation/usersguide/images/ndoutils.png similarity index 100% rename from documentation/usersguide/images/ndoutils.png rename to legacy/documentation/usersguide/images/ndoutils.png diff --git a/documentation/usersguide/images/nsclient-install1.png b/legacy/documentation/usersguide/images/nsclient-install1.png similarity index 100% rename from documentation/usersguide/images/nsclient-install1.png rename to legacy/documentation/usersguide/images/nsclient-install1.png diff --git a/documentation/usersguide/images/objects-commands.png b/legacy/documentation/usersguide/images/objects-commands.png similarity index 100% rename from documentation/usersguide/images/objects-commands.png rename to legacy/documentation/usersguide/images/objects-commands.png diff --git a/documentation/usersguide/images/objects-contacts.png b/legacy/documentation/usersguide/images/objects-contacts.png similarity index 100% rename from documentation/usersguide/images/objects-contacts.png rename to legacy/documentation/usersguide/images/objects-contacts.png diff --git a/documentation/usersguide/images/objects-hosts.png b/legacy/documentation/usersguide/images/objects-hosts.png similarity index 100% rename from documentation/usersguide/images/objects-hosts.png rename to legacy/documentation/usersguide/images/objects-hosts.png diff --git a/documentation/usersguide/images/objects-services.png b/legacy/documentation/usersguide/images/objects-services.png similarity index 100% rename from documentation/usersguide/images/objects-services.png rename to legacy/documentation/usersguide/images/objects-services.png diff --git a/documentation/usersguide/images/objects-timeperiods.png b/legacy/documentation/usersguide/images/objects-timeperiods.png similarity index 100% rename from documentation/usersguide/images/objects-timeperiods.png rename to legacy/documentation/usersguide/images/objects-timeperiods.png diff --git a/documentation/usersguide/images/passivehosttranslation.png b/legacy/documentation/usersguide/images/passivehosttranslation.png similarity index 100% rename from documentation/usersguide/images/passivehosttranslation.png rename to legacy/documentation/usersguide/images/passivehosttranslation.png diff --git a/documentation/usersguide/images/plugins.png b/legacy/documentation/usersguide/images/plugins.png similarity index 100% rename from documentation/usersguide/images/plugins.png rename to legacy/documentation/usersguide/images/plugins.png diff --git a/documentation/usersguide/images/pnp4nagios-example1.png b/legacy/documentation/usersguide/images/pnp4nagios-example1.png similarity index 100% rename from documentation/usersguide/images/pnp4nagios-example1.png rename to legacy/documentation/usersguide/images/pnp4nagios-example1.png diff --git a/documentation/usersguide/images/predictive-dependency-checks.png b/legacy/documentation/usersguide/images/predictive-dependency-checks.png similarity index 100% rename from documentation/usersguide/images/predictive-dependency-checks.png rename to legacy/documentation/usersguide/images/predictive-dependency-checks.png diff --git a/documentation/usersguide/images/printer.png b/legacy/documentation/usersguide/images/printer.png similarity index 100% rename from documentation/usersguide/images/printer.png rename to legacy/documentation/usersguide/images/printer.png diff --git a/documentation/usersguide/images/reachability1.png b/legacy/documentation/usersguide/images/reachability1.png similarity index 100% rename from documentation/usersguide/images/reachability1.png rename to legacy/documentation/usersguide/images/reachability1.png diff --git a/documentation/usersguide/images/reachability2.png b/legacy/documentation/usersguide/images/reachability2.png similarity index 100% rename from documentation/usersguide/images/reachability2.png rename to legacy/documentation/usersguide/images/reachability2.png diff --git a/documentation/usersguide/images/reachability3.png b/legacy/documentation/usersguide/images/reachability3.png similarity index 100% rename from documentation/usersguide/images/reachability3.png rename to legacy/documentation/usersguide/images/reachability3.png diff --git a/documentation/usersguide/images/reachability4.png b/legacy/documentation/usersguide/images/reachability4.png similarity index 100% rename from documentation/usersguide/images/reachability4.png rename to legacy/documentation/usersguide/images/reachability4.png diff --git a/documentation/usersguide/images/redundancy.png b/legacy/documentation/usersguide/images/redundancy.png similarity index 100% rename from documentation/usersguide/images/redundancy.png rename to legacy/documentation/usersguide/images/redundancy.png diff --git a/documentation/usersguide/images/security.png b/legacy/documentation/usersguide/images/security.png similarity index 100% rename from documentation/usersguide/images/security.png rename to legacy/documentation/usersguide/images/security.png diff --git a/documentation/usersguide/images/security1.png b/legacy/documentation/usersguide/images/security1.png similarity index 100% rename from documentation/usersguide/images/security1.png rename to legacy/documentation/usersguide/images/security1.png diff --git a/documentation/usersguide/images/security2.png b/legacy/documentation/usersguide/images/security2.png similarity index 100% rename from documentation/usersguide/images/security2.png rename to legacy/documentation/usersguide/images/security2.png diff --git a/documentation/usersguide/images/security3.png b/legacy/documentation/usersguide/images/security3.png similarity index 100% rename from documentation/usersguide/images/security3.png rename to legacy/documentation/usersguide/images/security3.png diff --git a/documentation/usersguide/images/service-dependencies.png b/legacy/documentation/usersguide/images/service-dependencies.png similarity index 100% rename from documentation/usersguide/images/service-dependencies.png rename to legacy/documentation/usersguide/images/service-dependencies.png diff --git a/documentation/usersguide/images/statetransitions.png b/legacy/documentation/usersguide/images/statetransitions.png similarity index 100% rename from documentation/usersguide/images/statetransitions.png rename to legacy/documentation/usersguide/images/statetransitions.png diff --git a/documentation/usersguide/images/statetransitions2.png b/legacy/documentation/usersguide/images/statetransitions2.png similarity index 100% rename from documentation/usersguide/images/statetransitions2.png rename to legacy/documentation/usersguide/images/statetransitions2.png diff --git a/documentation/usersguide/images/stoprestart.png b/legacy/documentation/usersguide/images/stoprestart.png similarity index 100% rename from documentation/usersguide/images/stoprestart.png rename to legacy/documentation/usersguide/images/stoprestart.png diff --git a/documentation/usersguide/images/svg/configoverview.svg b/legacy/documentation/usersguide/images/svg/configoverview.svg similarity index 100% rename from documentation/usersguide/images/svg/configoverview.svg rename to legacy/documentation/usersguide/images/svg/configoverview.svg diff --git a/documentation/usersguide/images/svg/distributed.svg b/legacy/documentation/usersguide/images/svg/distributed.svg similarity index 100% rename from documentation/usersguide/images/svg/distributed.svg rename to legacy/documentation/usersguide/images/svg/distributed.svg diff --git a/documentation/usersguide/images/svg/drawio/configoverview.drawio b/legacy/documentation/usersguide/images/svg/drawio/configoverview.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/configoverview.drawio rename to legacy/documentation/usersguide/images/svg/drawio/configoverview.drawio diff --git a/documentation/usersguide/images/svg/drawio/distributed.drawio b/legacy/documentation/usersguide/images/svg/drawio/distributed.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/distributed.drawio rename to legacy/documentation/usersguide/images/svg/drawio/distributed.drawio diff --git a/documentation/usersguide/images/svg/drawio/fast-startup1.drawio b/legacy/documentation/usersguide/images/svg/drawio/fast-startup1.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/fast-startup1.drawio rename to legacy/documentation/usersguide/images/svg/drawio/fast-startup1.drawio diff --git a/documentation/usersguide/images/svg/drawio/fast-startup2.drawio b/legacy/documentation/usersguide/images/svg/drawio/fast-startup2.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/fast-startup2.drawio rename to legacy/documentation/usersguide/images/svg/drawio/fast-startup2.drawio diff --git a/documentation/usersguide/images/svg/drawio/integrationoverview.drawio b/legacy/documentation/usersguide/images/svg/drawio/integrationoverview.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/integrationoverview.drawio rename to legacy/documentation/usersguide/images/svg/drawio/integrationoverview.drawio diff --git a/documentation/usersguide/images/svg/drawio/monitoring-printers.drawio b/legacy/documentation/usersguide/images/svg/drawio/monitoring-printers.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/monitoring-printers.drawio rename to legacy/documentation/usersguide/images/svg/drawio/monitoring-printers.drawio diff --git a/documentation/usersguide/images/svg/drawio/monitoring-routers.drawio b/legacy/documentation/usersguide/images/svg/drawio/monitoring-routers.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/monitoring-routers.drawio rename to legacy/documentation/usersguide/images/svg/drawio/monitoring-routers.drawio diff --git a/documentation/usersguide/images/svg/drawio/monitoring-windows.drawio b/legacy/documentation/usersguide/images/svg/drawio/monitoring-windows.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/monitoring-windows.drawio rename to legacy/documentation/usersguide/images/svg/drawio/monitoring-windows.drawio diff --git a/documentation/usersguide/images/svg/drawio/nrpe.drawio b/legacy/documentation/usersguide/images/svg/drawio/nrpe.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/nrpe.drawio rename to legacy/documentation/usersguide/images/svg/drawio/nrpe.drawio diff --git a/documentation/usersguide/images/svg/drawio/nsca.drawio b/legacy/documentation/usersguide/images/svg/drawio/nsca.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/nsca.drawio rename to legacy/documentation/usersguide/images/svg/drawio/nsca.drawio diff --git a/documentation/usersguide/images/svg/drawio/passivechecks.drawio b/legacy/documentation/usersguide/images/svg/drawio/passivechecks.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/passivechecks.drawio rename to legacy/documentation/usersguide/images/svg/drawio/passivechecks.drawio diff --git a/documentation/usersguide/images/svg/drawio/plugins.drawio b/legacy/documentation/usersguide/images/svg/drawio/plugins.drawio similarity index 100% rename from documentation/usersguide/images/svg/drawio/plugins.drawio rename to legacy/documentation/usersguide/images/svg/drawio/plugins.drawio diff --git a/documentation/usersguide/images/svg/fast-startup1.svg b/legacy/documentation/usersguide/images/svg/fast-startup1.svg similarity index 100% rename from documentation/usersguide/images/svg/fast-startup1.svg rename to legacy/documentation/usersguide/images/svg/fast-startup1.svg diff --git a/documentation/usersguide/images/svg/fast-startup2.svg b/legacy/documentation/usersguide/images/svg/fast-startup2.svg similarity index 100% rename from documentation/usersguide/images/svg/fast-startup2.svg rename to legacy/documentation/usersguide/images/svg/fast-startup2.svg diff --git a/documentation/usersguide/images/svg/integrationoverview.svg b/legacy/documentation/usersguide/images/svg/integrationoverview.svg similarity index 100% rename from documentation/usersguide/images/svg/integrationoverview.svg rename to legacy/documentation/usersguide/images/svg/integrationoverview.svg diff --git a/documentation/usersguide/images/svg/monitoring-printers.svg b/legacy/documentation/usersguide/images/svg/monitoring-printers.svg similarity index 100% rename from documentation/usersguide/images/svg/monitoring-printers.svg rename to legacy/documentation/usersguide/images/svg/monitoring-printers.svg diff --git a/documentation/usersguide/images/svg/monitoring-routers.svg b/legacy/documentation/usersguide/images/svg/monitoring-routers.svg similarity index 100% rename from documentation/usersguide/images/svg/monitoring-routers.svg rename to legacy/documentation/usersguide/images/svg/monitoring-routers.svg diff --git a/documentation/usersguide/images/svg/monitoring-windows.svg b/legacy/documentation/usersguide/images/svg/monitoring-windows.svg similarity index 100% rename from documentation/usersguide/images/svg/monitoring-windows.svg rename to legacy/documentation/usersguide/images/svg/monitoring-windows.svg diff --git a/documentation/usersguide/images/svg/nrpe.svg b/legacy/documentation/usersguide/images/svg/nrpe.svg similarity index 100% rename from documentation/usersguide/images/svg/nrpe.svg rename to legacy/documentation/usersguide/images/svg/nrpe.svg diff --git a/documentation/usersguide/images/svg/nsca.svg b/legacy/documentation/usersguide/images/svg/nsca.svg similarity index 100% rename from documentation/usersguide/images/svg/nsca.svg rename to legacy/documentation/usersguide/images/svg/nsca.svg diff --git a/documentation/usersguide/images/svg/passivechecks.svg b/legacy/documentation/usersguide/images/svg/passivechecks.svg similarity index 100% rename from documentation/usersguide/images/svg/passivechecks.svg rename to legacy/documentation/usersguide/images/svg/passivechecks.svg diff --git a/documentation/usersguide/images/svg/plugins.svg b/legacy/documentation/usersguide/images/svg/plugins.svg similarity index 100% rename from documentation/usersguide/images/svg/plugins.svg rename to legacy/documentation/usersguide/images/svg/plugins.svg diff --git a/documentation/usersguide/images/switch.png b/legacy/documentation/usersguide/images/switch.png similarity index 100% rename from documentation/usersguide/images/switch.png rename to legacy/documentation/usersguide/images/switch.png diff --git a/documentation/usersguide/images/tcpwrappers.png b/legacy/documentation/usersguide/images/tcpwrappers.png similarity index 100% rename from documentation/usersguide/images/tcpwrappers.png rename to legacy/documentation/usersguide/images/tcpwrappers.png diff --git a/documentation/usersguide/images/tuning.png b/legacy/documentation/usersguide/images/tuning.png similarity index 100% rename from documentation/usersguide/images/tuning.png rename to legacy/documentation/usersguide/images/tuning.png diff --git a/documentation/usersguide/index.md b/legacy/documentation/usersguide/index.md similarity index 100% rename from documentation/usersguide/index.md rename to legacy/documentation/usersguide/index.md diff --git a/documentation/usersguide/int-snmptrap.md b/legacy/documentation/usersguide/int-snmptrap.md similarity index 100% rename from documentation/usersguide/int-snmptrap.md rename to legacy/documentation/usersguide/int-snmptrap.md diff --git a/documentation/usersguide/int-tcpwrappers.md b/legacy/documentation/usersguide/int-tcpwrappers.md similarity index 100% rename from documentation/usersguide/int-tcpwrappers.md rename to legacy/documentation/usersguide/int-tcpwrappers.md diff --git a/documentation/usersguide/integration.md b/legacy/documentation/usersguide/integration.md similarity index 100% rename from documentation/usersguide/integration.md rename to legacy/documentation/usersguide/integration.md diff --git a/documentation/usersguide/knownissues.md b/legacy/documentation/usersguide/knownissues.md similarity index 100% rename from documentation/usersguide/knownissues.md rename to legacy/documentation/usersguide/knownissues.md diff --git a/documentation/usersguide/largeinstalltweaks.md b/legacy/documentation/usersguide/largeinstalltweaks.md similarity index 100% rename from documentation/usersguide/largeinstalltweaks.md rename to legacy/documentation/usersguide/largeinstalltweaks.md diff --git a/documentation/usersguide/livestatus.md b/legacy/documentation/usersguide/livestatus.md similarity index 100% rename from documentation/usersguide/livestatus.md rename to legacy/documentation/usersguide/livestatus.md diff --git a/documentation/usersguide/macrolist.md b/legacy/documentation/usersguide/macrolist.md similarity index 100% rename from documentation/usersguide/macrolist.md rename to legacy/documentation/usersguide/macrolist.md diff --git a/documentation/usersguide/macros.md b/legacy/documentation/usersguide/macros.md similarity index 100% rename from documentation/usersguide/macros.md rename to legacy/documentation/usersguide/macros.md diff --git a/documentation/usersguide/monitoring-linux.md b/legacy/documentation/usersguide/monitoring-linux.md similarity index 100% rename from documentation/usersguide/monitoring-linux.md rename to legacy/documentation/usersguide/monitoring-linux.md diff --git a/documentation/usersguide/monitoring-networkservices.md b/legacy/documentation/usersguide/monitoring-networkservices.md similarity index 100% rename from documentation/usersguide/monitoring-networkservices.md rename to legacy/documentation/usersguide/monitoring-networkservices.md diff --git a/documentation/usersguide/monitoring-printers.md b/legacy/documentation/usersguide/monitoring-printers.md similarity index 100% rename from documentation/usersguide/monitoring-printers.md rename to legacy/documentation/usersguide/monitoring-printers.md diff --git a/documentation/usersguide/monitoring-routers.md b/legacy/documentation/usersguide/monitoring-routers.md similarity index 100% rename from documentation/usersguide/monitoring-routers.md rename to legacy/documentation/usersguide/monitoring-routers.md diff --git a/documentation/usersguide/monitoring-windows.md b/legacy/documentation/usersguide/monitoring-windows.md similarity index 100% rename from documentation/usersguide/monitoring-windows.md rename to legacy/documentation/usersguide/monitoring-windows.md diff --git a/documentation/usersguide/mrtggraphs.md b/legacy/documentation/usersguide/mrtggraphs.md similarity index 100% rename from documentation/usersguide/mrtggraphs.md rename to legacy/documentation/usersguide/mrtggraphs.md diff --git a/documentation/usersguide/naemonstats.md b/legacy/documentation/usersguide/naemonstats.md similarity index 100% rename from documentation/usersguide/naemonstats.md rename to legacy/documentation/usersguide/naemonstats.md diff --git a/documentation/usersguide/networkreachability.md b/legacy/documentation/usersguide/networkreachability.md similarity index 100% rename from documentation/usersguide/networkreachability.md rename to legacy/documentation/usersguide/networkreachability.md diff --git a/documentation/usersguide/notifications.md b/legacy/documentation/usersguide/notifications.md similarity index 100% rename from documentation/usersguide/notifications.md rename to legacy/documentation/usersguide/notifications.md diff --git a/documentation/usersguide/objectdefinitions.md b/legacy/documentation/usersguide/objectdefinitions.md similarity index 100% rename from documentation/usersguide/objectdefinitions.md rename to legacy/documentation/usersguide/objectdefinitions.md diff --git a/documentation/usersguide/objectinheritance.md b/legacy/documentation/usersguide/objectinheritance.md similarity index 100% rename from documentation/usersguide/objectinheritance.md rename to legacy/documentation/usersguide/objectinheritance.md diff --git a/documentation/usersguide/objecttricks.md b/legacy/documentation/usersguide/objecttricks.md similarity index 100% rename from documentation/usersguide/objecttricks.md rename to legacy/documentation/usersguide/objecttricks.md diff --git a/documentation/usersguide/oncallrotation.md b/legacy/documentation/usersguide/oncallrotation.md similarity index 100% rename from documentation/usersguide/oncallrotation.md rename to legacy/documentation/usersguide/oncallrotation.md diff --git a/documentation/usersguide/passivechecks.md b/legacy/documentation/usersguide/passivechecks.md similarity index 100% rename from documentation/usersguide/passivechecks.md rename to legacy/documentation/usersguide/passivechecks.md diff --git a/documentation/usersguide/passivestatetranslation.md b/legacy/documentation/usersguide/passivestatetranslation.md similarity index 100% rename from documentation/usersguide/passivestatetranslation.md rename to legacy/documentation/usersguide/passivestatetranslation.md diff --git a/documentation/usersguide/perfdata.md b/legacy/documentation/usersguide/perfdata.md similarity index 100% rename from documentation/usersguide/perfdata.md rename to legacy/documentation/usersguide/perfdata.md diff --git a/documentation/usersguide/pluginapi.md b/legacy/documentation/usersguide/pluginapi.md similarity index 100% rename from documentation/usersguide/pluginapi.md rename to legacy/documentation/usersguide/pluginapi.md diff --git a/documentation/usersguide/plugins.md b/legacy/documentation/usersguide/plugins.md similarity index 100% rename from documentation/usersguide/plugins.md rename to legacy/documentation/usersguide/plugins.md diff --git a/documentation/usersguide/quickstart-centos.md b/legacy/documentation/usersguide/quickstart-centos.md similarity index 100% rename from documentation/usersguide/quickstart-centos.md rename to legacy/documentation/usersguide/quickstart-centos.md diff --git a/documentation/usersguide/quickstart-debian.md b/legacy/documentation/usersguide/quickstart-debian.md similarity index 100% rename from documentation/usersguide/quickstart-debian.md rename to legacy/documentation/usersguide/quickstart-debian.md diff --git a/documentation/usersguide/quickstart-redhat.md b/legacy/documentation/usersguide/quickstart-redhat.md similarity index 100% rename from documentation/usersguide/quickstart-redhat.md rename to legacy/documentation/usersguide/quickstart-redhat.md diff --git a/documentation/usersguide/quickstart-sles.md b/legacy/documentation/usersguide/quickstart-sles.md similarity index 100% rename from documentation/usersguide/quickstart-sles.md rename to legacy/documentation/usersguide/quickstart-sles.md diff --git a/documentation/usersguide/quickstart-ubuntu.md b/legacy/documentation/usersguide/quickstart-ubuntu.md similarity index 100% rename from documentation/usersguide/quickstart-ubuntu.md rename to legacy/documentation/usersguide/quickstart-ubuntu.md diff --git a/documentation/usersguide/quickstart.md b/legacy/documentation/usersguide/quickstart.md similarity index 100% rename from documentation/usersguide/quickstart.md rename to legacy/documentation/usersguide/quickstart.md diff --git a/documentation/usersguide/redundancy.md b/legacy/documentation/usersguide/redundancy.md similarity index 100% rename from documentation/usersguide/redundancy.md rename to legacy/documentation/usersguide/redundancy.md diff --git a/documentation/usersguide/security.md b/legacy/documentation/usersguide/security.md similarity index 100% rename from documentation/usersguide/security.md rename to legacy/documentation/usersguide/security.md diff --git a/documentation/usersguide/servicechecks.md b/legacy/documentation/usersguide/servicechecks.md similarity index 100% rename from documentation/usersguide/servicechecks.md rename to legacy/documentation/usersguide/servicechecks.md diff --git a/documentation/usersguide/stalking.md b/legacy/documentation/usersguide/stalking.md similarity index 100% rename from documentation/usersguide/stalking.md rename to legacy/documentation/usersguide/stalking.md diff --git a/documentation/usersguide/startstop.md b/legacy/documentation/usersguide/startstop.md similarity index 100% rename from documentation/usersguide/startstop.md rename to legacy/documentation/usersguide/startstop.md diff --git a/documentation/usersguide/statetypes.md b/legacy/documentation/usersguide/statetypes.md similarity index 100% rename from documentation/usersguide/statetypes.md rename to legacy/documentation/usersguide/statetypes.md diff --git a/documentation/usersguide/support.md b/legacy/documentation/usersguide/support.md similarity index 100% rename from documentation/usersguide/support.md rename to legacy/documentation/usersguide/support.md diff --git a/documentation/usersguide/timeperiods.md b/legacy/documentation/usersguide/timeperiods.md similarity index 100% rename from documentation/usersguide/timeperiods.md rename to legacy/documentation/usersguide/timeperiods.md diff --git a/documentation/usersguide/tuning.md b/legacy/documentation/usersguide/tuning.md similarity index 100% rename from documentation/usersguide/tuning.md rename to legacy/documentation/usersguide/tuning.md diff --git a/documentation/usersguide/upgrading.md b/legacy/documentation/usersguide/upgrading.md similarity index 100% rename from documentation/usersguide/upgrading.md rename to legacy/documentation/usersguide/upgrading.md diff --git a/documentation/usersguide/verifyconfig.md b/legacy/documentation/usersguide/verifyconfig.md similarity index 100% rename from documentation/usersguide/verifyconfig.md rename to legacy/documentation/usersguide/verifyconfig.md diff --git a/documentation/usersguide/volatileservices.md b/legacy/documentation/usersguide/volatileservices.md similarity index 100% rename from documentation/usersguide/volatileservices.md rename to legacy/documentation/usersguide/volatileservices.md diff --git a/favicon.ico b/legacy/favicon.ico similarity index 100% rename from favicon.ico rename to legacy/favicon.ico diff --git a/fonts/glyphicons-halflings-regular.ttf b/legacy/fonts/glyphicons-halflings-regular.ttf similarity index 100% rename from fonts/glyphicons-halflings-regular.ttf rename to legacy/fonts/glyphicons-halflings-regular.ttf diff --git a/fonts/glyphicons-halflings-regular.woff b/legacy/fonts/glyphicons-halflings-regular.woff similarity index 100% rename from fonts/glyphicons-halflings-regular.woff rename to legacy/fonts/glyphicons-halflings-regular.woff diff --git a/images/centos.png b/legacy/images/centos.png similarity index 100% rename from images/centos.png rename to legacy/images/centos.png diff --git a/images/debian.png b/legacy/images/debian.png similarity index 100% rename from images/debian.png rename to legacy/images/debian.png diff --git a/images/fedora.png b/legacy/images/fedora.png similarity index 100% rename from images/fedora.png rename to legacy/images/fedora.png diff --git a/images/feed-icon16x16.png b/legacy/images/feed-icon16x16.png similarity index 100% rename from images/feed-icon16x16.png rename to legacy/images/feed-icon16x16.png diff --git a/images/redhat.png b/legacy/images/redhat.png similarity index 100% rename from images/redhat.png rename to legacy/images/redhat.png diff --git a/images/sles.jpg b/legacy/images/sles.jpg similarity index 100% rename from images/sles.jpg rename to legacy/images/sles.jpg diff --git a/images/ubuntu.png b/legacy/images/ubuntu.png similarity index 100% rename from images/ubuntu.png rename to legacy/images/ubuntu.png diff --git a/js/bootstrap-sortable.js b/legacy/js/bootstrap-sortable.js similarity index 100% rename from js/bootstrap-sortable.js rename to legacy/js/bootstrap-sortable.js diff --git a/js/bootstrap.min.3.1.0.js b/legacy/js/bootstrap.min.3.1.0.js similarity index 100% rename from js/bootstrap.min.3.1.0.js rename to legacy/js/bootstrap.min.3.1.0.js diff --git a/js/jquery-1.10.2.min.js b/legacy/js/jquery-1.10.2.min.js similarity index 100% rename from js/jquery-1.10.2.min.js rename to legacy/js/jquery-1.10.2.min.js diff --git a/js/moment.min.js b/legacy/js/moment.min.js similarity index 100% rename from js/moment.min.js rename to legacy/js/moment.min.js diff --git a/news/feed b/legacy/news/feed similarity index 100% rename from news/feed rename to legacy/news/feed diff --git a/news/index.html b/legacy/news/index.html similarity index 100% rename from news/index.html rename to legacy/news/index.html diff --git a/ressources/huge.png b/legacy/ressources/huge.png similarity index 100% rename from ressources/huge.png rename to legacy/ressources/huge.png diff --git a/ressources/logo.xcf b/legacy/ressources/logo.xcf similarity index 100% rename from ressources/logo.xcf rename to legacy/ressources/logo.xcf diff --git a/ressources/n.png b/legacy/ressources/n.png similarity index 100% rename from ressources/n.png rename to legacy/ressources/n.png diff --git a/ressources/n.xcf b/legacy/ressources/n.xcf similarity index 100% rename from ressources/n.xcf rename to legacy/ressources/n.xcf diff --git a/ressources/n1.png b/legacy/ressources/n1.png similarity index 100% rename from ressources/n1.png rename to legacy/ressources/n1.png diff --git a/ressources/small.png b/legacy/ressources/small.png similarity index 100% rename from ressources/small.png rename to legacy/ressources/small.png diff --git a/review_required.md b/legacy/review_required.md similarity index 100% rename from review_required.md rename to legacy/review_required.md diff --git a/t/10-test-website.t b/legacy/t/10-test-website.t similarity index 100% rename from t/10-test-website.t rename to legacy/t/10-test-website.t diff --git a/t/11-test-markdown_errors.t b/legacy/t/11-test-markdown_errors.t similarity index 100% rename from t/11-test-markdown_errors.t rename to legacy/t/11-test-markdown_errors.t diff --git a/t/lib/HTML/Lint/Error.pm b/legacy/t/lib/HTML/Lint/Error.pm similarity index 100% rename from t/lib/HTML/Lint/Error.pm rename to legacy/t/lib/HTML/Lint/Error.pm diff --git a/utils/print_livestatus_tables.pl b/legacy/utils/print_livestatus_tables.pl similarity index 100% rename from utils/print_livestatus_tables.pl rename to legacy/utils/print_livestatus_tables.pl diff --git a/logo.md b/logo.md index faa42fe..3087877 100644 --- a/logo.md +++ b/logo.md @@ -1,33 +1,51 @@ ---- -title: The Logo -layout: default ---- +# Naemon Logo -Here you will find some resources if you need the naemon logo, for example to link to this page: +Here you will find some resources if you need the naemon logo, for example to link to this page: ## Small -naemon logo -download +![Small Naemon Logo](/images/logo/logo_small.png) + +  +Image size: 100x17px + +  +[download as PNG](/images/logo/logo_small.png) ## Mid Size -naemon logo -download +![Mid Naemon Logo](/images/logo/logo_middle.png) + +  +Image size: 300x50px + +  +[download as PNG](/images/logo/logo_middle.png) ## Large Size -naemon logo -download +![Large Naemon Logo](/images/logo/logo_large.png) + +  +Image size: 1324x219px + +  +[download as PNG](/images/logo/logo_large.png) + +## SVG + +Scalable Vector Graphic + +![Naemon Logo as SVG](/images/logo/naemonlogo.svg) + +  +[download as SVG](/images/logo/naemonlogo.svg) -## SVG / Raw -naemon logo -download ## Credits -The logo was designed by Elin Norén and can be used under the terms of the cc-by-sa license. +The logo was designed by Elin Norén and can be used under the terms of the [cc-by-sa license](https://creativecommons.org/licenses/by-sa/3.0/de/deed.en). diff --git a/package.json b/package.json new file mode 100644 index 0000000..c8063cf --- /dev/null +++ b/package.json @@ -0,0 +1,13 @@ +{ + "devDependencies": { + "vitepress": "^1.5.0" + }, + "scripts": { + "docs:dev": "vitepress dev", + "docs:build": "vitepress build", + "docs:preview": "vitepress preview" + }, + "dependencies": { + "@fortawesome/fontawesome-free": "^6.7.0" + } +} \ No newline at end of file diff --git a/project.md b/project.md index 3172fa2..9a64afc 100644 --- a/project.md +++ b/project.md @@ -1,14 +1,14 @@ ---- -layout: default -title: The project ---- +# The project + Naemon is created by the community, for the community. While the legal stuff isn't done quite yet, we are working toward setting up an independent, non-commercial legal entity to manage the Naemon project. We wish to thereby ensure that decisions are based on technical merit and what we, the users, want - not what earns someone's employer the most money. We believe this can only happen through independence and transparency. This does not mean that we're hostile towards commercial offerings based on the Naemon code - quite the opposite: we wish to see our code used and reused in as many settings and distributions as possible, commercial as well as noncommercial, all competing on equal ground with each other. -### Why yet another fork? +## Why yet another fork? + We like Nagios Core, and we would have liked to contribute to its further development - in fact, as part of our team you'll find administrators with plenty of experience from huge Nagios installations, as well as many of the developers who contributed towards turning Nagios 3 into Nagios 4, including Andreas Ericsson, who wrote about 95% of those patches. Alas, for reasons that appear to be related to politics/profit, we no longer feel welcome in the Nagios Core community. We do feel many of the many forks and rewrites Nagios has spawned have interesting ideas, but many of them are organized in ways that are vulnerable to creating the same kind of second-guessing of motivations. We would like to continue to explore the ideas we started to explore in Nagios 4, in terms of features, behaviour and functionality, and we would also like to explore project structure as well. Still, we believe we have much in common with many of the other projects, and hope that as we find our place in the open monitoring ecosystem, we'll be able to create a fruitful cooperation and exchange of ideas and code. -Get involved + +[Get involved](/community) \ No newline at end of file diff --git a/public/favicon.ico b/public/favicon.ico new file mode 100644 index 0000000..ebcff6b Binary files /dev/null and b/public/favicon.ico differ diff --git a/images/logo_large.png b/public/images/logo/logo_large.png similarity index 100% rename from images/logo_large.png rename to public/images/logo/logo_large.png diff --git a/images/logo_middle.png b/public/images/logo/logo_middle.png similarity index 100% rename from images/logo_middle.png rename to public/images/logo/logo_middle.png diff --git a/images/logo_small.png b/public/images/logo/logo_small.png similarity index 100% rename from images/logo_small.png rename to public/images/logo/logo_small.png diff --git a/images/naemonlogo.svg b/public/images/logo/naemonlogo.svg similarity index 100% rename from images/naemonlogo.svg rename to public/images/logo/naemonlogo.svg diff --git a/public/images/pixel/naemon_dark.png b/public/images/pixel/naemon_dark.png new file mode 100644 index 0000000..f701501 Binary files /dev/null and b/public/images/pixel/naemon_dark.png differ diff --git a/public/images/pixel/naemon_light.png b/public/images/pixel/naemon_light.png new file mode 100644 index 0000000..ab45f53 Binary files /dev/null and b/public/images/pixel/naemon_light.png differ diff --git a/public/images/svg/naemonlogo.svg b/public/images/svg/naemonlogo.svg new file mode 100644 index 0000000..03d79c8 --- /dev/null +++ b/public/images/svg/naemonlogo.svg @@ -0,0 +1 @@ +naemonlogo \ No newline at end of file diff --git a/suite.md b/suite.md index 5b0384d..1005f9c 100644 --- a/suite.md +++ b/suite.md @@ -1,9 +1,7 @@ ---- -title: The suite -layout: default ---- +# The suite + The Naemon project includes a GUI, but not the old Nagios CGI interface - instead we have a fast, modern and more useful replacement, [Thruk](http://thruk.org). You can test the online demo of Thruk at [demo.thruk.org](http://demo.thruk.org). We also bundle Livestatus, which is how Thruk communicates with the core. -We'd like for more relevant tools to join our project. As we're about to be an [independent entity](/project.html), we want our name to be a guarantee that we are owned by our members who work together. +We'd like for more relevant tools to join our project. As we're about to be an [independent entity](/project), we want our name to be a guarantee that we are owned by our members who work together.