- Introduced Aggregator.sol for Chainlink-compatible oracle functionality, including round-based updates and access control. - Added OracleWithCCIP.sol to extend Aggregator with CCIP cross-chain messaging capabilities. - Created .gitmodules to include OpenZeppelin contracts as a submodule. - Developed a comprehensive deployment guide in NEXT_STEPS_COMPLETE_GUIDE.md for Phase 2 and smart contract deployment. - Implemented Vite configuration for the orchestration portal, supporting both Vue and React frameworks. - Added server-side logic for the Multi-Cloud Orchestration Portal, including API endpoints for environment management and monitoring. - Created scripts for resource import and usage validation across non-US regions. - Added tests for CCIP error handling and integration to ensure robust functionality. - Included various new files and directories for the orchestration portal and deployment scripts.
107 lines
1.9 KiB
Markdown
107 lines
1.9 KiB
Markdown
# Oracle Troubleshooting Guide
|
|
|
|
## Common Issues
|
|
|
|
### Oracle Not Updating
|
|
|
|
**Symptoms:**
|
|
- Oracle price is stale
|
|
- No recent updates
|
|
|
|
**Diagnosis:**
|
|
1. Check transmitter status
|
|
2. Check oracle publisher service
|
|
3. Check heartbeat configuration
|
|
4. Review logs
|
|
|
|
**Resolution:**
|
|
1. Verify transmitter is active
|
|
2. Restart oracle publisher if needed
|
|
3. Check heartbeat settings
|
|
4. Review error logs
|
|
|
|
### Price Deviation Alerts
|
|
|
|
**Symptoms:**
|
|
- Price deviation alerts
|
|
- Unexpected price changes
|
|
|
|
**Diagnosis:**
|
|
1. Check data sources
|
|
2. Verify aggregation logic
|
|
3. Review recent updates
|
|
4. Check for anomalies
|
|
|
|
**Resolution:**
|
|
1. Verify data source health
|
|
2. Review aggregation logic
|
|
3. Check for data source issues
|
|
4. Adjust deviation threshold if needed
|
|
|
|
### Transmitter Failures
|
|
|
|
**Symptoms:**
|
|
- Transmitter unavailable
|
|
- Update failures
|
|
|
|
**Diagnosis:**
|
|
1. Check transmitter status
|
|
2. Review network connectivity
|
|
3. Check authentication
|
|
4. Review logs
|
|
|
|
**Resolution:**
|
|
1. Restart transmitter service
|
|
2. Verify network connectivity
|
|
3. Check authentication credentials
|
|
4. Review error logs
|
|
|
|
## Diagnostic Commands
|
|
|
|
### Check Oracle State
|
|
|
|
```bash
|
|
cast call $AGGREGATOR_ADDRESS "latestRoundData()" --rpc-url $RPC_URL
|
|
```
|
|
|
|
### Check Transmitter Status
|
|
|
|
```bash
|
|
cast call $AGGREGATOR_ADDRESS "isTransmitter(address)" $TRANSMITTER --rpc-url $RPC_URL
|
|
```
|
|
|
|
### Check Heartbeat
|
|
|
|
```bash
|
|
cast call $AGGREGATOR_ADDRESS "heartbeat()" --rpc-url $RPC_URL
|
|
```
|
|
|
|
### Check Deviation Threshold
|
|
|
|
```bash
|
|
cast call $AGGREGATOR_ADDRESS "deviationThreshold()" --rpc-url $RPC_URL
|
|
```
|
|
|
|
## Log Analysis
|
|
|
|
### Oracle Publisher Logs
|
|
|
|
```bash
|
|
kubectl logs -n besu-network -l app=oracle-publisher --tail=100
|
|
```
|
|
|
|
### CCIP Monitor Logs
|
|
|
|
```bash
|
|
kubectl logs -n besu-network -l app=ccip-monitor --tail=100
|
|
```
|
|
|
|
## Escalation
|
|
|
|
If issues persist:
|
|
1. Review incident response procedures
|
|
2. Contact on-call engineer
|
|
3. Document issue and resolution
|
|
4. Update runbooks if needed
|
|
|