Overview
Snowflake integration allows IncidentFox to query historical data, enrichment tables, and analytics to provide deeper context during investigations. Common use cases:- Query historical incident patterns
- Look up customer or service metadata
- Access aggregated metrics not in real-time systems
- Retrieve business context for impact assessment
Prerequisites
- Snowflake account with API access
- User account with SELECT permissions on relevant tables
- Knowledge of your data schema
Configuration
Step 1: Create a Service Account
- Log in to Snowflake as an admin
- Create a dedicated user for IncidentFox:
Step 2: Identify Your Account
Your Snowflake account identifier is in the format:acme.us-west-2
Step 3: Add to IncidentFox
Via Web UI:- Go to Team Console > Integrations
- Click Add Integration > Snowflake
- Enter:
- Account identifier
- Username
- Password (or key pair)
- Default warehouse
- Default database (optional)
- Default schema (optional)
- Click Test Connection
- Save
Available Tools
query_snowflake
Execute SQL queries against Snowflake.
query- SQL query to executewarehouse- Warehouse to use (optional, uses default)timeout- Query timeout in seconds
get_snowflake_schema
Retrieve table schemas for query building.
Example Queries
Historical Error Patterns
Customer Impact Assessment
Deployment Correlation
Use Cases
Enriching Incident Context
When investigating an incident, IncidentFox can query Snowflake to:- Get historical baseline - “Is this error rate normal?”
- Identify patterns - “Has this happened before?”
- Assess business impact - “How many customers are affected?”
- Correlate with changes - “What deployed recently?”
Example Investigation Flow
Recommended Tables
For optimal IncidentFox usage, consider creating these Snowflake tables:Error Summary Table
Deployment History
Service Metadata
Query Guardrails
IncidentFox applies safety limits to Snowflake queries:Configuring Limits
Troubleshooting
Connection Failed
Symptom: “Unable to connect to Snowflake” Solutions:- Verify account identifier format
- Check username/password
- Ensure warehouse is running (not suspended)
- Verify network allows outbound to Snowflake
Permission Denied
Symptom: “Insufficient privileges to execute query” Solutions:- Verify role has SELECT on required tables
- Check role is granted to user
- Verify database/schema usage grants
Query Timeout
Symptom: “Query execution timed out” Solutions:- Optimize query (add filters, limit scope)
- Increase timeout setting
- Use a larger warehouse
- Pre-aggregate data into summary tables
Best Practices
- Use read-only role - Never grant write permissions
- Set warehouse auto-suspend - Control costs
- Pre-aggregate data - Create hourly/daily summaries
- Index timestamp columns - Most queries filter by time
- Limit query scope - Always include time bounds
Security Considerations
- Use key pair authentication when possible
- Store credentials in secrets manager
- Use role-based access control
- Enable Snowflake audit logging
- Regularly review access patterns
Next Steps
AWS
Connect AWS CloudWatch
Coralogix
Set up log search

