• Home
  • Platform modules
  • Infrastructure Monitoring
  • Hosts
  • Basic concepts
  • Infrastructure Monitoring mode

Infrastructure Monitoring mode

Following installation of OneAgent on all hosts in your application environment, Dynatrace provides continuously updated metrics related to the performance of your monitored hosts.

Full-Stack Monitoring

Dynatrace evaluates the following components in the monitoring of your physical and/or cloud-based application infrastructure:

  • Your hosts (CPU, memory, NIC, and storage)
  • Host processes
  • Network health
  • Your virtual infrastructure platform (VMware vCenter or standalone ESXi hosts)

Note: Full-Stack Monitoring includes all features included in Infrastructure Monitoring mode (see details below).

OneAgent auto-injection

OneAgent in Infrastructure Monitoring mode automatically injects into processes to be able to monitor backing services written in Java and runtime metrics for supported languages. Learn how to disable auto-injection.

Infrastructure Monitoring

While Full-Stack mode provides complete application performance monitoring, code-level visibility, deep process monitoring, and Infrastructure Monitoring (including PaaS platforms) for use cases where less visibility is required, OneAgent can be configured for Infrastructure Monitoring mode, which provides physical and virtual infrastructure-centric monitoring, along with log monitoring and AIOps.

Monitoring consumption differs between Full-Stack and Infrastructure Monitoring modes:

  • Compare monitoring consumption calculation between Full-Stack and Infrastructure Monitoring modes.
  • Learn about Infrastructure Monitoring mode in the context of Davis data units.

Enable Infrastructure Monitoring mode

You enable Infrastructure Monitoring mode at the host level, either during or after OneAgent installation.

During OneAgent installation

To enable Infrastructure Monitoring mode during OneAgent installation, use the --set-infra-only=true parameter.

For more information, see the OneAgent installation documentation that's specific to your environment.

After OneAgent installation

To enable Infrastructure Monitoring mode after OneAgent installation, use one of these options:

  • In Dynatrace
    1. From the Dynatrace menu, select Hosts and open a host overview page.
    2. Select More (…) > Settings in the upper-right corner to display the Host settings page.
    3. Select Monitoring.
    4. Turn off Full-Stack monitoring.
  • Use the OneAgent command-line interface to set the --set-infra-only=true parameter.
  • Use the Settings API to enable Infrastructure Monitoring mode at scale.
  • To download the schema, use GET a schema with builtin:host.monitoring as the schemaId and create your configuration object using POST an object.

Process injection in Infrastructure Monitoring mode

If you run your OneAgent as a container with Infrastructure Monitoring enabled, process injection will not be performed.

Infrastructure Monitoring mode enables you to monitor any infrastructure component and backing service written in Java. You can monitor backing services supported by default (for example, Kafka or ActiveMQ), and you can also build your own custom JMX and PMI extensions for infrastructure components and use them in Infrastructure Monitoring mode.

Additionally, Infrastructure Monitoring mode provides runtime metrics for:

  • Java
  • .NET
  • Node.js
  • Golang
  • PHP
  • Web servers such as Apache HTTP, NGINX, or Microsoft IIS.

To achieve this, OneAgent in Infrastructure Monitoring mode by default automatically injects into processes.

Disable auto-injection:

We don't recommend disabling auto-injection, but if you're required to do so due to strict security requirements, you can choose among a variety options. Note that disabling auto-injection also prevents Dynatrace from discovering vulnerabilities in your environment, even if you have Application Security enabled. You can disable automatic injection at the host or environment level.

Disable auto-injection for a single host

During OneAgent installation

Add the following parameters to the installation command: --set-infra-only=true --set-auto-injection-enabled=false.

Caution: If you use this command to disable automatic injection, you won't be able to control auto-injection in Infrastructure Monitoring mode using the Dynatrace web UI at Settings > Monitoring > Monitored technologies or using the OneAgent monitoring configuration API.

After OneAgent installation with UI
  1. From the Dynatrace menu, select Hosts and open a host overview page.
  2. Select More (…) > Settings in the upper-right corner to display the Host settings page.
  3. Select Monitoring.
  4. Turn off Auto-injection.
After OneAgent installation with command line

Use the OneAgent command line interface to set the --set-auto-injection-enabled=false parameter. Caution: If you use oneagentctl to disable automatic injection, you won't be able to control auto-injection in Infrastructure Monitoring mode using the Dynatrace web UI at Settings > Monitoring > Monitored technologies or OneAgent monitoring configuration API.

Disable auto-injection for an environment

Define custom process monitoring rules

You can disable process injection for particular process groups using custom process monitoring rules.

Custom process monitoring rules give you fine-grained control over which processes OneAgent injects into, with an approach that scales easily within large environments. You don’t need to adjust your system configuration, and a few rules can cover thousands of processes.

For more information, see Process deep monitoring.

Disable runtime metrics

