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 diff --git a/octopus_deploy/assets/configuration/spec.yaml b/octopus_deploy/assets/configuration/spec.yaml index b81f882b54c58..d7764f775691d 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, - 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 @@ -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_' @@ -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 @@ -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 @@ -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 @@ -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 @@ -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 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" 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): 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..5375b43c33795 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 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", diff --git a/octopus_deploy/metadata.csv b/octopus_deploy/metadata.csv index 08a2cfbcee329..b0b724d4b1203 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,,second,,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 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 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,, +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,,