0x4c756e61/ZDSM
⚡ Blazingly fast ⚡ and efficient implementation of the BDSM protocol, ZDSM prioritizes speed and modularity. Monitor your server's health with minimal impact and enjoy a modular design for easy customization ⚙️.
ZDSM is a ⚡blazingly fast ⚡ and efficient implementation of the BDSM (Basic Data Server Monitoring) protocol. It is designed to monitor your server's health with minimal impact, focusing on speed and modularity.
For a quick and automated installation, you can use the following one-liner in your terminal. This command will download and execute the installation script:
sh <(curl -sSf https://raw.githubusercontent.com/0x454d505459/ZDSM/main/install.sh)
Quick note: make sure you always check the scripts before executing them
Get the Latest Release:
Set Execute Permission:
chmod +x zdsm
Move Binary to /usr/bin:
/usr/bin
directory:sudo mv zdsm /usr/bin
Run ZDSM:
zdsm
Optional: Create Your Service File:
To retrieve information from your server, you'll need a client that supports the new BDSM protocol. As of now, the official client is undergoing a complete rewrite and is not yet available.However, if necessary, an adapted version of the old client has been modified to use the new protocol. You can find this version available in this fork.
In the meantime, you can still query the server using tools like curl
or xh
in your terminal. Here's an example using curl
:
curl -H "Authorization: Bearer <your-password>" http://localhost:3040/api
Replace <your-password>
with your actual server password.
You can customize your ZDSM server by editing the following environment variables.
PORT (Default: 3040):
SERVER_NAME (Default: "Unnamed server"):
PASSWORD (Default: "admin"):
Additionally, ZDSM follows a specific configuration lookup order:
Look for .env
File:
.env
next to the executable. If found, it will use the configuration from this file.Fallback to Environment Variables:
.env
file is found, ZDSM will check for the specified environment variables. You can set these directly in your environment.Default Configuration:
.env
file nor environment variables are provided, ZDSM will fallback to the hardcoded configuration.If you prefer to compile ZDSM from source for various reasons, follow these steps:
Clone the Project:
git clone https://github.com/0x454d505459/ZDSM.git
Build the Project:
cd ZDSM
zig build
Locate the Binary:
zig-out/bin/ZDSM
Feel free to contribute to the development of ZDSM by opening issues or pull requests on the GitHub repository.
This project is licensed under the AGPLv3 license