From fe26d9172b104c484645c2ba68cd9ad1a34e51d8 Mon Sep 17 00:00:00 2001 From: Sarah Witt Date: Tue, 27 May 2025 15:11:02 -0400 Subject: [PATCH 01/11] make integration public --- octopus_deploy/manifest.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/octopus_deploy/manifest.json b/octopus_deploy/manifest.json index b9202ae043f2b..bfed81fe0d41b 100644 --- a/octopus_deploy/manifest.json +++ b/octopus_deploy/manifest.json @@ -2,7 +2,7 @@ "manifest_version": "2.0.0", "app_uuid": "821889b0-d4f9-4136-8059-7b7c42e6bd43", "app_id": "octopus-deploy", - "display_on_public_website": false, + "display_on_public_website": true, "tile": { "overview": "README.md#Overview", "configuration": "README.md#Setup", From a48ed53aec3c60083587efeefa44100f4e38cadd Mon Sep 17 00:00:00 2001 From: Dominique Alessi Date: Wed, 28 May 2025 16:35:14 -0400 Subject: [PATCH 02/11] copy edits for conf yaml example --- .../octopus_deploy/data/conf.yaml.example | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example b/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example index e7bc7f08c1e57..ded44d7bf5fa6 100644 --- a/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example +++ b/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example @@ -52,7 +52,7 @@ instances: - octopus_endpoint: http://localhost:80 ## @param environments - mapping - optional - ## Optional configuration to indicate the environments that we want to be processed. If not configured, + ## Optional configuration to indicate the environments to process. If not configured, ## all environments are processed. ## ## The 'include' key indicates the regular expressions of the environments for reporting metrics. @@ -62,7 +62,7 @@ instances: ## that it might match on. ## ## The 'exclude' key indicates the regular expressions of those environments for not reporting metrics. - ## The excludes has priority over the includes, that is, if an environment matches an exclude, it is not + ## The excludes have priority over the includes; that is, if an environment matches an exclude, it is not ## processed even if it matches an include. The 'include' key must be used if using the 'exclude' key. ## ## The 'limit' key allows limiting the number of environments processed to avoid a combinatorial explosion of @@ -89,21 +89,21 @@ instances: X-Octopus-ApiKey: ## @param spaces - mapping - optional - ## Optional configuration to indicate the spaces that we want to be processed. If not configured, - ## all spaces and their corresponding project groups and projects are be processed. + ## Optional configuration to indicate the spaces to process. If not configured, + ## all spaces and their corresponding project groups and projects are processed. ## ## The 'include' key indicates the regular expressions of the spaces for reporting metrics ## and the configuration to be applied to each of them. Each group can have a 'project-groups'-like configuration, ## that enables or disables metric collection for the project groups matching that condition. For further details ## see the next section, 'project-groups'. If no configuration associated with the key is indicated with the regular - ## expression, they are be processed with the default configuration. + ## expression, they are processed with the default configuration. ## ## The spaces are processed in the order indicated in the 'include'. ## If a space is matched on an 'include' key, it is only processed there and not in a later 'include' ## that it might match on. ## ## The 'exclude' key indicates the regular expressions of those spaces for not reporting metrics. - ## The excludes have priority over the includes, that is, if a space matches an exclude, it is not + ## The excludes have priority over the includes; that is, if a space matches an exclude, it is not ## processed even if it matches an include. The 'include' key must be used if using the 'exclude' key. ## ## The 'limit' key allows limiting the number of spaces processed to avoid a combinatorial explosion of tags @@ -131,28 +131,28 @@ instances: # spaces: {} ## @param project_groups - mapping - optional - ## Optional configuration to indicate the project groups that we want to be processed. If not configured, + ## Optional configuration to indicate the project groups to process. If not configured, ## all project groups are processed. ## ## The 'include' key indicates the regular expressions of the project groups for reporting metrics ## and the configuration to be applied to each of them. Each group can have a 'projects'-like ## configuration, that enables or disables metric collection for the projects matching that condition. For ## further details see previous section 'projects'. If no configuration associated with the key is indicated with - ## the regular expression, they are be processed with the default configuration. + ## the regular expression, they are processed with the default configuration. ## ## The project groups are processed in the order indicated in the 'include'. ## If a project group is matched on an 'include' key, it is only processed there and not in a later 'include' ## that it might match on. ## ## The 'exclude' key indicates the regular expressions of those project groups for not reporting metrics. - ## The excludes has priority over the includes, that is, if a project group matches an exclude, it is not + ## The excludes have priority over the includes; that is, if a project group matches an exclude, it is not ## processed even if it matches an include. The 'include' key must be used if using the 'exclude' key. ## ## The 'limit' key allows limiting the number of project groups processed to avoid a combinatorial explosion of ## tags associated with a metric. ## ## The 'interval' key indicates the validity time of the last list of project groups obtained through the - ## endpoint. If 'interval' is not indicated, the list of project groups are obtained each time the check is + ## endpoint. If 'interval' is not indicated, the list of project groups is obtained each time the check is ## executed and is not cached. ## ## In the following example, all project groups are processed except those whose name begins with 'tmp_' @@ -170,17 +170,17 @@ instances: # project_groups: {} ## @param projects - mapping - optional - ## Optional configuration to indicate the projects that we want to be processed. If not configured, + ## Optional configuration to indicate the projects to process. If not configured, ## all projects are processed. ## ## The 'include' key indicates the regular expressions of the projects for reporting metrics. ## ## The projects are processed in the order indicated in the 'include'. - ## If a projects is matched on an 'include' key, it is only processed there and not in a later 'include' + ## If a project is matched on an 'include' key, it is only processed there and not in a later 'include' ## that it might match on. ## ## The 'exclude' key indicates the regular expressions of those projects for not reporting metrics. - ## The excludes has priority over the includes, that is, if a projects matches an exclude, it is not + ## The excludes have priority over the includes; that is, if a project matches an exclude, it is not ## processed even if it matches an include. The 'include' key must be used if using the 'exclude' key. ## ## The 'limit' key allows limiting the number of projects processed to avoid a combinatorial explosion of tags @@ -286,7 +286,7 @@ instances: ## @param metric_patterns - mapping - optional ## A mapping of metrics to include or exclude, with each entry being a regular expression. ## - ## Metrics defined in `exclude` will take precedence in case of overlap. + ## Metrics defined in `exclude` take precedence in case of overlap. # # metric_patterns: # include: From f73d03abd808919d62bebe21234233f4caa8990b Mon Sep 17 00:00:00 2001 From: Dominique Alessi Date: Wed, 28 May 2025 16:39:10 -0400 Subject: [PATCH 03/11] remove second unit name --- octopus_deploy/metadata.csv | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/octopus_deploy/metadata.csv b/octopus_deploy/metadata.csv index 08a2cfbcee329..0129a481a1c0b 100644 --- a/octopus_deploy/metadata.csv +++ b/octopus_deploy/metadata.csv @@ -2,7 +2,7 @@ metric_name,metric_type,interval,unit_name,per_unit_name,description,orientation octopus_deploy.api.can_connect,gauge,,,,Whether or not the check can connect to the Octopus Deploy API.,-1,octopus_deploy,octopus_deploy api,, octopus_deploy.deployment.completed_time,gauge,,second,,Duration of deployment.,-1,octopus_deploy,octopus_deploy deploy dur,, octopus_deploy.deployment.count,gauge,,,,Number of deployments monitored.,-1,octopus_deploy,octopus_deploy deploy count,, -octopus_deploy.deployment.executing,gauge,,second,,Whether or not the deployment is currently executing.,-1,octopus_deploy,octopus_deploy deploy executing,, +octopus_deploy.deployment.executing,gauge,,,,Whether or not the deployment is currently executing.,-1,octopus_deploy,octopus_deploy deploy executing,, octopus_deploy.deployment.executing_time,gauge,,second,,How long the deployment has been executing.,-1,octopus_deploy,octopus_deploy deploy dur,, octopus_deploy.deployment.queued,gauge,,second,,Whether or not the deployment is currently in the queue.,-1,octopus_deploy,octopus_deploy deploy queue,, octopus_deploy.deployment.queued_time,gauge,,second,,Time deployment was in queue.,-1,octopus_deploy,octopus_deploy deploy queue,, From 3355f75069079e7e4fb9cd02e6c0f674fca14311 Mon Sep 17 00:00:00 2001 From: Dominique Alessi Date: Wed, 28 May 2025 16:51:29 -0400 Subject: [PATCH 04/11] tweaks to metadata csv --- octopus_deploy/metadata.csv | 38 ++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/octopus_deploy/metadata.csv b/octopus_deploy/metadata.csv index 0129a481a1c0b..6b3599c240620 100644 --- a/octopus_deploy/metadata.csv +++ b/octopus_deploy/metadata.csv @@ -1,20 +1,20 @@ metric_name,metric_type,interval,unit_name,per_unit_name,description,orientation,integration,short_name,curated_metric,sample_tags -octopus_deploy.api.can_connect,gauge,,,,Whether or not the check can connect to the Octopus Deploy API.,-1,octopus_deploy,octopus_deploy api,, -octopus_deploy.deployment.completed_time,gauge,,second,,Duration of deployment.,-1,octopus_deploy,octopus_deploy deploy dur,, -octopus_deploy.deployment.count,gauge,,,,Number of deployments monitored.,-1,octopus_deploy,octopus_deploy deploy count,, -octopus_deploy.deployment.executing,gauge,,,,Whether or not the deployment is currently executing.,-1,octopus_deploy,octopus_deploy deploy executing,, -octopus_deploy.deployment.executing_time,gauge,,second,,How long the deployment has been executing.,-1,octopus_deploy,octopus_deploy deploy dur,, -octopus_deploy.deployment.queued,gauge,,second,,Whether or not the deployment is currently in the queue.,-1,octopus_deploy,octopus_deploy deploy queue,, -octopus_deploy.deployment.queued_time,gauge,,second,,Time deployment was in queue.,-1,octopus_deploy,octopus_deploy deploy queue,, -octopus_deploy.deployment.waiting,gauge,,second,,Whether or not the deployment is in a waiting state.,-1,octopus_deploy,octopus_deploy deploy waiting,, -octopus_deploy.environment.allow_dynamic_infrastructure,gauge,,,,Whether or not the environment allows dynamic infrastructure.,-1,octopus_deploy,octopus_deploy env infra,, -octopus_deploy.environment.count,gauge,,,,Number of environments discovered.,-1,octopus_deploy,octopus_deploy env count,, -octopus_deploy.environment.use_guided_failure,gauge,,,,Whether or not the environment is in guided failure mode.,-1,octopus_deploy,octopus_deploy env guided failure,, -octopus_deploy.machine.count,gauge,,,,Number of machines discovered.,-1,octopus_deploy,octopus_deploy machine count,, -octopus_deploy.machine.is_healthy,gauge,,,,Whether or not the machine is healthy.,-1,octopus_deploy,octopus_deploy machine health,, -octopus_deploy.project.count,gauge,,,,Number of projects discovered.,-1,octopus_deploy,octopus_deploy projects count,, -octopus_deploy.project_group.count,gauge,,,,Number of project groups discovered.,-1,octopus_deploy,octopus_deploy project group count,, -octopus_deploy.server_node.count,gauge,,,,Number of Octopus server nodes discovered.,-1,octopus_deploy,octopus_deploy server count,, -octopus_deploy.server_node.in_maintenance_mode,gauge,,,,Whether the Octopus server node is in maintenance mode or not.,-1,octopus_deploy,octopus_deploy server maintenance,, -octopus_deploy.server_node.max_concurrent_tasks,gauge,,,,The max concurrent tasks for the given Octopus server node.,-1,octopus_deploy,octopus_deploy server max tasks,, -octopus_deploy.space.count,gauge,,,,Number of spaces discovered.,-1,octopus_deploy,octopus_deploy space count,, +octopus_deploy.api.can_connect,gauge,,,,Whether or not the check can connect to the Octopus Deploy API,-1,octopus_deploy,octopus_deploy api,, +octopus_deploy.deployment.completed_time,gauge,,second,,Duration of deployment,-1,octopus_deploy,octopus_deploy deploy dur,, +octopus_deploy.deployment.count,gauge,,,,Number of deployments monitored,-1,octopus_deploy,octopus_deploy deploy count,, +octopus_deploy.deployment.executing,gauge,,,,Whether or not the deployment is currently executing,-1,octopus_deploy,octopus_deploy deploy executing,, +octopus_deploy.deployment.executing_time,gauge,,second,,How long the deployment has been executing,-1,octopus_deploy,octopus_deploy deploy dur,, +octopus_deploy.deployment.queued,gauge,,second,,Whether or not the deployment is currently in the queue,-1,octopus_deploy,octopus_deploy deploy queue,, +octopus_deploy.deployment.queued_time,gauge,,second,,Time deployment was in queue,-1,octopus_deploy,octopus_deploy deploy queue,, +octopus_deploy.deployment.waiting,gauge,,second,,Whether or not the deployment is in a waiting state,-1,octopus_deploy,octopus_deploy deploy waiting,, +octopus_deploy.environment.allow_dynamic_infrastructure,gauge,,,,Whether or not the environment allows dynamic infrastructure,-1,octopus_deploy,octopus_deploy env infra,, +octopus_deploy.environment.count,gauge,,,,Number of environments discovered,-1,octopus_deploy,octopus_deploy env count,, +octopus_deploy.environment.use_guided_failure,gauge,,,,Whether or not the environment is in guided failure mode,-1,octopus_deploy,octopus_deploy env guided failure,, +octopus_deploy.machine.count,gauge,,,,Number of machines discovered,-1,octopus_deploy,octopus_deploy machine count,, +octopus_deploy.machine.is_healthy,gauge,,,,Whether or not the machine is healthy,-1,octopus_deploy,octopus_deploy machine health,, +octopus_deploy.project.count,gauge,,,,Number of projects discovered,-1,octopus_deploy,octopus_deploy projects count,, +octopus_deploy.project_group.count,gauge,,,,Number of project groups discovered,-1,octopus_deploy,octopus_deploy project group count,, +octopus_deploy.server_node.count,gauge,,,,Number of Octopus server nodes discovered,-1,octopus_deploy,octopus_deploy server count,, +octopus_deploy.server_node.in_maintenance_mode,gauge,,,,Whether or not the Octopus server node is in maintenance mode,-1,octopus_deploy,octopus_deploy server maintenance,, +octopus_deploy.server_node.max_concurrent_tasks,gauge,,,,The max concurrent tasks for the given Octopus server node,-1,octopus_deploy,octopus_deploy server max tasks,, +octopus_deploy.space.count,gauge,,,,Number of spaces discovered,-1,octopus_deploy,octopus_deploy space count,, From 95c1d20e7090ebcbab1698ba3b38ea7a375548b2 Mon Sep 17 00:00:00 2001 From: Sarah Witt Date: Wed, 28 May 2025 17:40:27 -0400 Subject: [PATCH 05/11] Update docs --- octopus_deploy/assets/configuration/spec.yaml | 24 +++++++++---------- .../octopus_deploy/data/conf.yaml.example | 4 ++-- octopus_deploy/metadata.csv | 10 ++++---- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/octopus_deploy/assets/configuration/spec.yaml b/octopus_deploy/assets/configuration/spec.yaml index b81f882b54c58..0a804b9fa0e0d 100644 --- a/octopus_deploy/assets/configuration/spec.yaml +++ b/octopus_deploy/assets/configuration/spec.yaml @@ -20,21 +20,21 @@ files: - name: spaces display_priority: 5 description: | - Optional configuration to indicate the spaces that we want to be processed. If not configured, + Optional configuration to indicate the spaces to process. If not configured, all spaces and their corresponding project groups and projects are be processed. The 'include' key indicates the regular expressions of the spaces for reporting metrics and the configuration to be applied to each of them. Each group can have a 'project-groups'-like configuration, that enables or disables metric collection for the project groups matching that condition. For further details see the next section, 'project-groups'. If no configuration associated with the key is indicated with the regular - expression, they are be processed with the default configuration. + expression, they are processed with the default configuration. The spaces are processed in the order indicated in the 'include'. If a space is matched on an 'include' key, it is only processed there and not in a later 'include' that it might match on. The 'exclude' key indicates the regular expressions of those spaces for not reporting metrics. - The excludes have priority over the includes, that is, if a space matches an exclude, it is not + The excludes have priority over the includes; that is, if a space matches an exclude, it is not processed even if it matches an include. The 'include' key must be used if using the 'exclude' key. The 'limit' key allows limiting the number of spaces processed to avoid a combinatorial explosion of tags @@ -81,28 +81,28 @@ files: - name: project_groups display_priority: 5 description: | - Optional configuration to indicate the project groups that we want to be processed. If not configured, + Optional configuration to indicate the project groups to process. If not configured, all project groups are processed. The 'include' key indicates the regular expressions of the project groups for reporting metrics and the configuration to be applied to each of them. Each group can have a 'projects'-like configuration, that enables or disables metric collection for the projects matching that condition. For further details see previous section 'projects'. If no configuration associated with the key is indicated with - the regular expression, they are be processed with the default configuration. + the regular expression, they are processed with the default configuration. The project groups are processed in the order indicated in the 'include'. If a project group is matched on an 'include' key, it is only processed there and not in a later 'include' that it might match on. The 'exclude' key indicates the regular expressions of those project groups for not reporting metrics. - The excludes has priority over the includes, that is, if a project group matches an exclude, it is not + The excludes have priority over the includes; that is, if a project group matches an exclude, it is not processed even if it matches an include. The 'include' key must be used if using the 'exclude' key. The 'limit' key allows limiting the number of project groups processed to avoid a combinatorial explosion of tags associated with a metric. The 'interval' key indicates the validity time of the last list of project groups obtained through the - endpoint. If 'interval' is not indicated, the list of project groups are obtained each time the check is + endpoint. If 'interval' is not indicated, the list of project groups is obtained each time the check is executed and is not cached. In the following example, all project groups are processed except those whose name begins with 'tmp_' @@ -139,17 +139,17 @@ files: - name: projects display_priority: 5 description: | - Optional configuration to indicate the projects that we want to be processed. If not configured, + Optional configuration to indicate the projects to process. If not configured, all projects are processed. The 'include' key indicates the regular expressions of the projects for reporting metrics. The projects are processed in the order indicated in the 'include'. - If a projects is matched on an 'include' key, it is only processed there and not in a later 'include' + If a project is matched on an 'include' key, it is only processed there and not in a later 'include' that it might match on. The 'exclude' key indicates the regular expressions of those projects for not reporting metrics. - The excludes has priority over the includes, that is, if a projects matches an exclude, it is not + The excludes have priority over the includes; that is, if a project matches an exclude, it is not processed even if it matches an include. The 'include' key must be used if using the 'exclude' key. The 'limit' key allows limiting the number of projects processed to avoid a combinatorial explosion of tags @@ -187,7 +187,7 @@ files: - name: environments display_priority: 6 description: | - Optional configuration to indicate the environments that we want to be processed. If not configured, + Optional configuration to indicate the environments to process. If not configured, all environments are processed. The 'include' key indicates the regular expressions of the environments for reporting metrics. @@ -197,7 +197,7 @@ files: that it might match on. The 'exclude' key indicates the regular expressions of those environments for not reporting metrics. - The excludes has priority over the includes, that is, if an environment matches an exclude, it is not + The excludes have priority over the includes; that is, if an environment matches an exclude, it is not processed even if it matches an include. The 'include' key must be used if using the 'exclude' key. The 'limit' key allows limiting the number of environments processed to avoid a combinatorial explosion of diff --git a/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example b/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example index ded44d7bf5fa6..77402568af7f0 100644 --- a/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example +++ b/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example @@ -90,7 +90,7 @@ instances: ## @param spaces - mapping - optional ## Optional configuration to indicate the spaces to process. If not configured, - ## all spaces and their corresponding project groups and projects are processed. + ## all spaces and their corresponding project groups and projects are be processed. ## ## The 'include' key indicates the regular expressions of the spaces for reporting metrics ## and the configuration to be applied to each of them. Each group can have a 'project-groups'-like configuration, @@ -286,7 +286,7 @@ instances: ## @param metric_patterns - mapping - optional ## A mapping of metrics to include or exclude, with each entry being a regular expression. ## - ## Metrics defined in `exclude` take precedence in case of overlap. + ## Metrics defined in `exclude` will take precedence in case of overlap. # # metric_patterns: # include: diff --git a/octopus_deploy/metadata.csv b/octopus_deploy/metadata.csv index 6b3599c240620..b0b724d4b1203 100644 --- a/octopus_deploy/metadata.csv +++ b/octopus_deploy/metadata.csv @@ -1,12 +1,12 @@ metric_name,metric_type,interval,unit_name,per_unit_name,description,orientation,integration,short_name,curated_metric,sample_tags octopus_deploy.api.can_connect,gauge,,,,Whether or not the check can connect to the Octopus Deploy API,-1,octopus_deploy,octopus_deploy api,, -octopus_deploy.deployment.completed_time,gauge,,second,,Duration of deployment,-1,octopus_deploy,octopus_deploy deploy dur,, +octopus_deploy.deployment.completed_time,gauge,,second,,Duration of deployment,-1,octopus_deploy,octopus_deploy deploy completed,, octopus_deploy.deployment.count,gauge,,,,Number of deployments monitored,-1,octopus_deploy,octopus_deploy deploy count,, octopus_deploy.deployment.executing,gauge,,,,Whether or not the deployment is currently executing,-1,octopus_deploy,octopus_deploy deploy executing,, -octopus_deploy.deployment.executing_time,gauge,,second,,How long the deployment has been executing,-1,octopus_deploy,octopus_deploy deploy dur,, -octopus_deploy.deployment.queued,gauge,,second,,Whether or not the deployment is currently in the queue,-1,octopus_deploy,octopus_deploy deploy queue,, -octopus_deploy.deployment.queued_time,gauge,,second,,Time deployment was in queue,-1,octopus_deploy,octopus_deploy deploy queue,, -octopus_deploy.deployment.waiting,gauge,,second,,Whether or not the deployment is in a waiting state,-1,octopus_deploy,octopus_deploy deploy waiting,, +octopus_deploy.deployment.executing_time,gauge,,second,,How long the deployment has been executing,-1,octopus_deploy,octopus_deploy deploy execute,, +octopus_deploy.deployment.queued,gauge,,,,Whether or not the deployment is currently in the queue,-1,octopus_deploy,octopus_deploy deploy queue,, +octopus_deploy.deployment.queued_time,gauge,,second,,Time deployment was in queue,-1,octopus_deploy,octopus_deploy deploy queue time,, +octopus_deploy.deployment.waiting,gauge,,,,Whether or not the deployment is in a waiting state,-1,octopus_deploy,octopus_deploy deploy waiting,, octopus_deploy.environment.allow_dynamic_infrastructure,gauge,,,,Whether or not the environment allows dynamic infrastructure,-1,octopus_deploy,octopus_deploy env infra,, octopus_deploy.environment.count,gauge,,,,Number of environments discovered,-1,octopus_deploy,octopus_deploy env count,, octopus_deploy.environment.use_guided_failure,gauge,,,,Whether or not the environment is in guided failure mode,-1,octopus_deploy,octopus_deploy env guided failure,, From 92c47f09340ff0506a27d0bc2bed2e4ea1be89fb Mon Sep 17 00:00:00 2001 From: Dominique Alessi Date: Thu, 29 May 2025 13:59:54 -0400 Subject: [PATCH 06/11] README copy edit --- octopus_deploy/README.md | 49 ++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 25 deletions(-) diff --git a/octopus_deploy/README.md b/octopus_deploy/README.md index 5c2e9c66c8ba5..0f55ceb8095d3 100644 --- a/octopus_deploy/README.md +++ b/octopus_deploy/README.md @@ -2,49 +2,48 @@ ## Overview -This check monitors your [Octopus Deploy][1] deployments through the Datadog Agent. Track information such as average deployment time per Environment, and deployment failure rate for a Project. +This check monitors your [Octopus Deploy][1] deployments through the Datadog Agent. Track information such as average deployment time per environment and deployment failure rate for a project. ## Setup -Follow the instructions below to install and configure this check for an Agent running on a host. For containerized environments, see the [Autodiscovery Integration Templates][3] for guidance on applying these instructions. +Complete the following steps to install and configure this check on a host-based Agent. For containerized environments, see the [Autodiscovery Integration Templates][3] for guidance on applying these instructions. ### Installation -The Octopus Deploy check is included in the [Datadog Agent][2] package. -No additional installation is needed on your server. +The Octopus Deploy check is included in the [Datadog Agent][2] package. No additional installation is needed. ### Configuration 1. Create an [API key][10] on your Octopus Server. -2. Edit the `octopus_deploy.d/conf.yaml` file in the `conf.d/` folder at the root of your Agent's configuration directory to start collecting your `octopus_deploy` performance data. See the [sample `octopus_deploy.d/conf.yaml`][4] for all available configuration options. +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][4] for all available options. - Ensure you limit the amount of projects you collect data for by using either the `spaces`, `project_groups`, or `projects` configuration options. For example, this configuration collects data about at most 10 projects, and only those projects whose names start with 'test': + **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.*' - ``` + ``` + projects: + limit: 10 + include: + - 'test.*' + ``` 3. [Restart the Agent][5]. #### Logs -The Octopus deploy integration collects two types of logs: deployment logs and server logs. +The Octopus Deploy integration collects two types of logs: deployment logs and server logs. -##### Collecting Deployment Logs +##### Collecting deployment logs -Deployment logs are gathered from deployment tasks, useful for debugging failed deployments. To collect deployment logs, complete the following steps: +Deployment logs are gathered from deployment tasks and are useful for debugging failed deployments. To collect deployment logs: -1. Collecting logs is disabled by default in the Datadog Agent. Enable it in your `datadog.yaml` file: +1. Enable log collection in your `datadog.yaml` file: ```yaml logs_enabled: true ``` -2. Uncomment and edit the logs configuration block in your `octopus_deploy.d/conf.yaml` file. Here's an example: +2. Uncomment and edit the logs configuration block in your `octopus_deploy.d/conf.yaml` file. For example: ```yaml logs: @@ -52,17 +51,17 @@ Deployment logs are gathered from deployment tasks, useful for debugging failed source: octopus_deploy ``` -##### Collecting Server Logs +##### 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 same machine as the Octopus Server. To collect server logs, complete the following steps: +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. Collecting logs is disabled by default in the Datadog Agent. Enable it in your `datadog.yaml` file: +1. Enable log collection in your `datadog.yaml` file: ```yaml logs_enabled: true ``` -2. Uncomment and edit the logs configuration block in your `octopus_deploy.d/conf.yaml` file. Here's an example: +2. Uncomment and edit the logs configuration block in your `octopus_deploy.d/conf.yaml` file. For example: ```yaml logs: @@ -75,7 +74,7 @@ Server logs are diagnostic information from the Octopus Server itself. They can [Run the Agent's status subcommand][6] and look for `octopus_deploy` under the Checks section. -## Data Collected +## Data collected ### Metrics @@ -83,11 +82,11 @@ See [metadata.csv][7] for a list of metrics provided by this integration. ### Events -The Octopus Deploy integration does not include any events. +The Octopus Deploy integration does not include events. -### Service Checks +### Service checks -The Octopus Deploy integration does not include any service checks. +The Octopus Deploy integration does not include service checks. ## Troubleshooting From 333b6e7fe8aa0777c4bbb77f7a78fc9f2f855cac Mon Sep 17 00:00:00 2001 From: Dominique Alessi Date: Thu, 29 May 2025 14:03:09 -0400 Subject: [PATCH 07/11] spec yaml tweaks --- octopus_deploy/assets/configuration/spec.yaml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/octopus_deploy/assets/configuration/spec.yaml b/octopus_deploy/assets/configuration/spec.yaml index 0a804b9fa0e0d..bd7bc3d9251d2 100644 --- a/octopus_deploy/assets/configuration/spec.yaml +++ b/octopus_deploy/assets/configuration/spec.yaml @@ -21,10 +21,10 @@ files: display_priority: 5 description: | Optional configuration to indicate the spaces to process. If not configured, - all spaces and their corresponding project groups and projects are be processed. + all spaces and their corresponding project groups and projects are processed. The 'include' key indicates the regular expressions of the spaces for reporting metrics - and the configuration to be applied to each of them. Each group can have a 'project-groups'-like configuration, + and the configuration to be applied to each of them. Each group can have a 'project-groups'-like configuration, that enables or disables metric collection for the project groups matching that condition. For further details see the next section, 'project-groups'. If no configuration associated with the key is indicated with the regular expression, they are processed with the default configuration. @@ -121,7 +121,7 @@ files: properties: - name: limit description: | - Maximum number of project groups to be processed. + Maximum number of project groups processed. type: integer - name: include type: array @@ -169,7 +169,7 @@ files: properties: - name: limit description: | - Maximum number of projects to be processed. + Maximum number of projects processed. type: integer - name: include type: array @@ -218,7 +218,7 @@ files: properties: - name: limit description: | - Maximum number of environments to be processed. + Maximum number of environments processed. type: integer - name: include type: array From 128a133d78483df6e3ae9bf1e41ac44e7b2d0c3b Mon Sep 17 00:00:00 2001 From: Dominique Alessi Date: Thu, 29 May 2025 14:05:56 -0400 Subject: [PATCH 08/11] minor conf yaml example edits --- .../datadog_checks/octopus_deploy/data/conf.yaml.example | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example b/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example index 77402568af7f0..5375b43c33795 100644 --- a/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example +++ b/octopus_deploy/datadog_checks/octopus_deploy/data/conf.yaml.example @@ -90,7 +90,7 @@ instances: ## @param spaces - mapping - optional ## Optional configuration to indicate the spaces to process. If not configured, - ## all spaces and their corresponding project groups and projects are be processed. + ## all spaces and their corresponding project groups and projects are processed. ## ## The 'include' key indicates the regular expressions of the spaces for reporting metrics ## and the configuration to be applied to each of them. Each group can have a 'project-groups'-like configuration, From f21d558f74d21e13080309fbf0a9cbab6bbd5108 Mon Sep 17 00:00:00 2001 From: Dominique Alessi Date: Thu, 29 May 2025 14:11:00 -0400 Subject: [PATCH 09/11] dashboard overview.json copy tweaks --- octopus_deploy/assets/dashboards/overview.json | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/octopus_deploy/assets/dashboards/overview.json b/octopus_deploy/assets/dashboards/overview.json index 837e05c393de0..f270e187cf9e7 100644 --- a/octopus_deploy/assets/dashboards/overview.json +++ b/octopus_deploy/assets/dashboards/overview.json @@ -1,6 +1,6 @@ { "author_name": "Datadog", - "description": "**Octopus Deploy**\n\nThis dashboard provides an overview of your [Octopus Deploy](https://octopus.com/) environment. Track key deployment metrics like success and failure rates, deployment frequency per project, and more. \n\n**Useful Links**\n\n* [Integration Docs](https://docs.datadoghq.com/integrations/octopus_deploy)\n*[Octopus Deploy Docs](https://octopus.com/docs)", + "description": "**Octopus Deploy**\n\nThis dashboard provides an overview of your [Octopus Deploy](https://octopus.com/) environment. Track key deployment metrics like success and failure rates, deployment frequency per project, and more. \n\n**Useful Links**\n\n* [Integration Docs](https://docs.datadoghq.com/integrations/octopus_deploy)\n* [Octopus Deploy Docs](https://octopus.com/docs)", "layout_type": "ordered", "template_variables": [ { @@ -270,7 +270,7 @@ { "definition": { "background_color": "blue", - "content": "View the current status of deployments in your environment- are there many projects in the queue? Are there any deployments waiting for manual intervention? ", + "content": "View the current status of deployments in your environment, such as which projects are in the queue or which deployments are waiting for manual intervention.", "font_size": "14", "has_padding": true, "show_tick": false, @@ -453,7 +453,7 @@ { "definition": { "background_color": "blue", - "content": "Get an overview of overall deployment health and trend across projects. Use the project_name template variable to see current values per project ", + "content": "Get an overview of deployment health and trends across projects. Use the project_name template variable to see current values per project.", "font_size": "14", "has_padding": true, "show_tick": false, @@ -506,7 +506,7 @@ } ], "show_legend": true, - "title": "Average Execution Time ", + "title": "Average Execution Time", "title_align": "left", "title_size": "16", "type": "timeseries" From b202fc97a8b9f01470aafaf91c06a6c7bea5d3e3 Mon Sep 17 00:00:00 2001 From: domalessi <111786334+domalessi@users.noreply.github.com> Date: Thu, 29 May 2025 14:13:00 -0400 Subject: [PATCH 10/11] Update octopus_deploy/assets/configuration/spec.yaml --- octopus_deploy/assets/configuration/spec.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/octopus_deploy/assets/configuration/spec.yaml b/octopus_deploy/assets/configuration/spec.yaml index bd7bc3d9251d2..d7764f775691d 100644 --- a/octopus_deploy/assets/configuration/spec.yaml +++ b/octopus_deploy/assets/configuration/spec.yaml @@ -24,7 +24,7 @@ files: all spaces and their corresponding project groups and projects are processed. The 'include' key indicates the regular expressions of the spaces for reporting metrics - and the configuration to be applied to each of them. Each group can have a 'project-groups'-like configuration, + and the configuration to be applied to each of them. Each group can have a 'project-groups'-like configuration, that enables or disables metric collection for the project groups matching that condition. For further details see the next section, 'project-groups'. If no configuration associated with the key is indicated with the regular expression, they are processed with the default configuration. From a39469cc7e358d9693416ef2cc1a001e81c06ca4 Mon Sep 17 00:00:00 2001 From: Sarah Witt Date: Thu, 29 May 2025 14:30:45 -0400 Subject: [PATCH 11/11] update instance --- .../datadog_checks/octopus_deploy/config_models/instance.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/octopus_deploy/datadog_checks/octopus_deploy/config_models/instance.py b/octopus_deploy/datadog_checks/octopus_deploy/config_models/instance.py index 7793178c738d5..957caf9f0df2e 100644 --- a/octopus_deploy/datadog_checks/octopus_deploy/config_models/instance.py +++ b/octopus_deploy/datadog_checks/octopus_deploy/config_models/instance.py @@ -37,7 +37,7 @@ class Environments(BaseModel): exclude: Optional[tuple[str, ...]] = None include: Optional[tuple[Union[str, MappingProxyType[str, Any]], ...]] = None interval: Optional[int] = None - limit: Optional[int] = Field(None, description='Maximum number of environments to be processed.\n') + limit: Optional[int] = Field(None, description='Maximum number of environments processed.\n') class MetricPatterns(BaseModel): @@ -57,7 +57,7 @@ class ProjectGroups(BaseModel): exclude: Optional[tuple[str, ...]] = None include: Optional[tuple[Union[str, MappingProxyType[str, Any]], ...]] = None interval: Optional[int] = None - limit: Optional[int] = Field(None, description='Maximum number of project groups to be processed.\n') + limit: Optional[int] = Field(None, description='Maximum number of project groups processed.\n') class Projects(BaseModel): @@ -68,7 +68,7 @@ class Projects(BaseModel): exclude: Optional[tuple[str, ...]] = None include: Optional[tuple[Union[str, MappingProxyType[str, Any]], ...]] = None interval: Optional[int] = None - limit: Optional[int] = Field(None, description='Maximum number of projects to be processed.\n') + limit: Optional[int] = Field(None, description='Maximum number of projects processed.\n') class Proxy(BaseModel):