troubleshooting and debugging techniques week 4
Practice Quiz: Managing Computer Resources
1. How can you profile an entire Python application?
- Use an @profile label
- Use the guppy module
- Use Memory Profiler
- Use a decorator
2. Your application is having difficulty sending and receiving large packets of data, which are also delaying other processes when connected to remote computers. Which of the following will be most effective on improving network traffic for the application?
- Running the iftop program
- Increase storage capacity
- Increase memory capacity
- Use traffic shaping
3. What is the term referring to the amount of time it takes for a request to reach its destination, usually measured in milliseconds (ms)?
- Bandwidth
- Latency
- Number of connections
- Traffic shaping
4. If your computer is slowing down, what Linux program might we use to determine if we have a memory leak and what process might be causing it?
- top
- gparted
- iftop
- cron
5. Some programs open a temporary file, and immediately _____ the file before the process finishes, then the file continues to grow, which can cause slowdown.
- open
- close
- delete
- write to
6. Using the Eisenhower Decision Matrix, which of the following is an example of an event or task that is both Important, and Urgent?
- Office gossip
- Replying to emails
- Internet connection is down
- Follow-up to a recently resolved issue
7. You’re working on a web server issue that’s preventing all users from accessing the site. You then receive a call from user to reset their user account password. Which appropriate action should you take when prioritizing your tasks?
- Reset the user’s password
- Create a script to automate password resets
- Ask the user to open a support ticket.
- Ignore the user, and troubleshoot web server.
8. What is it called when we make more work for ourselves later by taking shortcuts now?
- Technical debt
- Ticket tracking
- Eisenhower Decision Matrix
- Automation
9. What is the first step of prioritizing our time properly?
- Work on urgent tasks first
- Assess the importance of each issue
- Make a list of all tasks
- Estimate the time each task will take
10. If an issue isn't solved within the time estimate that you provided, what should you do? (Select all that apply)
- Explain why
- Drop everything and perform that task immediately
- Give an updated time estimate
- Put the task at the end of the list
11. Which proactive practice can you implement to make troubleshooting issues in a program easier when they happen again, or face other similar issues?
- Create and update documentation
- Use a test environment.
- Automate rollbacks.
- Set up Unit tests.
12. Which of the following is a good example of mixing and matching resources on a single server so that the running services make the best possible use of all resources?
- Run two applications that are CPU intensive between two servers.
- Run a CPU intensive application on one server, and an I/O intensive application on another server.
- Run a RAM intensive application and a CPU intensive application on a server.
- Run two applications that are RAM and I/O intensive on a server.
13. One strategy for debugging involves explaining the problem to yourself out loud. What is this technique known as?
- Monitoring
- Rubber Ducking
- Testing
- Ticketing
14. When deploying software, what is a canary?
- A test for how components of a program interact with each other
- A test of a program’s components
- A test deployment to a subset of production hosts
- A small section of code
15. It is advisable to collect monitoring information into a central location. Given the importance of the server handling the centralized collecting, when assessing risks from outages, this server could be described as what?
- A failure domain
- A problem domain
- CPU intensive
- I/O intensive