94 lines
2.1 KiB
Markdown
94 lines
2.1 KiB
Markdown
# KumaCLI
|
|
|
|
A command-line interface for Uptime Kuma, allowing you to manage monitors and maintenance windows from the terminal.
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
pip install kumacli
|
|
```
|
|
|
|
## Configuration
|
|
|
|
Set environment variables for authentication:
|
|
|
|
```bash
|
|
export KUMA_URL="http://your-uptime-kuma-instance:3001"
|
|
export KUMA_USERNAME="your-username"
|
|
export KUMA_PASSWORD="your-password"
|
|
```
|
|
|
|
Or pass them as command-line arguments:
|
|
|
|
```bash
|
|
kumacli --url http://localhost:3001 --username admin --password password monitor list
|
|
```
|
|
|
|
## Usage
|
|
|
|
### Monitor Commands
|
|
|
|
```bash
|
|
# Show available subcommands
|
|
kumacli monitor
|
|
|
|
# List all monitors
|
|
kumacli monitor list
|
|
|
|
# List monitors matching patterns
|
|
kumacli monitor list --monitor "*web*"
|
|
|
|
# List monitors in specific groups
|
|
kumacli monitor list --group "production*"
|
|
|
|
# Combine filters
|
|
kumacli monitor list --monitor "*api*" --group "web*"
|
|
|
|
# Pause monitors
|
|
kumacli monitor pause --monitor "*api*"
|
|
kumacli monitor pause --group "production*"
|
|
|
|
# Resume monitors
|
|
kumacli monitor resume --monitor "*api*"
|
|
kumacli monitor resume --group "production*"
|
|
kumacli monitor resume --all
|
|
```
|
|
|
|
### Maintenance Commands
|
|
|
|
```bash
|
|
# Show available subcommands
|
|
kumacli maintenance
|
|
|
|
# Create maintenance for specific monitors (90 minutes, starting now)
|
|
kumacli maintenance add --monitor "*nextcloud*"
|
|
|
|
# Create maintenance for groups
|
|
kumacli maintenance add --group "web*"
|
|
|
|
# Custom timing and description
|
|
kumacli maintenance add --monitor "*db*" --duration "2h" --start "2025-08-01 22:00:00" --title "Database Update"
|
|
|
|
# List all maintenances
|
|
kumacli maintenance list
|
|
|
|
# Delete specific maintenance
|
|
kumacli maintenance delete --id 5
|
|
|
|
# Delete all maintenances
|
|
kumacli maintenance delete --all
|
|
```
|
|
|
|
## Features
|
|
|
|
- **Wildcard Pattern Matching**: Use `*` wildcards for monitor and group names
|
|
- **Time Scheduling**: Flexible time parsing and duration formats (90m, 2h, 3600s)
|
|
- **Group Support**: Target entire groups of monitors
|
|
- **Environment Variables**: Store credentials securely
|
|
- **Auto-generated Descriptions**: Default descriptions list affected monitors
|
|
|
|
## Requirements
|
|
|
|
- Python 3.8+
|
|
- Access to an Uptime Kuma instance
|
|
- uptime-kuma-api library |