Vantage Plugin Troubleshooting
This guide helps diagnose and resolve common issues with the Vantage plugin for FinFocus.
Table of Contents
Section titled “Table of Contents”- Authentication Issues
- Configuration Errors
- Data Retrieval Problems
- Performance Issues
- Plugin Integration Issues
- Getting Help
Authentication Issues
Section titled “Authentication Issues”Issue: 401 Unauthorized
Section titled “Issue: 401 Unauthorized”Symptoms:
Error: 401 UnauthorizedFailed to authenticate with Vantage APICauses:
- API token not set or empty
- Token expired or revoked
- Token lacks required permissions
- Wrong token type used
Solutions:
-
Verify token is set:
Terminal window echo $FINFOCUS_VANTAGE_TOKEN# Should output your token (not empty) -
Test token validity:
Terminal window curl -H "Authorization: Bearer $FINFOCUS_VANTAGE_TOKEN" \https://api.vantage.sh/costs# Expected: 200 OK or 400 (bad params), NOT 401 -
Regenerate token:
- Log into Vantage console
- Navigate to Settings → API Tokens
- Generate new token
- Update
FINFOCUS_VANTAGE_TOKENenvironment variable
-
Verify token permissions:
- Token must have read-only cost access
- Cost Report tokens must have access to specified report
See Also: Authentication Guide
Issue: 403 Forbidden
Section titled “Issue: 403 Forbidden”Symptoms:
Error: 403 ForbiddenInsufficient permissions to access cost dataCauses:
- Token has wrong permissions
- Cost Report Token doesn’t have access to report
- Workspace Token doesn’t have cost access
Solutions:
- Verify token permissions in Vantage console
- Ensure token has Read-only cost access
- For Cost Report Token, verify report access
- Generate new token with correct permissions
Configuration Errors
Section titled “Configuration Errors”Issue: Configuration File Not Found
Section titled “Issue: Configuration File Not Found”Symptoms:
Error: config file not found at: config.yamlSolutions:
-
Verify file exists:
Terminal window ls -la ~/.finfocus/plugins/vantage/config.yaml -
Check file path:
Terminal window finfocus-vantage pull --config /full/path/to/config.yaml -
Create configuration if missing:
Terminal window mkdir -p ~/.finfocus/plugins/vantagecp config.example.yaml ~/.finfocus/plugins/vantage/config.yaml
Issue: Invalid YAML Syntax
Section titled “Issue: Invalid YAML Syntax”Symptoms:
Error: failed to parse config.yamlYAML syntax error at line 10Solutions:
-
Validate YAML syntax:
Terminal window yamllint ~/.finfocus/plugins/vantage/config.yaml -
Check required fields:
version: 0.1 # Requiredsource: vantage # Requiredcredentials:token: ${...} # Requiredparams:cost_report_token: 'cr_...' # Requiredgranularity: 'day' # Required -
Common YAML mistakes:
- Missing colons after keys
- Incorrect indentation (use spaces, not tabs)
- Unquoted special characters
- Missing quotes around strings with colons
Issue: Environment Variable Not Set
Section titled “Issue: Environment Variable Not Set”Symptoms:
Error: FINFOCUS_VANTAGE_TOKEN environment variable not setSolutions:
-
Set environment variable:
Terminal window export FINFOCUS_VANTAGE_TOKEN="your_token" -
Verify it’s set:
Terminal window echo $FINFOCUS_VANTAGE_TOKEN -
Persist across sessions:
Terminal window echo 'export FINFOCUS_VANTAGE_TOKEN="your_token"' >> ~/.bashrcsource ~/.bashrc
Data Retrieval Problems
Section titled “Data Retrieval Problems”Issue: No Cost Data Returned
Section titled “Issue: No Cost Data Returned”Symptoms:
No cost records found for specified date rangeCauses:
- Date range has no data in Vantage
- Cost Report Token doesn’t have data for date range
- Filters excluding all data
- Data not yet available (lag)
Solutions:
-
Verify date range has data in Vantage console
-
Check Cost Report Token is valid:
params:cost_report_token: 'cr_valid_token_here' -
Ensure Cost Report has data for selected providers
-
Account for late posting:
- Cost data lags 2-3 days
- Use historical dates (not today/yesterday)
- Wait 3+ days for final reconciliation
-
Review filters:
params:group_bys:- provider- service# Ensure not over-filtering
Issue: Rate Limit Exceeded
Section titled “Issue: Rate Limit Exceeded”Symptoms:
Error: 429 Too Many RequestsRate limit exceededHow It Works:
The plugin automatically retries 429 responses with exponential backoff:
- Attempt 1 → Wait 1s → Retry
- Attempt 2 → Wait 2s → Retry
- Attempt 3 → Wait 4s → Retry
- Continues up to
max_retries(default: 5)
Solutions:
-
Wait for automatic retry (30-60 seconds)
-
Increase retry attempts:
params:max_retries: 10request_timeout_seconds: 120 -
Reduce request frequency:
params:page_size: 10000 # Larger pages = fewer requests -
Reduce data dimensionality:
params:group_bys:- provider- service# Remove: resource_id, tags (high cardinality) -
Schedule off-peak:
- Run backfills during low-usage hours
- Daily incremental syncs less likely to hit limits
Issue: Partial or Incomplete Data
Section titled “Issue: Partial or Incomplete Data”Symptoms:
- Missing cost records for some resources
- Gaps in date range
- Null values in cost fields
Causes:
- Late posting (data still arriving)
- Metric not available for provider
- Tag not present in cost report
- Data not yet finalized
Solutions:
-
Wait for data to finalize (3+ days after usage)
-
Verify metrics available:
params:metrics:- cost # Available for all- usage # Available for all- amortized_cost # AWS, GCP, Azure only- taxes # AWS, Azure only -
Check tag configuration:
params:group_bys:- tags # Must be present for tags -
Review Vantage console for data availability
Performance Issues
Section titled “Performance Issues”Issue: Slow Sync Performance
Section titled “Issue: Slow Sync Performance”Symptoms:
- Sync takes >10 minutes
- High memory usage
- Multiple API timeouts
Solutions:
-
Increase page size:
params:page_size: 10000 # Max: 10,000 -
Reduce dimensions:
params:group_bys:- provider- service# Remove high-cardinality: resource_id, tags -
Use monthly granularity for long ranges:
params:granularity: 'month' -
Chunk large imports:
Terminal window # Import monthly instead of yearlyfor m in {01..12}; dofinfocus-vantage pull \--config config.yaml \--start-date "2024-$m-01" \--end-date "2024-$m-31"done -
Filter tags:
params:tag_prefix_filters:- 'user:'- 'cost-center:'
Issue: High Memory Usage
Section titled “Issue: High Memory Usage”Symptoms:
- Out-of-memory (OOM) errors
- Adapter crashes during sync
- System slowdown
Solutions:
-
Reduce page size:
params:page_size: 1000 # Conservative (vs 5000 default) -
Reduce dimensions:
params:group_bys:- provider- service# Remove: account, region, resource_id, tags -
Monitor resources:
Terminal window watch -n 1 'ps aux | grep finfocus-vantage' -
Use monthly granularity:
params:granularity: 'month'
Plugin Integration Issues
Section titled “Plugin Integration Issues”Issue: Plugin Not Recognized by FinFocus
Section titled “Issue: Plugin Not Recognized by FinFocus”Symptoms:
Error: plugin 'vantage' not foundSolutions:
-
Verify plugin installation:
Terminal window finfocus plugin list# Should show: vantage v0.1.0 -
Check plugin directory:
Terminal window ls -la ~/.finfocus/plugins/vantage/ -
Reinstall plugin:
Terminal window finfocus plugin install vantage -
Verify binary executable:
Terminal window chmod +x ~/.finfocus/plugins/vantage/finfocus-vantage
Issue: Plugin Communication Timeout
Section titled “Issue: Plugin Communication Timeout”Symptoms:
Error: plugin timeout after 10 secondsFailed to communicate with vantage pluginCauses:
- Plugin process not starting
- gRPC communication failure
- Network issues
- Plugin binary corrupted
Solutions:
-
Test plugin directly:
Terminal window ~/.finfocus/plugins/vantage/finfocus-vantage --version -
Check plugin logs:
Terminal window finfocus cost actual --plugin vantage --debug -
Restart plugin host:
Terminal window pkill -f finfocusfinfocus cost actual --plugin vantage -
Reinstall plugin if corrupted
Issue: Cost Data Doesn’t Match Vantage Console
Section titled “Issue: Cost Data Doesn’t Match Vantage Console”Symptoms:
- Different cost totals
- Missing resources
- Unexpected cost values
Causes:
- Date range differences
- Granularity mismatch
- Filtering differences
- Late posting
- Currency differences
Solutions:
-
Verify date range matches:
params:start_date: '2024-01-01'end_date: '2024-01-31' -
Check granularity:
params:granularity: 'day' # Must match Vantage console view -
Verify filters match:
params:group_bys:- provider- service# Same dimensions as Vantage report -
Account for timing:
- Cost data lags 2-3 days
- Check when Vantage data finalized
- Wait 3+ days for final reconciliation
-
Verify currency (default: USD)
Common Error Messages
Section titled “Common Error Messages”Error: “cursor expired”
Section titled “Error: “cursor expired””Cause: Pagination cursor became stale during long sync
Solution:
-
Reduce page size:
params:page_size: 1000 -
Increase timeout:
params:request_timeout_seconds: 120 -
Use smaller date ranges
Error: “invalid date format”
Section titled “Error: “invalid date format””Cause: Date not in ISO 8601 format
Solution:
Use YYYY-MM-DD format:
params: start_date: '2024-01-01' # Correct # start_date: "01/01/2024" # WRONGError: “tag cardinality limit exceeded”
Section titled “Error: “tag cardinality limit exceeded””Cause: Too many unique tags causing performance issues
Solution:
Use tag prefix filters:
params: tag_prefix_filters: - 'user:' - 'cost-center:' # Limit high-cardinality tagsDebugging Tips
Section titled “Debugging Tips”Enable Debug Logging
Section titled “Enable Debug Logging”# Set debug environment variableexport VANTAGE_DEBUG=1
# Run pluginfinfocus cost actual --plugin vantage --start-date 2024-01-01Check Plugin Status
Section titled “Check Plugin Status”# List installed pluginsfinfocus plugin list
# Validate pluginfinfocus plugin validate vantageTest API Connectivity
Section titled “Test API Connectivity”# Test Vantage API directlycurl -H "Authorization: Bearer $FINFOCUS_VANTAGE_TOKEN" \ https://api.vantage.sh/costsVerify Configuration
Section titled “Verify Configuration”# Validate YAMLyamllint ~/.finfocus/plugins/vantage/config.yaml
# Test configuration loadingfinfocus-vantage pull --config config.yaml --dry-runGetting Help
Section titled “Getting Help”Self-Service Resources
Section titled “Self-Service Resources”-
Documentation
-
Vantage Resources
-
FinFocus Resources
Support Channels
Section titled “Support Channels”Community Support
Section titled “Community Support”- GitHub Issues: Report bugs or request features
- GitHub Discussions: Ask questions and share experiences
Commercial Support
Section titled “Commercial Support”-
Vantage Support: For Vantage API issues
- Email: support@vantage.sh
- Portal: https://support.vantage.sh/
-
FinFocus Support: For plugin integration issues
- GitHub Issues: https://github.com/rshade/finfocus/issues
Reporting Issues
Section titled “Reporting Issues”When reporting issues, include:
-
Error Message (redact tokens):
Error: 401 UnauthorizedFailed to authenticate with Vantage API -
Configuration (redact sensitive data):
version: 0.1source: vantageparams:cost_report_token: 'cr_REDACTED'granularity: 'day' -
Steps to Reproduce:
Terminal window 1. Set environment: export FINFOCUS_VANTAGE_TOKEN="..."2. Run command: finfocus cost actual --plugin vantage3. Observe error: ... -
Debug Logs (redact tokens):
Terminal window VANTAGE_DEBUG=1 finfocus cost actual --plugin vantage 2>&1 | \sed 's/Bearer .*/Bearer REDACTED/' > debug.log -
Environment Information:
- Plugin version:
finfocus-vantage --version - FinFocus version:
finfocus --version - OS:
uname -a
- Plugin version: