This article will review the basic troubleshooting steps the MacPractice Support team checks when dealing with slowness issues, or server connectivity issues. If you are unsure of any of these steps or would like to ask any questions, we strongly encourage you to reach out to MacPractice Support. We are more than happy to help!
1. Is the server sleeping/powering down automatically?
Navigate to the Apple Menu > System Preferences > Energy Saver.
Verify that “Put hard disks to sleep when possible” is unchecked.
Verify that “Prevent computer from sleeping automatically when the display is off” is checked.
Click on the "Schedule…" button in the lower right.
Ensure that there isn't a Sleep/Restart/Shutdown checked. This would cause the computer to automatically Sleep/Restart/Shutdown at a specific time every day.
2. Do the OS user groups belong to each other?
Navigate to the Apple Menu > System Preferences > Users & Groups.
Click the lock in the lower left-hand corner.
You will be prompted for the OS Admin/Computer password.
After this has been entered, expand the Groups node in the sidebar by clicking on the triangle to the left of Groups, as shown in the screenshot above.
There should be two MacPractice related groups listed. They are named macpractice_backup and macpractice_client. If you only have one of these groups, you may skip to Step 3.
Select each of the MacPractice groups, and verify that the other MacPractice Group is not checked, as shown in the above screenshot. This can cause some slowness if both groups "belong" to each other due to internal permissions mismatches.
3. Is the iCloud Drive syncing large files?
Navigate to the Apple Menu > System Preferences > iCloud.
If iCloud Drive is active, the iCloud Drive may attempt to sync the Desktop and Documents folders across all computers tied to the same iCloud account. If there are one or more large files, a likely issue is that the iCloud Drive is attempting to sync these files constantly. This will use high amounts of read/write time on the computer's hard drive and interfere with MacPractice. This issue may or may not be noticeable in other applications or in the OS as well. If this is occurring, the best course of action is just to uncheck iCloud Drive in the iCloud Preferences. Alternatively, you could move any large files to another location on the computer or, in the iCloud Drive options, uncheck the area where the large files are being synced from (likely Desktop and Documents).
4. Are MacPractice backups overlapping with regular business hours?
In MacPractice on the Server Computer, navigate to the MacPractice Menu > Preferences. In the Preferences window select "Server Backups" on the sidebar.
Server Backup Preferences determine when automatic backups are created. Creating a backup is a resource-intensive process that can impact the performance of your MacPractice Server and Clients. We always recommend you set your backups to run at a time outside of office hours. By doing so, your backup creation will not impact your performance during your office hours.
Another source of potential slowness can be Time Machine backups or Carbon Copy Cloner backups set to run every hour. This can be a significant drain on system resources, which leads to...
5. Does the server have sufficient resources?
On the Server Computer, click on the Spotlight Search in the upper right corner of your desktop. In the prompt, type in "Activity Monitor."
Activity Monitor is a macOS utility that allows you to monitor the performance of your computer. It checks many factors, and tracks all applications that are currently running. We're largely interested in our cumulative usage of the CPU and Memory.
In this screenshot, you can see at the top of the window that we have the CPU tab selected. This tab displays the CPU usage of all current applications, and then the actual CPU load at the bottom of the window. This image displays the CPU usage when the computer is mostly as rest. If we see our total usage in the CPU load graph midway or higher consistently, we would want to sort by the % CPU column to see what applications were using the most CPU usage. Many of these applications are OS processes, but if a particular application is using an excessive amount of the CPU, this would be an indication that this process may be overworking/causing a performance decline.
For example, if a user has several browser tabs open, with Youtube/Pandora/Spotify actively streaming, this typically is resource intensive and could cause a performance hit, especially if it's been running for a long time.
The Memory Tab is laid out roughly the same, but we are looking for a different indicator here.
On the Memory Tab, at the bottom of the window you'll see the Memory Pressure graph, which in this scenario indicates that we're running very steady. This can spike into yellows or reds, which would be an indicator that we're using a lot of memory at these moments. The other major indicator is the "Swap Used" at the bottom middle of the window. Without getting too technical, if a major amount of Swap is being used, this is an indication that memory usage is exceeding the Physical Memory available. This will impact performance as well. You can sort by the "Memory" column to identify which applications are using the most Memory.
You can also double check that your storage drive has enough space to safely write. You can check this by navigating to the Apple Menu, selecting "About This Mac", and checking the storage tab. If your disk is nearly at full capacity, this can begin to slow down your computer.
6. Is Spotlight using an excessive amount of the system resources?
After following the steps presented in Step 4, you may have identified that the process named mdworker was using an excessive amount of resources.
If an mdworker process is running a high % of the CPU, and the User (seen in the far right column in the above screenshot) is _spotlight as you can see above, then that is an indicator that your Spotlight Search, the part of the macOS that can search your disks, is overworking extensively. This seems to occur in situations when you have backup drives connected, where Spotlight Search will keep indexing those backup drives to speed up searches. This can definitely cause issues, especially if that indexing process continues to be interrupted by connecting and disconnecting drives.
The short term solution is to force-quit the mdworker process that is using an excessive amount of the cpu. This is a temporary fix.
The longer term solution is to tell Spotlight to not scan any extraneous drives. You can do this by navigating to System Preferences > Spotlight, and click on the "Privacy" tab.
From here, simply drag and drop the connected drives or folders you wish to exclude, which in this case would be your backup drives. Alternatively, you can click the Plus icon in the lower left, and select the drive in question.
Two other items that may be beneficial, with regard to Spotlight, are reindexing a computer's internal hard drive and limiting Spotlight search results. To trigger reindexing of the internal hard drive, simply add that drive (usually named Macintosh HD or Mac HD) to the Spotlight > Privacy tab and then remove it. Note that this process can take anywhere from 30 minutes to several hours and may utilize significant CPU time until it completes. It is not advisable to perform this task on the MacPractice server computer during business hours when additional slowness may not be acceptable.
To limit the results displayed in a Spotlight search and further reduce the resource usage of this process, uncheck all options in System Preferences > Spotlight > Search Results except Applications, Documents, and System Preferences. These three options are the most commonly utilized and unchecking them may cause significant difficulty in locating items such as TeamViewer QuickSupport.
7. Is the slowness reproducible on the server?
If the previous steps haven't yielded any obvious issues, the next step is to evaluate the specific slowness your office is experiencing. This will help both your office and MacPractice Support in honing down on the specific issue. Ask yourself these questions:
- Is the slowness occurring on a specific computer?
- Is the slowness reproducible on the server computer?
- Is there a specific area of MacPractice where you are seeing slowness?
- Is there a particular time in the day when this slowness occurs? Does it always occur during this time? Intermittently?
MacPractice Support will typically ask these questions, so if you reach this point and determine you need to call in for assistance, write down these answers so you can provide them to MacPractice Support.
8. How long has the server computer been running?
MacPractice typically recommends restarting the server computer at least once a week, and once every two or four weeks on macOS Sierra if you are experiencing regular performance issues. If the server computer is left running for an extended period of time, it's possible a program may start to hog the computer’s memory and slow down all processes on the computer, as evaluated in Step 4. If the server computer is slow, this almost always causes slowness on the rest of your client computers running MacPractice. A simple restart of the server computer can resolve slowness and other issues.
9. Are the MacPractice Preferences set for best performance?
There are several Preferences that can be adjusted that can potentially improve performance in specific areas of MacPractice. These settings will need to be evaluated for each computer, as these are Local Preferences.
It's always a good idea to check these Preferences and know their impacts, even if they don't resolve the immediate issue.
The goal of tweaking these Preferences is to reduce the amount of data that MacPractice needs to load at one time. If by adjusting these Preferences you adversely impact your workflow, you can always reverse them as needed.
Ideal preferences are listed below for best performance. The bold header indicates which section the Preference is located. Use the Preferences sidebar to navigate to the appropriate section.
- Attachments: Enable the preference "Display Attachments newer than (x) days old when on Many". If possible, set the day value to something reasonable like 30 or 7 days.
- EDR/EMR: In the lower left, set the "Default Records to Load" preference to something less than All Records.
- Patients Ability: Uncheck the preference "Automatically Load Patients in Sidebar".
- Scheduling > Appointments Tab: Check the preference "Show Cancelled/Missed appointments dating back to (x) days". If possible, set the day value to something reasonable like 180 or 90 days. Note that this does not remove record of those cancelled missed appointments from the patient records, it just prevents them from automatically loading in the Schedule.
- Sidebar: Uncheck the preference "Auto-Load Records".
10. Is the slowness network related?
MacPractice always recommends connecting via Ethernet whenever possible. Computers with both Ethernet and Wi-Fi enabled will sometimes see the connection switch back and forth between the two, which can cause not only slowness, but also a momentary loss in connection to the server computer. Try disabling Wi-Fi for any computers connected via an Ethernet cable to ensure that the more stable connection is always being used.
When MacPractice Support troubleshoots slowness, we will also often try to distinguish whether the slowness is occurring on the MacPractice Server vs. the clients. If the server is behaving perfectly fine, but the client is experiencing intermittent slowness, this could be an indication that there are issues with sending or receiving data from that client. This is most often seen as intermittent slowness that can occur anywhere in the software, but it doesn't *always* appear, where it will spin for an abnormal amount of time and will either spin perpetually, or it will take a minute or two to cease.
Thankfully, we can test this easily by performing a "Ping" test. You will need to open the "Network Utility" application. The easiest way to launch this app is to click on the Spotlight Search (the magnifying glass in the upper right hand corner of your desktop, to the right of your clock) and type "Network Utility" into the search prompt that appears.
You can also open Network Utility by navigating to Finder > Applications > Utilities.
Click on the "Ping" tab as seen above.
Next, you will need the Server IP address in order to "Ping" it. You can find the Server's IP address from a client computer by logging out of MacPractice. Before logging back in, check the Connection Drawer by clicking the gear icon in the upper right hand of the MacPractice Login Screen.
Take the IP address listed in "Server IP Address" as highlighted below, and input it into the "Enter the network address to ping." field. Once this is complete, click the "Ping" button. You will then see a series of results.
What we're specifically looking for is the time= x ms entry at the end of a line, as you can see in the above screenshot. This is the amount of time in milliseconds that it takes for the client to send a piece of data to the server and receive a response. For an Ethernet connection, a stable connection is 0.5 to 1.0 ms. For WiFi connections, we can expect to see slightly higher times, but it should not exceed 10 ms. Anything larger than this indicates that there may be some stability issues with your network connection that could be causing problems.
If you see 'request timeouts', this indicates that the connection isn't stable, and information being sent is not being received.
Resolving an unstable connection will require a network specialist or an IT professional to assist in evaluating your network's hardware and determining a solution. This is something that MacPractice Support cannot assist with, as we are not familiar with the intricacies of your network and a network specialist would be better suited to solving this problem.
11. Does the computer meet the minimum software requirements for the current version of MacPractice?
While MacPractice never sends out an update of MacPractice without first receiving written or verbal confirmation from the office that all computers meet our minimum system requirements, it is possible that you have been released a build of MacPractice that has requirements that exceed your system specifications. For the current system requirements of MacPractice builds, check out the Software Requirements page here.
To check your current system specifications, you can access this by navigating to the Apple menu and clicking "About This Mac".
You'll want to compare the Processor and Memory to Requirements in particular, as those are the most important factors along with Storage space, which can be checked by clicking on the "Storage" tab.
12. Have you checked everything?
If you've followed all of these steps, it's definitely time to contact MacPractice Support so they can investigate further. Please outline all steps that you've taken when submitting your ticket so that MacPractice Support can jump straight in. They may need to review a few of these steps to determine if anything had been missed, especially with interpreting Activity Monitor results, so be patient with them as they work diligently to resolve the problem!