Phone Home
Overview
MaestroHub includes an optional telemetry system called "Phone Home" that collects anonymous usage statistics to help us improve the platform. This page explains what data we collect, why we collect it, and how you can control it.
Privacy First
- No sensitive data - We never collect passwords, API keys, or workflow content
- Anonymous location data - Geographic information is derived from public IP and is approximate (city-level, not exact location)
- Transparent - All collected data is documented on this page
- Full control - You can disable telemetry at any time
What Data We Collect
1. System Information
Why: Understand deployment environments and compatibility needs
| Field | Description |
|---|---|
| Timestamp | Time when the report was generated |
| License ID | Unique identifier for the license key |
| License Type | Type of the license (e.g., active, trial) |
| Version | MaestroHub Version |
| Hostname | Server hostname |
| Operating System | OS type |
| Architecture | CPU architecture |
| Public IP | Public IP address of the server |
2. User Information
Why: Understand adoption and onboarding
| Field | Description |
|---|---|
| User Count | Total number of registered users |
| First Email | Email address of the first registered user |
3. Geographic Information
Why: Understand global distribution and provide region-specific improvements
| Field | Description |
|---|---|
| Country | Country name |
| City | City name |
| Region | State/province name |
| ISP | Internet Service Provider |
Geographic information is derived from your server's public IP address using ip-api.com service. This information is approximate and is used solely for understanding the global distribution of MaestroHub installations. No personally identifiable information is collected.
4. Usage Statistics
Why: Understand how features are being used to prioritize improvements
| Metric | Description |
|---|---|
| Total Connections | Number of configured connections |
| Connections by Type | Breakdown by connection type (e.g., modbus, mqtt, opcua, postgres, rest) |
| Total Pipelines | Count of all pipelines |
| Enabled Pipelines | Count of currently enabled pipelines |
| Total Nodes | Count of all pipeline nodes |
| Nodes by Type | Detailed breakdown (e.g., trigger.schedule, connected.rest.request, logic.javascript) |
| Models | Number of data models defined |
| Organizations | Number of organizations |
| UNS - Topic Count | Number of UNS topics |
| UNS - MQTT Mode | MQTT broker mode (e.g., embedded, external) |
| UNS - MQTT Client Count | Number of connected MQTT clients |
| UNS - Storage Mode | UNS storage backend (e.g., pebble) |
| Execution Metrics - Total Executions | Total number of pipeline executions since startup |
| Execution Metrics - Success Count | Number of successful executions |
| Execution Metrics - Failure Count | Number of failed executions |
| Execution Metrics - Success Rate | Overall success rate (0.0 to 1.0) |
| Execution Metrics - Uptime Seconds | Application uptime in seconds |
| Execution Metrics - Active Cron Jobs | Number of active cron-based scheduled jobs |
| Execution Metrics - Active Ticker Jobs | Number of active ticker-based scheduled jobs |
Reporting Frequency
Usage reports are automatically sent at the following times:
On Startup
An initial usage report is sent when the MaestroHub application starts.
On First Admin Creation
When the first administrator user is created during initial setup, an immediate usage report is triggered. This helps track successful installations and onboarding.
Every Hour
After the initial startup report, usage statistics are automatically sent every 60 minutes.
Configuration
Enable or Disable Phone Home
Phone Home is enabled by default to help us improve MaestroHub. You can disable it at any time by setting the MAESTROHUB_MODULES_PHONEHOME_ENABLED environment variable to false.
Windows:
setx MAESTROHUB_MODULES_PHONEHOME_ENABLED false
macOS / Linux:
export MAESTROHUB_MODULES_PHONEHOME_ENABLED=false
After setting the environment variable, run MaestroHub Lite from the same terminal session. To re-enable Phone Home, set the variable to true or unset it.