What it captures
When a pull request is merged in a monitored repository, Periscope records:| Data | Description |
|---|---|
| PR metadata | Number, title, URL, branch |
| Author and merger | GitHub login and display name for both |
| Timestamps | Created at, merged at (for cycle time calculation) |
| Size | Additions, deletions, changed files |
| Merge commit SHA | Used to link PRs to deployments for lead time |
Periscope only captures PR merge events going forward from the moment you connect. Historical PR data is not backfilled.
Setup
Install the GitHub App
Go to Settings > Connections in the Periscope dashboard and click Connect GitHub. This redirects you to GitHub to install the Periscope GitHub App on your organization.You can install it with access to:
- All repositories — Periscope can see all repos (you still choose which to monitor)
- Selected repositories — limit access to specific repos
Select repositories to monitor
After installation, go to Settings > Repositories. You will see all repositories the GitHub App has access to. Toggle the Monitored switch for each repository you want Periscope to track.Only monitored repositories contribute to your metrics. You can change this at any time.
Verify the connection
Merge a pull request in one of your monitored repositories. Within seconds, it should appear in the Insights dashboard. If you do not see it, check that:
- The repository is toggled on in Settings > Repositories
- The GitHub App has access to the repository
- The PR was actually merged (not just closed)
Permissions
The Periscope GitHub App requests these permissions:- Pull requests (read) — to receive PR merge events
- Contents (read) — to access commit SHAs for deployment linking
- Metadata (read) — to list repositories
Service matching
When deployment events include aservice field, Periscope matches it against your repositories to correlate deployment data with PR activity. It tries:
- Exact repository name match (e.g.,
service: "api-gateway") - Full name match (e.g.,
service: "org/api-gateway") - Case-insensitive match as a fallback
What the integration enables
| Feature | Requires GitHub | Requires deployments |
|---|---|---|
| PR cycle time | Yes | No |
| Throughput | Yes | No |
| Contributor activity | Yes | No |
| Service health | Yes | No |
| Risk signals | Yes | No |
| Deployment frequency | No | Yes |
| Lead time for changes | Yes | Yes |
| Change failure rate | No | Yes |
| Mean time to recovery | No | Yes |