- Logs
- Logging Decisions
- Logging Stories
- Logging Negatives - hard to know if you're not finding it, or if the log entry doesn't exist
- Logging Storage
- Structured Logging
- Include a human readable "msg" which helps reading the flow of events - tells the story
- Keep the same naming for entities across your logging do not have
pipeline_id
,pipeline_uuid
,linked_pipeline_id
- Error Logging - Rollbar, Sentry
- Review and Squash - no broken windows!
- Capture as much context as possible when you are handling the error
- Failure to capture errors and logs leads to failing the customer twice, they've already had the issue that caused the error, don't let them down again by not capturing enough to fix it!
- Cost of Support.
- Think about the cost of tickets
- Review them for small things that could reduce that cost
- Circuit Breakers
- Things will fail, you will need to isolate the failure to avoid cascading errors
- Rollback isn't trivial
- Deploy then enable Feature Flag
- Roll-forward
- Automate Checks
- Automate them at the start otherwise you'll forget and new folks won't follow
- Dashboards - separate rather than massive
- Retrospectives - want a retrospective!
- Transparency with Customers
- Take time to upgrade if necessary - communicate to customers in advance
- Playbooks
- Productionisation of Services
- Must have Metrics, counts, failures etc.
- Alerts a human if it's down
- Alerts a human if error rates above specific thresholds
- Alerts a human if latency is high
- Security
- Reviews
- Prioritise Security over Functionality
- Configuration
- Twelve-Factor it, but centralise the configuration
- Don't arbitrarily pull from the environment inside the code otherwise it's harder to know what config needs to be set
- Documentation
- Developers are terrible at it - we have too much retained knowledge
- The act of documenting something often helps to step back and see improvements
Last active
June 7, 2023 18:18
-
-
Save bigkevmcd/ecf3cdaae6570891b09115b42e14fc02 to your computer and use it in GitHub Desktop.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment