Octopus Deploy

Supported OS Linux Windows Mac OS

Integration version1.0.2

Overview

This check monitors your Octopus Deploy deployments through the Datadog Agent. Track information such as average deployment time per environment and deployment failure rate for a project.

Setup

Complete the following steps to install and configure this check on a host-based Agent. For containerized environments, see the Autodiscovery Integration Templates for guidance on applying these instructions.

Installation

The Octopus Deploy check is included in the Datadog Agent package. No additional installation is needed.

Configuration

  1. Create an API key on your Octopus Server.

  2. Edit the octopus_deploy.d/conf.yaml file (located in the conf.d/ folder at the root of your Agent’s configuration directory) to start collecting octopus_deploy performance data. See the sample config for all available options.

    Note: Limit the number of projects you collect data for by configuring one of the spaces, project_groups, or projects sections. For example, the following snippet limits collection to at most 10 projects whose names start with ’test':

    projects:
        limit: 10
        include:
        - 'test.*'
    
  3. Restart the Agent.

Logs

The Octopus Deploy integration collects two types of logs: deployment logs and server logs.

Collecting deployment logs

Deployment logs are gathered from deployment tasks and are useful for debugging failed deployments. To collect deployment logs:

  1. Enable log collection in your datadog.yaml file:

    logs_enabled: true
    
  2. Uncomment and edit the logs configuration block in your octopus_deploy.d/conf.yaml file. For example:

    logs:
      - type: integration
        source: octopus_deploy
    
Collecting server logs

Server logs are diagnostic information from the Octopus Server itself. They can only be collected when the Datadog Agent is running on the same machine as the Octopus Server. To collect server logs:

  1. Enable log collection in your datadog.yaml file:

    logs_enabled: true
    
  2. Uncomment and edit the logs configuration block in your octopus_deploy.d/conf.yaml file. For example:

    logs:
      - type: file
        path: /OctopusServer/Server/Logs/OctopusServer.txt
        source: octopus_deploy
    

Validation

Run the Agent’s status subcommand and look for octopus_deploy under the Checks section.

Data collected

Metrics

octopus_deploy.api.can_connect
(gauge)
Whether or not the check can connect to the Octopus Deploy API
octopus_deploy.deployment.completed_time
(gauge)
Duration of deployment
Shown as second
octopus_deploy.deployment.count
(gauge)
Number of deployments monitored
octopus_deploy.deployment.executing
(gauge)
Whether or not the deployment is currently executing
octopus_deploy.deployment.executing_time
(gauge)
How long the deployment has been executing
Shown as second
octopus_deploy.deployment.queued
(gauge)
Whether or not the deployment is currently in the queue
octopus_deploy.deployment.queued_time
(gauge)
Time deployment was in queue
Shown as second
octopus_deploy.deployment.waiting
(gauge)
Whether or not the deployment is in a waiting state
octopus_deploy.environment.allow_dynamic_infrastructure
(gauge)
Whether or not the environment allows dynamic infrastructure
octopus_deploy.environment.count
(gauge)
Number of environments discovered
octopus_deploy.environment.use_guided_failure
(gauge)
Whether or not the environment is in guided failure mode
octopus_deploy.machine.count
(gauge)
Number of machines discovered
octopus_deploy.machine.is_healthy
(gauge)
Whether or not the machine is healthy
octopus_deploy.project.count
(gauge)
Number of projects discovered
octopus_deploy.project_group.count
(gauge)
Number of project groups discovered
octopus_deploy.server_node.count
(gauge)
Number of Octopus server nodes discovered
octopus_deploy.server_node.in_maintenance_mode
(gauge)
Whether or not the Octopus server node is in maintenance mode
octopus_deploy.server_node.max_concurrent_tasks
(gauge)
The max concurrent tasks for the given Octopus server node
octopus_deploy.space.count
(gauge)
Number of spaces discovered

Events

The Octopus Deploy integration does not include events.

Service checks

The Octopus Deploy integration does not include service checks.

Troubleshooting

Need help? Contact Datadog support.