Resolve issues with Profile Manager in macOS Server
Learn how to find and fix issues if Profile Manager doesn't work the way you expect.
If you can't access the administration page
Profile Manager's basic setup is in Server app. You must use Safari to access Profile Manager's /mydevices webpage and the administration webpage.
Only server administrators can access your administration page. The URL format for your administration page is:
https://your_server's_fully_qualified_domain_name/profilemanager
Example: https://www.example.com/profilemanager
To enroll an iPhone, iPad, iPod touch, or a Mac, go to:
https://your_server's_fully_qualified_domain_name/mydevices
Example: https://www.example.com/mydevices
If you can't access the administration page with a web browser other than Safari, try with Safari. If you can't access it with Safari, check your DNS server. DNS settings are important when you're managing a Profile Manager deployment. If Profile Manager doesn't open, make sure your server points to a reliable DNS server.
If you can't push profiles or apps to clients
If you experience issues when you push profiles or apps to client systems, check the system log file in Console. If it reports that your server can't reach Apple's APNs servers, check your network's configuration. Make sure that all needed ports are open.
For more information, turn on APNS debug logging with these Terminal commands:
sudo defaults write /Library/Preferences/com.apple.apsd APSWriteLogs -bool TRUE
sudo defaults write /Library/Preferences/com.apple.apsd APSLogLevel -int 7
sudo killall apsd
You can view the logs in the Console app by filtering on the com.apple.apsd and com.apple.apspd subsystems.
After your APNS transactions are logged, use these Terminal commands to turn off debug logging:
sudo defaults write /Library/Preferences/com.apple.apsd APSWriteLogs -bool FALSE
sudo defaults delete /Library/Preferences/com.apple.apsd APSLogLevel
sudo killall apsd
If you get other issues with Profile Manager
Profile Manager logs can help you fix issues with Profile Manager. You can find a symbolic link named "devicemgr" at /var/log. This file points to /Library/Logs/ProfileManager, where you can find these logs:
AuditLogs |
|
devicemgrd.log |
|
dmAuthService.log |
|
dmDeviceService.log |
|
dmhttpd.log |
|
dmPortalService.log |
|
dmSCEPService.log |
|
dmWebAdminService.log |
|
dm_helper.log |
|
dmrunnerd.log |
|
migration_tool.log |
|
php-fpm.log |
|
php-fpm.devicemgr.log |
|
PostgreSQL-<yyyy-mm-dd>.log |
|
servermgr_devicemgr.log |
|
This log can provide helpful information related to the web server:
/var/log/apache2/service_proxy_error.log
The following terminal command can provide you with additional information:
sudo log show --info --debug --predicate "(eventMessage contains[cd] 'devicemgr') or (category contains[cd] 'HTTPServer')"
About transaction "failures"
Some of these logs might list transaction "failures" or retries. Most of these entries are expected and don't indicate an issue. These logged events are conflicts between attempts to modify the underlying PostgreSQL database at the same time. These kinds of failures retry until they succeed.
You can identify transaction conflicts when you see any of these notes in your log files:
Canceled on conflict out to pivot
could not serialize access due to concurrent update
@@@ Retry #X
@@@ Retry X
Check the apspd CFPrefs file
Navigate to /Library/Preferences/ApplePushServiceProvider, select com.apple.apspd.plist, then choose File > Get Info. If the file is larger than 5KB, remove it and restart the apspd process with the following Terminal command:
sudo killall apspd
Use verbose logging to find more info
More information on how to fix an issue is sometimes available if you increase the log level. To gather the information you need, reproduce the issue after you increase the logging level.
When you're finished, revert to the original logging level. If you leave the logging level at a higher setting, it decreases the available space on your startup drive.
Turn on verbose logging
To increase the level of logging, use this Terminal command:
sudo debugDeviceMgr 4
This automatically restarts Profile Manager Service.
Turn off verbose logging
To revert the logging level back to its original setting, use this Terminal command:
sudo debugDeviceMgr 1
This automatically restarts Profile Manager Service.
Learn more
See the ports used by Profile Manager.
Get Profile Manager Help.
Learn what to do if you can't use the Apple Push Notification service.