Deploy OneAgent on IBM Cloud Foundry for application-only monitoring
Applications deployed on Cloud Foundry are usually run through technology-specific buildpacks that provide framework and runtime support for applications running on the Cloud Foundry platform. For complete details, see how buildpacks work.
Note: When deployed in application-only mode, OneAgent monitors the memory, disk, CPU, and networking of processes within the container only. Host metrics aren't monitored.
Prerequisites
- Create a PaaS Token.
- Review the supported applications and versions.
Deploy OneAgent
Create a Dynatrace service in your IBM Cloud Foundry environment.
There are two ways of defining a service instance, choose one:
Bind Dynatrace service to your application.
You can bind the created Dynatrace service to your application in your manifest.yml
file. If your application is already started, you need to restage it.
In case of a Java application, if you're deploying to IBM Cloud Foundry, be sure to accept IBM licenses by setting the proper environment variables. For details, see the buildpack readme.
---
applications:
- name: demo-helloworld
path: target/JavaHelloWorldApp.war
buildpack: https://github.com/cloudfoundry/ibm-websphere-liberty-buildpack.git
memory: 512M
instances: 1
host: hello-world-${random-word}
disk_quota: 1024M
services:
- dynatrace-service
env:
IBM_LIBERTY_LICENSE: <liberty-license-key>
IBM_JVM_LICENSE: <jvm-license-key>
Optional Configure the default OneAgent log stream for Cloud Foundry.
By default, OneAgent logs are written to the Cloud Foundry standard error stream. All you have to do is set the environment variable DT_LOGSTREAM
to either stdout
or stderr
.
For example:
cf set-env APP_NAME DT_LOGSTREAM stdout
Optional Configure a proxy address.
If your environment uses a proxy, you need to set the DT_PROXY
environment variable to pass the proxy credentials to OneAgent as shown below.
cf set-env <application> DT_PROXY <proxy address>
Optional
Configure network zones.
You can configure network zones in two ways.
- Via
UserProvidedService
:
cf cups dynatrace-service -p "environmentid, apitoken, networkzone"
- As an environment variable per application:
cf set-env <application> DT_NETWORK_ZONE <your_network_zone>
See network zones for more information.