📌 Purpose & Quick Summary

Once deployed, application lifecycles are governed by BoostonCP's PM2 daemon. The Installed Applications manager provides complete operational oversight: you can monitor live CPU and memory utilization, trigger 1-click zero-downtime restarts, stream live execution logs, and safely decommission applications.


🖥️ Interface Tour & Elements

  1. Installed Applications Tab: Displays a ledger of all active applications running under your account.
  2. Real-Time Status Badges:
    • Online (Green): The process is healthy, responsive, and serving web requests.
    • Stopped (Gray): Process paused by user.
    • Errored (Red): Process crashed or exited unexpectedly.
  3. Resource Metrics: Real-time memory consumption (MB) and CPU percentage per process.
  4. Action Controls:
    • Restart: Gracefully restarts workers without dropping active connections.
    • Stop / Start: Pauses or resumes the application process.
    • View Logs: Opens an interactive modal streaming live stdout and stderr logs.
    • Delete: Terminates the PM2 process and seamlessly restores standard Nginx web server vhost configurations.

🛠️ Step-by-Step Instructions

Step 1: Streaming Live Application Logs

  1. Navigate to App Engine and click the Installed tab.
  2. Locate your application in the list.
  3. Click the View Logs button (terminal icon).
  4. The Live Console Log Studio modal opens, streaming output in real-time.
  5. Toggle between Standard Output (stdout) and Error Output (stderr) to debug exceptions.

Step 2: Restarting an Application After Code Updates

  1. After pushing new code or editing files in the File Manager, locate the app in the Installed tab.
  2. Click the Restart button (reload icon).
  3. PM2 reloads the process cleanly in ~500ms.

Step 3: Deleting an Application

  1. In the Actions column, click Delete (trash icon).
  2. Confirm the deletion.
  3. BoostonCP stops the PM2 process, purges the process definition, and automatically restores the domain's previous web server configuration from backup ($DOMAIN.conf.php_bak).

⚙️ Complete Field & Parameter Reference Table

Control / Metric Display Operational Impact
Status online / errored Reflects PM2 daemon monitoring state.
Memory Megabytes (e.g. 85 MB) Physical resident set size (RSS) memory consumed.
CPU Percentage (0.0%) Live CPU load generated by runtime worker threads.
Restart Button Triggers pm2 restart <app_name> with zero packet drop.
Logs Terminal viewer Reads last 200 lines of /home/user/.pm2/logs/<app>-error.log.

❓ Troubleshooting & Common Errors

1. App Restarts Continuously (Restart Counter Increasing)

  • Cause: Application exits with code 1 due to missing environment variable, database connection refusal, or port collision.
  • Solution: Open View Logs, check stderr, and resolve the runtime exception. Verify that database credentials in .env are accurate.