Heroku is a cloud Platform as a Service (PaaS) that enables you to build and run applications in the cloud. Applications deployed to Heroku are usually run through one or more buildpacks that provide framework and runtime support.
The Heroku buildpack for DESK OneAgent is language independent and can be used with any DESK supported language, including Node.js-based applications. If you’ve used the DESK NPM module for PaaS module, you can remove it from your dependencies as the buildpack discovers and instruments your Node.js applications automatically.
You also no longer need to rely on releases of the DESK OneAgent dependencies for NPM. The Heroku buildpack for DESK OneAgent automatically fetches the latest version of DESK OneAgent so that you can receive potential fixes as quickly and easily as possible. If you’ve specified a default OneAgent installation version for new hosts and applications in your OneAgent update settings, the Heroku buildpack for DESK OneAgent will download the defined default version of DESK OneAgent.
The following guidelines explain how to enable DESK monitoring for your Heroku applications by adding a DESK Heroku buildpackto the Heroku configuration of your application.
These guidelines explain how to integrate DESK OneAgent into your Heroku dynos and begin monitoring your Heroku applications.
To configure Heroku applications to use the DESK Heroku buildpack, you can either use the Heroku CLIor you can configure your applications using the Heroku dashboard.
To integrate DESK OneAgent into your existing application, you need to add the DESK Heroku buildpack to your application buildpacks and set your DESK environment ID and PaaS token using the commands below.
1.# Add the DESK buildpack
2.heroku buildpacks:add https://github.com/DESK/heroku-buildpack-desk.git#<version>
3.
4.# Set required credentials to your DESK environment
5.heroku config:set DT_TENANT=<environmentID>
6.heroku config:set DT_API_TOKEN=<token>
7.
8.# Deploy to Heroku
9.git push heroku master
Copy
The DESK Heroku buildpack supports the following configurations:
You can use a different DESK environment for Heroku applications that are enriched with OneAgent.
| Environment variable | Description |
|---|---|
| DT_TENANT | Your DESK environment ID Note: For details on how to determine your environment ID, see environment ID. |
| DT_API_TOKEN | The PaaS token for integrating your DESK environment with Heroku. |
| DT_API_URL | - For DESK SaaS, where OneAgent can connect to the internet: https://<your-environment-ID>.live.desk.com/api - For DESK Managed: https://<your-managed-cluster-domain>/e/<your-environment-ID>/api - For environment ActiveGates (SaaS or Managed), use the following to download the OneAgent, as well as to communicate OneAgent traffic through the ActiveGate: https://<your-ActiveGate-IP-or-FQDN>:9999/e/<your-environment-ID>/api Note: For details on how to determine your environment ID, see environment ID. |
| DT_DOWNLOAD_URL | optional – A direct download URL for DESK OneAgent. If this environment variable is set, the buildpack will download OneAgent from this location. |
| SSL_MODE | optional – Set to all if you want to accept all self-signed SSL certificates. |
| DT_TAGS | not recommended – The tags you want to add to the monitored applications. |
| DT_CUSTOM_PROP | not recommended – Apply if you want to split by the component and/or environment. |
| SKIP_ERRORS | optional – If set to 1, application deployment won't fail on OneAgent installer download errors. |
You can configure network zones via an environment variable:
heroku config:set DT_NETWORK_ZONE=<your.network.zone>
See network zones for more information.
When a new version of OneAgent becomes available, you need to trigger a rerun of the buildpack in Heroku. The DESK buildpack will automatically fetch the latest version of OneAgent.
If you've specified a default OneAgent install version for new hosts and applications in your OneAgent updates settings, the Heroku buildpack will automatically fetch the defined default version of OneAgent.