Dashboard Service Controls

Last Updated October 2014

The Pagoda Box dashboard is designed to give you granular control of each piece of your application. Apps are made up of "services" - individual pieces devoted to a specific service type or language. Each service is individually managed and configured through your dashboard. This doc walks through the available service controls. After reading it, you should be familiar with:

  • Managing your app's services through the dashboard UI
  • Dashboard controls for each of your services

Analytics

Service analytics allow you quickly identify and address high resource usage in your app's service. They are one of the main sources of information when deciding to scale your service(s). Analytics come a few different forms:

Now & 24-Hour Summary

Whenever you load your app's dashboard, you'll see the current resource usages as well as summarized, hourly "blocks" for the last 24 hours for each of your app's services.

Now & 24-Hour Detailed Overview

A detailed overview of your service's analytics is available inside your services's options. To view the options, click on the service in your dashboard. The 24-hour overview displays by default whenever a service is opened.

7 Day Hourly Averages

To view the 7-day hourly averages, open your service and select the "7 day hourly averages" option.

The 7-Day hourly averages are great for identifying resource usage trends by hour. For example, your 7-day averages my help you see that between 6 and 8 PM, your service tends to max out its available RAM. With this information, you're able to plan and scale accordingly.

Restart, Reboot, Repair

In some cases, a service may become unresponsive and require action to be taken in order for it to become responsive again. When this happens, you have three possible options:

Restart

"Restart" restarts all of the running processes on a service's instance(s).

Note: Restarting a service will cause it to become temporarily unavailable as the running processes restart.

Reboot

"Reboot" shuts down and reboots a service's instance(s), recovering each of the service's processes.

Note: Rebooting a service will cause it to become temporarily unavailable as the the instances restart and startup scripts run. Reboots are only recommended for services that have become unresponsive and a Restart has failed to help.

Repair

"Repair" provisions new instances based on settings in your Boxfile. For code services, your currently deployed commit is used to create the new instance(s). For data services, all data is migrated to the new instance (if possible).

Note: Data migrations are required when repairing data services. Your data service will be unavailabe as data is migrated. The Data Migrations During Scaling & Repairs doc has more information.

Configure

The "Configure" tab allows you to control the scaling configuration of your service.

For more information about scaling, view the How & When to Scale doc.

Snapshots

The "Snapshots" tab is only available to data services. Here you're able create snapshots of your service's data as well as restore to previous snaphots.

More information about data snaphots is available in the Data Snapshots & Backups doc.

Connection

The "Connection" tab is unique to data services. Here you'll find the connection credentials necessary to connect to your service from within your app's network.

Internal network connections are only necessary & available for data services. These are the connection details other services in your app should use to connect to this service. They can also be used to connect to the service after opening the SSH Portal and SSH'ing in.

SSH

Here you can enable SSH access to your service. Once enabled, you'll be given the SSH credentials necessary for opening that connection. When SSH'ing into code services and network storage, you'll be dropped into a native shell prompt. In order to interact with data services, you'll need to either SSH into a code service and connect from there, or setup SSH port forwarding on your local machine. The SSH Access to Services doc provides more information.

Admin

The Admin tab allows you to rename and/or delete your service.

Current Build & Libraries

In the build process of code services, app dependencies into your codebase. Here you have the ability to flush archived libraries and/or rebuild your code services. For more information on package management, view the Composer doc.

Flush Libraries

Flushing your libraries will flush the library archive stored on Pagoda Box. This will NOT affect your running app. It only clears out previously loaded dependencies used as a starting point during the build phase of the deploy process.

Rebuild Current Deploy

Rebuilding your current deploy essentially redeploys the current state of your app. Your existing library archive is used as a starting point in the build process, your Boxfile is reparsed & all build/deploy hooks are re-run.

Flush & Rebuild

Flushing and rebuilding clears out previously loaded dependencies, re-creates the library archive, rebuilds all of your code services using the newly downloaded dependencies, reparses your Boxfile, re-runs all build/deploy hooks, and deploys the new instances into production.

Undo Last Deploy

The Undo Last Deploy button is what we like to call the "Oh #@%&!!" button. It rolls back the most recent deploy and reloads the previously deployed (hopefully error-free) commit. Each time it is clicked, it will step backwards through your app's deploy history.

Note: Undo Last Deploy will rollback all code services.

If you have any questions, suggestions, or corrections, let us know.