@Julie M , thank you for reaching out to Microsoft Q&A for this question. There is a combination of services that can be used to achieve this.
1. To track software inventory - Azure Automation Change Tracking and Inventory
2. For Update management and pending reboot monitoring - Azure Automation Update Management
3. For other requirements in the question, you may use Microsoft Sentinel
Please let me know if you have any questions.