You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
# Branch Protection settings. Set to null to disable
75
+
protection:
76
+
# Required. Require at least one approving review on a pull request, before merging. Set to null to disable.
77
+
required_pull_request_reviews:
78
+
# The number of approvals required. (1-6)
79
+
required_approving_review_count: 1
80
+
# Dismiss approved reviews automatically when a new commit is pushed.
81
+
dismiss_stale_reviews: true
82
+
# Blocks merge until code owners have reviewed.
83
+
require_code_owner_reviews: true
84
+
# Specify which users and teams can dismiss pull request reviews. Pass an empty dismissal_restrictions object to disable. User and team dismissal_restrictions are only available for organization-owned repositories. Omit this parameter for personal repositories.
85
+
dismissal_restrictions:
86
+
users: []
87
+
teams: []
88
+
# Required. Require status checks to pass before merging. Set to null to disable
89
+
required_status_checks:
90
+
# Required. Require branches to be up to date before merging.
91
+
strict: true
92
+
# Required. The list of status checks to require in order to merge into this branch
93
+
contexts: []
94
+
# Required. Enforce all configured restrictions for administrators. Set to true to enforce required status checks for repository administrators. Set to null to disable.
95
+
enforce_admins: true
96
+
# Prevent merge commits from being pushed to matching branches
97
+
required_linear_history: true
98
+
# Required. Restrict who can push to this branch. Team and user restrictions are only available for organization-owned repositories. Set to null to disable.
Thanks for helping improve the ThousandEyes observability dashboards! This guide explains how to plan a contribution, keep the dashboards consistent, and submit a clean pull request.
4
+
5
+
## 1. Before You Start
6
+
7
+
- Familiarize yourself with the existing dashboards described in `README.md`.
8
+
- Make sure you can import/export dashboards in the observability platform you plan to update (Splunk Observability Cloud, Grafana, DataDog, Dynatrace, New Relic, or Signoz).
9
+
- Use a feature branch from `main` for every change.
10
+
11
+
## 2. Repository Overview
12
+
13
+
- Each integration lives in its own directory (for example `grafana/`, `datadog/`, `splunk/`) and contains the canonical `ThousandEyesDashboard.json`.
14
+
- Platform-specific docs or assets stay alongside the dashboard file (for example `grafana/grafana-setup.md`, `grafana/images/`).
15
+
- Global documentation (like this file and `README.md`) belongs at the repository root.
16
+
17
+
## 3. Workflow at a Glance
18
+
19
+
1. Open or pick up a GitHub Issue. Describe the platform, the data source, and the motivation.
20
+
2. Create a branch named `feature/<short-description>` or `fix/<short-description>`.
21
+
3. Make the change, keeping commits focused and well-described.
22
+
4. Test the dashboard in the target platform (see section 5).
23
+
5. Submit a pull request referencing the issue, including screenshots when visual changes occur.
24
+
25
+
## 4. Editing Dashboards
26
+
27
+
- Keep the file name `ThousandEyesDashboard.json` unless there is a strong reason not to; tooling and docs assume that name.
28
+
- Preserve backwards compatibility when possible (for example, avoid deleting existing charts unless absolutely necessary).
29
+
- Use human-friendly labels, and keep units/descriptions consistent across platforms.
30
+
- When adding queries or widgets:
31
+
- Prefer existing ThousandEyes metrics and dimensions before inventing new ones.
32
+
- Document any required tags, variables, or template parameters in a README section or platform-specific doc.
33
+
- Run the platform’s JSON formatter/validator so the diff remains readable.
34
+
35
+
## 5. Testing & Validation
36
+
37
+
- Import the updated dashboard into the relevant observability backend and verify:
38
+
- All charts render without errors.
39
+
- Variables / template controls resolve correctly against sample data.
40
+
- Thresholds, colors, and legends make sense for ThousandEyes metrics.
41
+
- Capture an updated screenshot (`.png`) if the visual layout changes significantly and place it next to the dashboard JSON.
42
+
43
+
## 6. Documentation & Assets
44
+
45
+
- Update `README.md` if you add or remove an integration.
46
+
- Keep setup instructions in platform-specific Markdown files (for example, `grafana/grafana-setup.md`).
47
+
- Store images in an `images/` subdirectory under the platform folder. Use lowercase, hyphenated filenames.
48
+
49
+
## 7. Pull Request Checklist
50
+
51
+
-[ ] Dashboard JSON validates / imports without errors.
52
+
-[ ] README and setup docs describe any new requirements.
53
+
-[ ] Screenshots reflect the new state when visuals change.
54
+
-[ ] Tests or manual verification steps are documented in the PR description.
55
+
-[ ] Commits are squashed.
56
+
57
+
## 8. Need Help?
58
+
59
+
Open a GitHub Discussion or Issue with the details of the observability platform, the ThousandEyes metrics involved, and any errors you encounter. Someone from the maintainers or community will be happy to help.
0 commit comments