-
Notifications
You must be signed in to change notification settings - Fork 12
Home
Giran Moodley edited this page Nov 4, 2021
·
18 revisions
This repository hosts the source code for PagerDuty Live, a single page application which enables organisations to manage their PagerDuty incidents in real-time through a unified console view.
- OAuth2 Login
- Escalate Incident
- Reassign Incident
- Add Responders to Incident
- Update Priority of Incident
- Custom snooze duration for Incident
- Merge Incidents
- Run Action (including Custom Incident Actions, Webhooks, and Response Plays)
- Implement
react-table
(e.g. multisort, resizeable columns, selectable rows, etc) - Global Search against incident data
- Formatting of cells (e.g. locale date format, status, etc)
- Add loading modal when fetching data from
/incidents
endpoint - Infinite scrolling using
react-window
- Store settings using session data: Global search, query settings, and table settings.
- Linting + Formatting (via
prettier-eslint
) - PagerDuty Themeing
- Tests (including suitable framework)
- Deployment/Bundling Steps
- Minor display bugs (incident resolution and creation duplication)
- Slow query performance for large number of incidents (due to 100 results limit on API)
- 429 (rate throttling) issues when requests notes for each incident (from large incident query above)
- Empty Incident component rendered before table (for non-empty incidents list)
- "Fetching notes" displayed when new incidents are added to the table (i.e. notes have not been fetched)
- Selected incidents which disappear post-action keeps state (e.g. enablePostActions remains true)
- External system sync (post-action) button (e.g. disabled correctly, but enabled on incident reselect due to incident store not refreshed)
- Resolved incidents still appear in the table after a period (most likely memoization of react-table)
- Updating column order reverts to width defined under
src/util/incident-table-column.js
- Updating columns may occasionally reset back to
minWidth
-
state.querySettings.incidentPriority
resets on render, thereby losing persisted data -
react-select
within query settings does not render existing selections when not in view (needs re-rendering via hook)
- Dark Mode via Theme Provider
- i18n Support
- Status / Stakeholder Updates
- Rundeck Actions
- Markdown Notes
- Save and load pre-configured settings