Use the runtime logs to help diagnose problems with the apigee-runtime pods. Each
runtime pod contains a message processor, which is responsible for processing API proxy traffic,
executing policies, routing requests, and more.
Using runtime logs
Logs are a good way to troubleshoot problems with your installation. See
Logging for details.
Use the logs command
You can view runtime system logs using the kubectl logs command. For example:
The following table briefly describes log entries related to loading the contract from the management plane:
Log Entry
Meaning
hybrid-runtime Apigee-Timer-9 INFO RUNTIME-SYNC-SERVICE -
RuntimeSyncServiceImpl.updateToVersion() : Switched to newer version
750 from version null
The MP changed to a newer version of the configuration contract.
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE -
RuntimeSyncServiceImpl.loadLatestVersionIfAvailable() : Found a newer
version 750
The MP loaded the latest contract configuration version from version.properties.
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE -
RuntimeSyncServiceImpl.updateToVersion() : Attempting to update to a newer version 750
The MP is updating to a newer version of the configuration contract.
hybrid-runtime Apigee-Timer-6 INFO RUNTIME-SYNC-SERVICE -
RuntimeSyncServiceImpl.updateToVersion() : Switched to newer version 751 from version 750
The MP loaded the latest contract configuration version from version.properties.
Deployment errors
The following runtime errors relate to proxy deployments:
Log Entry
Meaning
hybrid-runtime org:hybrid env:prod Apigee-Main-6 ERROR i.a.h.e.i.HermesEngineImpl
- HermesEngineImpl.handleHermesException() : Keyspace cache_hybrid_hybrid does not exist
Keyspace cache_orgname_hybrid is not provisioned in Cassandra.
hybrid-runtime org:hybrid Apigee-Timer-9 ERROR c.a.s.e.k.HybridEncryptionKeyServiceImpl
- HybridEncryptionKeyServiceImpl.getEncryptionKey() : Encryption key does not exist for
organization hybrid and type KmsKey
Keyspace kms_orgname_hybrid is not provisioned in Cassandra.
Message processor deployment error logs
Look for the following deployment error entries in the message processor logs:
Log entry
Description
hybrid-runtime org:hybrid env:prod Apigee-Main-6 ERROR i.a.h.e.i.HermesEngineImpl - HermesEngineImpl.handleHermesException() : Keyspace cache_hybrid_hybrid does not exist
Keyspace cache_orgname_hybrid is not provisioned in Cassandra.
hybrid-runtime org:hybrid Apigee-Timer-9 ERROR c.a.s.e.k.HybridEncryptionKeyServiceImpl - HybridEncryptionKeyS erviceImpl.getEncryptionKey() : Encryption key does not exist for organization hybrid and type KmsKey
Keyspace kms_orgname_hybrid is not provisioned in Cassandra.
Message processor error codes
Error codes for the message processor start with runtime.sync.error-name.
For example:
Reason: The error could be caused by an invalid schema, corrupted contract
specification file, or
invalid contract. Any of these issues could prevent the message processor from loading the spec
file.
Remedy: Make sure either the contract specification file is available, the
file system is not corrupted, or the schema/contract is valid.
[[["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\u003eRuntime logs are crucial for diagnosing issues within \u003ccode\u003eapigee-runtime\u003c/code\u003e pods, which contain message processors that handle API proxy traffic and policy execution.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003ekubectl logs\u003c/code\u003e command can be used to access and view runtime system logs for troubleshooting purposes, such as for the command shown, \u003ccode\u003ekubectl logs -f -n APIGEE_NAMESPACE apigee-runtime-apigee-gcp-prod1-test-blue-hd77q\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eLog entries with prefixes like \u003ccode\u003eRuntimeSyncServiceImpl.updateToVersion()\u003c/code\u003e or \u003ccode\u003eRuntimeSyncServiceImpl.loadLatestVersionIfAvailable()\u003c/code\u003e indicate changes to the contract version loaded from the management plane (MP).\u003c/p\u003e\n"],["\u003cp\u003eDeployment error logs, like \u003ccode\u003eKeyspace cache_hybrid_hybrid does not exist\u003c/code\u003e, highlight provisioning issues within Cassandra, which are important to ensure proper functionality.\u003c/p\u003e\n"],["\u003cp\u003eMessage processor error codes, starting with \u003ccode\u003eruntime.sync.\u003c/code\u003e, such as \u003ccode\u003eruntime.sync.ContractLoadFailedMessage\u003c/code\u003e, can provide insight into specific loading problems, such as when the contract specifications may be invalid, corrupted, or missing.\u003c/p\u003e\n"]]],[],null,["# Runtime logs\n\n| You are currently viewing version 1.13 of the Apigee hybrid documentation. For more information, see [Supported versions](/apigee/docs/hybrid/supported-platforms#supported-versions).\n\nUse the runtime logs to help diagnose problems with the `apigee-runtime` pods. Each\nruntime pod contains a message processor, which is responsible for processing API proxy traffic,\nexecuting policies, routing requests, and more.\n\nUsing runtime logs\n------------------\n\n\nLogs are a good way to troubleshoot problems with your installation. See\n[Logging](/apigee/docs/hybrid/v1.13/logging) for details.\n\n### Use the logs command\n\n\nYou can view runtime system logs using the `kubectl logs` command. For example: \n\n```\nkubectl logs -f -n APIGEE_NAMESPACE apigee-runtime-apigee-gcp-prod1-test-blue-hd77q\n```\n\n### Contract version information\n\n\nThe following table briefly describes log entries related to loading the contract from the management plane:\n\n### Deployment errors\n\n\nThe following runtime errors relate to proxy deployments:\n\n### Message processor deployment error logs\n\nLook for the following deployment error entries in the message processor logs:\n\nMessage processor error codes\n-----------------------------\n\n\nError codes for the message processor start with `runtime.sync.`\u003cvar translate=\"no\"\u003eerror-name\u003c/var\u003e.\nFor example:"]]