Last modified July 8, 2025
Dashboard Creation
Creating custom dashboards lets you visualize your observability data exactly how your team needs it. The platform supports two main approaches: a GitOps workflow for production environments and interactive creation for rapid development and prototyping.
GitOps approach
The GitOps approach stores dashboard definitions as code, making them versionable, reviewable, and automatically deployable across environments. This is the recommended method for production dashboards.
Create a dashboard ConfigMap
Deploy dashboards by creating Kubernetes ConfigMaps in your management cluster:
apiVersion: v1
kind: ConfigMap
metadata:
name: my-application-dashboard
namespace: my-team-namespace
labels:
app.giantswarm.io/kind: dashboard
annotations:
observability.giantswarm.io/organization: MyTeam
data:
dashboard.json: |
{
"dashboard": {
"uid": "my-app-overview",
"title": "My Application Overview",
"tags": ["application", "performance"],
"panels": [
// Your dashboard panels here
]
}
}
Organization targeting
The observability.giantswarm.io/organization
annotation determines which Grafana organization receives the dashboard. The value must match an existing organization’s display name.
Dashboard requirements
- Unique identifier (UID): Each dashboard needs a unique identifier within its organization
- Valid JSON: Dashboard definitions must be valid Grafana JSON format
- Proper labeling: Include the
app.giantswarm.io/kind: dashboard
label for automatic detection
Benefits of GitOps
- Version control: Track changes and collaborate on dashboard improvements
- Automated deployment: Dashboards deploy automatically when ConfigMaps are applied
- Multi-environment support: Deploy the same dashboard across development, staging, and production
- CI/CD integration: Include dashboard validation in your pipeline
Interactive creation
For rapid prototyping and iterative development, create dashboards directly in Grafana’s web interface.
Getting started
- Access your Grafana instance
- Navigate to Dashboards > New > New Dashboard
- Add panels, configure visualizations, and arrange your layout
- Save your dashboard to the appropriate organization
Grafana documentation
For detailed guidance on using Grafana’s dashboard builder, see the official Grafana documentation.
Data persistence
Dashboards created in the UI are stored in PostgreSQL with automatic backups, ensuring they persist across platform updates and restarts.
Best practices
Start with exploration
Before building dashboards, spend time in Grafana’s Explore view to understand your data and refine your queries.
Design for your audience
- Executive dashboards: Focus on high-level KPIs and trends
- Operational dashboards: Emphasize real-time status and alert states
- Troubleshooting dashboards: Include detailed metrics and drill-down capabilities
Leverage existing resources
- Explore Giant Swarm’s default dashboards for inspiration
- Check the Grafana community dashboards for common patterns
- Use dashboard templates for consistent layouts across your organization
Next steps
- Set up multi-tenancy: organize dashboards by team or environment
- Configure data ingestion: ensure you have the right data flowing into your dashboards
Need help, got feedback?
We listen to your Slack support channel. You can also reach us at support@giantswarm.io. And of course, we welcome your pull requests!