A connection can see multiple Google Cloud projects. Use the Projects tab to view which projects are visible and monitored.
If the same project is visible to multiple connections, you risk ingesting duplicate data. Dynatrace detects and flags these situations. To resolve the issue, either change the service account permissions or use the connection filters.
The health features are not yet available.
The Overview tab shows ingestion status for topology, metrics, and logs.
The Health tab displays connection status. A new connection starts as Pending until we successfully authenticate with your Google Cloud service account. A connection is Unhealthy if we cannot authenticate or reach Google Cloud.
To modify an existing connection
Most changes take effect immediately. However, some changes require updates to your Google Cloud configuration:
| Change | Google Cloud action required |
|---|---|
Monitor additional projects | Grant service account |
Monitor additional folders | Grant service account |
Enable log forwarding | Deploy log forwarding infrastructure (Terraform re-run or manual setup) |
Enable or update asset inventory feeds | Deploy asset feed infrastructure or update them to reflect new asset types (Terraform re-run or manual setup) |
Rotate Log Ingest token | Update the token in deployed Google Cloud infrastructure (Dataflow config) |
You can temporarily disable a connection to stop data collection without deleting it.
To disable or enable a connection:
To resume monitoring, enable the connection using the same menu.
To delete a connection
terraform destroy.PendingA connection shows Pending status when it has been created in Dynatrace but the Google Cloud deployment is not yet complete. This is expected immediately after running the connection wizard. The status changes to Healthy once Dynatrace successfully authenticates with your Google Cloud service account.
While a connection is Pending, the Manage and Enable/Disable actions in the menu are disabled. If a connection remains stuck in Pending, see Connection stuck in Pending status under Common issues.
UnhealthyIf a connection shows Unhealthy status, check the following
| Symptom | Possible cause | Solution |
|---|---|---|
Authentication failed | Service account doesn't exist | Verify service account was created in Google Cloud |
Authentication failed | Dynatrace service account lacks impersonation rights | Grant |
Authentication failed | Domain-restricted sharing blocks Dynatrace | Add Dynatrace customer identity to allowed domains |
No metrics data | Required APIs not enabled | Enable |
No topology data | Required APIs not enabled | Enable |
Partial data | Service account lacks permissions | Grant |
Pending statusIf a connection remains in Pending status, verify the following steps have been completed:
Google Cloud deployment: Ensure the Terraform scripts have been deployed or the manual setup is complete. See Manual onboarding reference for step-by-step instructions.
Monitoring configuration linked and enabled: Link the service account to the connection and enable monitoring:
dtctl enable gcp monitoring \--name "<configuration-name>" \--serviceAccountId "<service-account-email>"
IAM configuration: Verify that the service account exists, the required APIs are enabled, and the Dynatrace platform has impersonation rights. See the prerequisites for details.
roles/viewer. If your organization requires more granular permissions, see the Grant permissions to the service account section in Manual onboarding reference for the exact IAM permissions list.The GCP monitoring extension (com.dynatrace.extension.da-gcp) is installed from the Dynatrace Hub. Monitoring configurations are version-pinned—installing a newer extension version does not automatically migrate existing configurations. You must explicitly update them.
1. Check the latest installed version
EXT="com.dynatrace.extension.da-gcp"LATEST=$(dtctl get extension "$EXT" --no-agent -o json \| jq -r '.[].version' | sort -V | tail -1)echo "Latest installed: $LATEST"
2. Install a new version from Hub
# Install latest availabledtctl create extension --hub-extension "$EXT"# Install a specific versiondtctl create extension --hub-extension "$EXT" --version 1.2.0
3. Migrate monitoring configurations to the new version
EXT="com.dynatrace.extension.da-gcp"LATEST=$(dtctl get extension "$EXT" --no-agent -o json \| jq -r '.[].version' | sort -V | tail -1)dtctl get extension-configs "$EXT" --no-agent -o json | jq -c '.[]' | while read -r cfg; doID=$(echo "$cfg" | jq -r '.objectId')CURRENT=$(echo "$cfg" | jq -r '.value.version')if [ "$CURRENT" = "$LATEST" ]; thenecho "SKIP $ID (already $LATEST)"continuefiecho "UPGRADE $ID: $CURRENT → $LATEST"TMPFILE=$(mktemp /tmp/extcfg_XXXXXX.json)echo "$cfg" | jq --arg v "$LATEST" '.value.version = $v' > "$TMPFILE"dtctl apply extension-config "$EXT" -f "$TMPFILE"rm "$TMPFILE"done