Appearance
CLI Command Reference
The Call Telemetry CLI provides comprehensive management capabilities for your appliance. All commands use the standard pattern:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- [command] [options]Quick Reference
| Command | Description |
|---|---|
update [version] [options] | Upgrade to specified version (default: latest) |
rollback | Restore previous docker-compose configuration |
backup | Create database backup |
restore [file] | Restore from backup file |
migration_status | Check migration progress |
migration_run | Execute pending migrations |
compact | Cleanup Docker and PostgreSQL |
purge | Remove unused Docker resources |
reset | Factory reset (deletes all data) |
cli_update | Update the CLI script itself |
Upgrade & Rollback
Update to Latest Version
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- updateUpdate to Specific Version
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- update 0.8.4-rc172Update Options
| Option | Description |
|---|---|
--force-upgrade | Skip validation checks (RAM, disk, Docker version) |
--no-cleanup | Keep old images for troubleshooting |
Examples:
bash
# Force upgrade bypassing checks
sudo curl https://get.calltelemetry.com | sudo sh -s -- update --force-upgrade
# Upgrade without cleanup
sudo curl https://get.calltelemetry.com | sudo sh -s -- update --no-cleanup
# Combine options
sudo curl https://get.calltelemetry.com | sudo sh -s -- update 0.8.4 --no-cleanupSystem Requirements
The update command validates these requirements before proceeding:
- RAM: Minimum 7GB (8GB for v0.8.4+)
- Disk: Minimum 10% free space
- Docker: Version 26 or higher
Rollback
Restore the previous docker-compose configuration from the most recent backup:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- rollbackBackups are automatically created before each upgrade in /home/calltelemetry/backups/.
Update CLI Script
The CLI script itself can be updated independently:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- cli_updateDatabase Operations
Backup
Create a timestamped SQL dump of the database:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- backupAutomatic Backup Retention
Only the 5 most recent backups are retained. Download critical backups before they are automatically purged.
Backups are stored in /home/calltelemetry/backups/ with format: calltelemetry_prod_YYYYMMDD_HHMMSS.sql
Restore
Restore database from a backup file:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- restore /home/calltelemetry/backups/calltelemetry_prod_20250119_143022.sqlMigration Status
Monitor migration progress:
bash
# Check current status
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_status
# Watch continuously (refresh every 5 seconds)
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_status --watch --interval 5
# Limit iterations
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_status --watch --iterations 10Watch Mode Options:
| Option | Short | Description | Default |
|---|---|---|---|
--watch | -w | Continuously refresh status | Off |
--interval | -i | Seconds between refreshes | 3 |
--iterations | -n | Max refresh cycles | Unlimited |
SQL Migration Status
View last 10 applied migrations directly from database:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- sql_migration_statusRun Migrations
Execute all pending migrations:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_runRollback Migrations
Rollback a specified number of migrations:
bash
# Rollback last migration
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_rollback 1
# Rollback last 3 migrations
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_rollback 3System Maintenance
Compact
Comprehensive cleanup including Docker system prune and PostgreSQL VACUUM FULL:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- compactThis command:
- Removes stopped containers
- Removes unused networks and volumes
- Removes dangling images
- Runs PostgreSQL VACUUM FULL on all tables
When to Compact
Run this monthly or when disk space is low. The operation requires database connectivity and may take several minutes.
Purge
Remove unused Docker resources only (lighter than compact):
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- purgeRemoves:
- Stopped containers
- Unused networks
- Unused volumes
- Dangling images (retains images from last 24 hours)
Reset
Factory reset - stops services and deletes all data:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- resetData Loss Warning
This command permanently deletes:
- SFTP data
- PostgreSQL database
- All backups
The application restarts in factory state. This cannot be undone.
Reset Certificates
Delete and regenerate self-signed SSL certificates:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- reset_certsDatabase Troubleshooting
Table Sizes
View row counts and disk usage:
bash
# All tables
sudo curl https://get.calltelemetry.com | sudo sh -s -- sql_table_size
# Specific tables
sudo curl https://get.calltelemetry.com | sudo sh -s -- sql_table_size cdr_records,call_logs,e911_eventsPurge Old Records
Delete records older than specified days (requires inserted_at timestamp column):
bash
# Delete CDR records older than 90 days
sudo curl https://get.calltelemetry.com | sudo sh -s -- sql_purge_table cdr_records 90
# Delete call logs older than 30 days
sudo curl https://get.calltelemetry.com | sudo sh -s -- sql_purge_table call_logs 30Confirmation Required
The command prompts for confirmation before deleting records. Review the count carefully before proceeding.
Configuration
Logging Level
Modify the logging level in docker-compose.yml and restart services:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- set_logging debugAvailable levels:
debug- Verbose logging for troubleshootinginfo- Normal operational logging (default)warning- Warnings and errors onlyerror- Errors only
Advanced Operations
Build Appliance
Download and execute appliance initialization script:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- build-appliancePrepare Cluster Node
Configure node for Kubernetes deployment:
bash
sudo curl https://get.calltelemetry.com | sudo sh -s -- prep-cluster-nodeThis command:
- Disables firewall and SELinux
- Installs kubectl, helm, and K9s
- Installs Git
Common Workflows
Upgrading with Safety Checks
bash
# 1. Create backup before upgrade
sudo curl https://get.calltelemetry.com | sudo sh -s -- backup
# 2. Run upgrade
sudo curl https://get.calltelemetry.com | sudo sh -s -- update
# 3. Monitor migration progress
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_status --watch
# 4. If issues occur, rollback
sudo curl https://get.calltelemetry.com | sudo sh -s -- rollbackTroubleshooting Disk Space
bash
# 1. Check table sizes
sudo curl https://get.calltelemetry.com | sudo sh -s -- sql_table_size
# 2. Purge old records
sudo curl https://get.calltelemetry.com | sudo sh -s -- sql_purge_table cdr_records 90
# 3. Run cleanup
sudo curl https://get.calltelemetry.com | sudo sh -s -- compactInvestigating Migration Failures
bash
# 1. Check migration status
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_status
# 2. View recent migrations from database
sudo curl https://get.calltelemetry.com | sudo sh -s -- sql_migration_status
# 3. Check application logs
sudo docker logs calltelemetry-web -f
# 4. Manually run migrations if needed
sudo curl https://get.calltelemetry.com | sudo sh -s -- migration_runSee Also
- Upgrading Guide - Step-by-step upgrade procedures
- Kubernetes Documentation - K8s deployment and updates