You can disable the collection on JMX/PMI and runtime metrics, which will result in disabling auto-injection in Infrastructure Monitoring mode.

  1. From the Dynatrace menu, select Settings > Monitoring > Monitored technologies.
  2. In the list of supported technologies, search for the Java/.NET/Node.js/Golang/PHP runtime metrics + WebServer metrics in Infrastructure Mode entry.
  3. Select the pencil icon (:icon-editpen:) to edit it and then disable it.
  4. Restart all processes on your infrastructure-monitored hosts.
Disable selected extensions

You can also disable selected extensions collecting the metrics at the environment level.

  1. From the Dynatrace menu, select Settings > Monitoring > Monitored technologies.

    1. In the list of supported technologies, search for technologies marked as JMX monitoring in the Type column.
    2. Select the pencil icon (:icon-editpen:) to edit an extension of your choice.
    3. Turn off Monitor the environment for hosts in infrastructure-only monitoring mode.
    1. In the list of custom extensions, search for extensions marked as JMX or PMI in the Extension type column.
    2. Select the extension name of your choice.
    3. Turn off Monitor the environment for hosts in infrastructure-only monitoring mode.

    The setting at the host level takes precedence over environment settings. If a host is configured to Use host configuration for the extension and the extension isn't activated on this host, the environment configuration won't be applied. To make sure an extension is active on a single host level:

    1. From the Dynatrace menu, select Hosts and find an infrastructure-monitored host. You can filter by Monitoring mode: Infrastructure only.
    2. Open the host page.
    3. Select More (…) > Settings in the upper-right corner to display the Host settings page.
    4. In the Monitored technologies table, search for extensions of type JMX extension, JMX monitoring, or PMI extension.
    5. Select Edit. Use the Activate <extension name> on this host control.

Filter hosts by injection status

When you disable auto-injection, you can find such hosts using the Auto-injection filter on the Deployment status page or OneAgent on a host API.

Use Dynatrace web UI
  1. From the Dynatrace menu, select Deployment status and then select the OneAgents tab.
  2. Select the Filter by box, select Auto-injection, and select Disabled manually. You can also use one of the filters below to check other reasons. Note that a filter appears only if a host with a respective status is available in your deployment.
  • Enabled
    Auto-injection was successfully enabled.
  • Disabled manually
    Auto-injection was disabled after OneAgent installation, either using the Dynatrace web UI or oneagentctl.
  • Disabled on installation
    Auto-injection was disabled during OneAgent installation .
  • Disabled on sanity check
    Auto-injection wasn't enabled due to a failed test performed by the OneAgent installer before OneAgent installation started. Check the OneAgent installer log for details.
  • Failed on installation
    Auto-injection failed due to an error during OneAgent installation. Check the OneAgent installer log for details.
Use Dynatrace API

Run the OneAgent on a host API call with the autoInjection parameter set to DISABLED_MANUAL. The returned payload contains the list of OneAgents with auto-injection disabled after OneAgent installation, via either the Dynatrace web UI or oneagentctl.

Virtualization monitoring

Dynatrace supports virtualization monitoring. To monitor the virtual components in your environment, you need to complete an extra step beyond initial setup. For full details, see Set up virtualization monitoring.

FAQ

What happens when OneAgent injects itself into the monitored technology?

Along with injection, the injected module becomes dynamically linked into the monitored technology. As a consequence, it becomes an integral part of the monitored process and can only be removed with a process restart. Depending on the OS (Windows/Linux/AIX), injection is performed in slightly different ways, but the outcome is quite similar.

I have disabled injection, but I can see that the Dynatrace deep code modules are still injected into monitored technologies?

The injection rules refer to the point in time when the a process of a supported technology is started. After it is started, the deep-code monitoring module of OneAgent remains dynamically linked to the monitored technology and can be unloaded only by restarting the monitored process.

I have restarted/disabled/stopped OneAgent, but the injected modules remain active. What's going on?

With injection, the injected module becomes dynamically linked into the monitored technology. As a consequence, it becomes an integral part of the monitored process and can be removed only by restarting the monitored process.

How does OneAgent monitor processes?

OneAgent injects into a process each time a new process is started in the system. OneAgent identifies the launched process (by name, location, user space, and so on) and, if it's supported for injection and if the injection rules do not exclude it, OneAgent sets up a dynamic link between the monitored process and one of the OneAgent deep-code monitoring modules.

I have disabled OneAgent in the web UI, but I still see the process active on the host and there is some form of network traffic going on between OneAgent and the Dynatrace cluster. I thought that disabled OneAgents would stop all activity.

Disabled OneAgents effectively stop monitoring of your environment. However, the core of OneAgent, which is responsible for communication with the Dynatrace cluster, remains active. Because communication between OneAgent and Dynatrace clusters is always invoked on the OneAgent side, OneAgent needs to keep on sending its status and asking the cluster if it needs to start monitoring again.