Upon completing the restore operation, you can use the control plane to confirm that your organization's developers,
apps, and API products were restored correctly.
To view the restored data:
On the command line, get or refresh your gcloud authentication credentials, as the following
example shows:
TOKEN=$(gcloud auth print-access-token)
Use the following command to validate your organization's data, where APIGEE_ORG is
an Apigee organization deployed in the cluster:
During the Cassandra restoration in Apigee hybrid, you may encounter
errors in the restore logs. See
Troubleshooting Cassandra restore for
errors, causes, and how to resolve the issues.
DNS Configuration for new cluster and traffic cutover
Once you are satisfied with validation, redirect the traffic to the new cluster and change the dns
entry to new ingress EXTERNAL-IP address.
Get the EXTERNAL-IP with the following command:
kubectl get svc -n istio-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
istio-ingressgateway LoadBalancer 10.11.123.45 34.56.78.90 15021:32225/TCP,80:32208/TCP,443:31942/TCP,15012:32689/TCP,15443:31936/TCP 1d
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-29 UTC."],[[["\u003cp\u003eThis documentation provides instructions on how to check restore job logs to confirm the successful completion and validate the restore operation.\u003c/p\u003e\n"],["\u003cp\u003eYou can use \u003ccode\u003ekubectl\u003c/code\u003e commands to verify if the restore operation completed without errors and that Cassandra replicas are running.\u003c/p\u003e\n"],["\u003cp\u003eThe restore logs can be viewed using the \u003ccode\u003ekubectl logs\u003c/code\u003e command to check if any issues occurred during the restore process.\u003c/p\u003e\n"],["\u003cp\u003eAfter restoration, the control plane can be used to validate the successful restoration of the organization's developers, apps, and API products through \u003ccode\u003ecurl\u003c/code\u003e commands.\u003c/p\u003e\n"],["\u003cp\u003eOnce restore has been validated, you can redirect traffic to the new cluster by changing the DNS to the new ingress \u003ccode\u003eEXTERNAL-IP\u003c/code\u003e address, which is obtained via a \u003ccode\u003ekubectl get svc\u003c/code\u003e command.\u003c/p\u003e\n"]]],[],null,["# Viewing restore logs\n\n| You are currently viewing version 1.10 of the Apigee hybrid documentation. **This version is end of life.** You should upgrade to a newer version. For more information, see [Supported versions](/apigee/docs/hybrid/supported-platforms#supported-versions).\n\nThis page describes how you can check the restore job logs to confirm completion and validate the restore.\n\nVerifying completion\n--------------------\n\nTo verify that the restore operation completed successfully:\n\n1.\n Use the following command to check if the restore operation completed without error:\n\n ```\n kubectl get pods -n -l job-name=apigee-cassandra-restore\n ```\n\n\n The output is similar to the following: \n\n ```text\n NAME READY STATUS RESTARTS AGE\n apigee-cassandra-restore-6tttv 0/1 Completed 0 23m\n ```\n2.\n Use the following command to check if the cassandra replicas are up and running:\n\n ```\n kubectl get pods -n -l app=apigee-cassandra\n ```\n\n\n The output is similar to the following: \n\n ```text\n NAME READY STATUS RESTARTS AGE\n apigee-cassandra-default-0 1/1 Running 0 24m\n apigee-cassandra-default-1 1/1 Running 0 23m\n apigee-cassandra-default-2 1/1 Running 0 22m\n ```\n\nViewing restore logs\n--------------------\n\nTo view the restore logs of a Kubernetes pod, run the\n`kubectl logs -f \u003cpod_name\u003e -n \u003cnamespace\u003e`\ncommand. For example: \n\n```\nkubectl logs -f apigee-cassandra-restore-b4lgf -n apigee\n```\n\nValidating restore\n------------------\n\nUpon completing the restore operation, you can use the control plane to confirm that your organization's developers,\napps, and API products were restored correctly.\n\nTo view the restored data:\n\n1. On the command line, get or refresh your gcloud authentication credentials, as the following\n example shows:\n\n ```\n TOKEN=$(gcloud auth print-access-token)\n ```\n2. Use the following command to validate your organization's data, where \u003cvar translate=\"no\"\u003eAPIGEE_ORG\u003c/var\u003e is an Apigee organization deployed in the cluster:\n - For developer data: \n\n ```\n curl -s -H \"$TOKEN\" https://apigee.googleapis.com/v1/organizations/APIGEE_ORG/developers\n ```\n - For apps data: \n\n ```\n curl -s -H \"$TOKEN\" https://apigee.googleapis.com/v1/organizations/APIGEE_ORG/apps\n ```\n - For API product data: \n\n ```\n curl -s -H \"$TOKEN\" https://apigee.googleapis.com/v1/organizations/APIGEE_ORG/apiproducts\n ```\n\n| **Note**: Confirm that your APIs are working as expected before adding a restored cluster to your traffic.\n\nTroubleshooting restore\n-----------------------\n\n\nDuring the Cassandra restoration in Apigee hybrid, you may encounter\nerrors in the restore logs. See\n[Troubleshooting Cassandra restore](/apigee/docs/api-platform/troubleshoot/playbooks/cassandra/ts-cassandra-restore) for\nerrors, causes, and how to resolve the issues.\n\nDNS Configuration for new cluster and traffic cutover\n-----------------------------------------------------\n\n\nOnce you are satisfied with validation, redirect the traffic to the new cluster and change the dns\nentry to new ingress `EXTERNAL-IP` address.\n\nGet the `EXTERNAL-IP` with the following command: \n\n```\nkubectl get svc -n istio-system\n``` \n\n```text\nNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE\nistio-ingressgateway LoadBalancer 10.11.123.45 34.56.78.90 15021:32225/TCP,80:32208/TCP,443:31942/TCP,15012:32689/TCP,15443:31936/TCP 1d\n```\n\n\u003cbr /\u003e"]]