Table of Contents
Show help
./amcli -h
_____ _____ __ _____ _ _
| | | | ___ ___ ___| |___ ___|_| |_ ___ ___
|- -| | | | |__ | .'| . | . | | | | . | | | _| . | _|
|_____|_|_|_|_____| |__,| _| _|_|_|_|___|_|_|_|_| |___|_|
|_| |_| CLI client v0.10
This client performs appmonitor checks and puts the results as JSON to stdout.
It contains all checks that are available in the PHP appmonitor client v0.156.
You can use the compiled binary to monitor any non PHP webapp without
implementing the checks for your programming language.
You need to reference an INI file that contains the metadata and all checks.
Have a look to the online documentation for details.
You find example snippets in the source code of this project in tests/config/.
👤 Author: Axel Hahn
📄 Source: https://git-repo.iml.unibe.ch/iml-open-source/appmonitor-cli-client
📜 License: GNU GPL 3.0
📗 Docs: https://os-docs.iml.unibe.ch/appmonitor-cli-client/
(c) 2025 Institute for Medical Education * University of Bern
...............................................................................
✨ SYNTAX:
amcli [OPTIONS] --ini=<INI-FILE>
🔷 OPTIONS:
-h, --help Print this help and exit
-i, --ini Set an INI File to parse
-v, --verbose Enable verbose output (written to STDERR)
-b, --buildinfos show build information and exit
-e, --explain <CHECK>
Explain a check and exit
-l, --list list available checks and exit
-m, --modules list available Php modules in this binary and exit
-V, --version Show version and exit
👉 EXAMPLES:
amcli -i=my.ini
amcli --ini=my.ini
Execute checks from INI file 'my.ini'.
amcli --list
List available checks.
Execute checks
Checks can be defined by writing an INI file that contains meta information and sections for each check.
To execute it use the --ini
parameter and reference the file (as absolute path or relative to your current working directory).
[<PATH>]amcli --ini=<FILENAME>
Recommendations:
- The output is JSON in a single line. You can use
jq
to beautify it, eg[<PATH>]amcli --ini=<FILENAME> | jq
- If the bahaviuor seems to be unwanted use
-v
to enable verbose mode. You get more debug output during the execution, showing parsed ini file and more.[<PATH>]amcli --ini=<FILENAME> -v
Exitcodes
The binary could stop and exit with non zero exitcode.
amcli
Exitcode | Description |
---|---|
0 | OK. An option was executed (help, list modules or checks) or the check was executed successfully |
1 | include include_checks.php failed (php file only) |
2 | include_checks.php failed (php file only) |
3 | INI file was not given. Maybe just a missing = char in --ini=<FILE> ? |
4 | Given Ini file does not exist |
5 | Given Ini file cannot be parsed |
6 | Ini value params= is no JSON |
7 | The key ‘function’ is not set in the given check. It defines the check function to call. |
8 | The section ‘meta’ has a wrong key or wrong value |
9 | The section ‘notifications’ has a wrong key or wrong value |
appmonitor-client class
Exitcode | Description |
---|---|
10 | incomplete reponse data detected eg. no check, no result code |
11 | Access denied: Ip restriction was set |
12 | Access denied: No token or wrong token was given |
appmonitor-checks class
Exitcode | Description |
---|---|
20 | Missing key in a given hash |
21 | Mising value in a given hash |
22 | Check not found. Check your function value |
23 | Check didn’t response a hash (=error in check) |
24 | Check responded a too small hash (=error in check) |
25 | The unit in a space value is unknown |