Overview
This check monitors Harbor through the Datadog Agent.
Setup
Installation
The Harbor check is included in the Datadog Agent package. No additional installation is needed on your server.
Configuration
Host
To configure this check for an Agent running on a host:
Metric collection
Edit the harbor.d/conf.yaml
file, in the conf.d/
folder at the root of your Agent’s configuration directory to start collecting your Harbor performance data. See the sample harbor.d/conf.yaml for all available configuration options.
Note: You can specify any type of user in the config but an account with admin permissions is required to fetch disk metrics. The metric harbor.projects.count
only reflects the number of projects the provided user can access.
Restart the Agent.
Log collection
Available for Agent versions >6.0
Collecting logs is disabled by default in the Datadog Agent, you need to enable it in datadog.yaml
:
Add this configuration block to your harbor.d/conf.yaml
file to start collecting your Harbor logs:
logs:
- type: file
path: /var/log/harbor/*.log
source: harbor
service: '<SERVICE_NAME>'
Restart the Agent.
Containerized
For containerized environments, see the Autodiscovery Integration Templates for guidance on applying the parameters below.
Metric collection
Parameter | Value |
---|
<INTEGRATION_NAME> | harbor |
<INIT_CONFIG> | blank or {} |
<INSTANCE_CONFIG> | {"url": "https://%%host%%", "username": "<USER_ID>", "password": "<USER_PASSWORD>"} |
Log collection
Available for Agent versions >6.0
Collecting logs is disabled by default in the Datadog Agent. To enable it, see Kubernetes Log Collection.
Parameter | Value |
---|
<LOG_CONFIG> | {"source": "harbor", "service": "<SERVICE_NAME>"} |
Validation
Run the Agent’s status subcommand and look for harbor
under the Checks section.
Data Collected
Metrics
harbor.disk.free (gauge) | The amount of storage space that is free. Shown as byte |
harbor.disk.total (gauge) | The total amount of storage space. Shown as byte |
harbor.projects.count (gauge) | The total number of projects. |
harbor.registry.read_only (gauge) | The 'read_only' status of a registry. |
Events
The Harbor integration does not include any events.
Service Checks
harbor.can_connect
Returns OK
if the Harbor API is reachable and authentication is successful, otherwise returns CRITICAL
.
Statuses: ok, critical
harbor.status
Returns OK
if the specified Harbor component is healthy, otherwise returns CRITICAL
. Returns UNKNOWN
with Harbor < 1.5.
Statuses: ok, unknown, critical
harbor.registry.status
Returns OK
if the service is healthy, otherwise returns CRITICAL
. Monitors the health of external registries used by Harbor for replication.
Statuses: ok, critical
Troubleshooting
Need help? Contact Datadog support.