PowerShell scripts for Microsoft 365 Health Monitoring Reports

Your download is in progress and it will be complete in just a few seconds! If you face any issues, download manually here

Thank you for registering with ManageEngine.

We will send the download link to the registered email ID shortly.

Manage and Secure Microsoft 365 with M365 Manager Plus

  •  
  •  
  •  
  • By clicking 'Download 30-day free trial' you agree to processing of personal data according to the Privacy Policy.

Service health monitoring for cloud platforms is an integral part of IT admins' everyday routine. PowerShell scripts can help you fetch service health data without logging in to the portal, but the details fetched by these scripts may prove insufficient at times.

How to fetch Microsoft 365 service health status using PowerShell

1. Execute the following script in your PowerShell window.

$credential = Get-Credential $jsonPayload = (@{userName=$credential.username;password=$credential.GetNetworkCredential().password;} | convertto-json).tostring() $cookie = (invoke-restmethod -contenttype "application/json" -method Post -uri "https://api.admin.microsoftonline.com/shdtenantcommunications.svc/Register" -body $jsonPayload).RegistrationCookie $jsonPayload = (@{lastCookie=$cookie;locale="en-US";preferredEventTypes=@(0,1)} | convertto-json).tostring() $events = (invoke-restmethod -contenttype "application/json" -method Post -uri "https://api.admin.microsoftonline.com/shdtenantcommunications.svc/GetEvents" -body $jsonPayload) $Issues = $events.Events $RequiredDate = (Get-Date).AddDays(-1) $Issuess = $Issues | Where-Object {$_.LastUpdatedTime -ige $RequiredDate} function Get-Eventdetails { Param($issues) foreach($Issue in $Issuess) { $props = @{Service_Name = ($Issue.AffectedServiceHealthStatus).ServiceName Status = $Issue.Status Start_time = $Issue.StartTime Message =[String]($Issue.Messages).MessageText -replace "`n|`r""_" End_Time =$Issue.EndTime ID = $Issue.Id Last_Updated_Time = $Issue.LastUpdatedTime } [pscustomobject]$props } } $Issues;

2. Provide the credentials of the global admin account in the pop-up that appears.

Microsoft-365 Health Monitoring Steps

3. Once authenticated, the service health status of all the associated Microsoft 365 services will be displayed.

Microsoft-365 Health Monitoring Powershell

As you can see in the image, the results aren't very comprehensive; they only show the service health status, and list the services and features affected by incidents/advisories. There's no way of knowing the scope of the impact, the users and regions affected, the current status of the incident, or other crucial details. PowerShell scripts also won't return historical service health data. All data has to be saved manually for future reference.

Why M365 Manager Plus?

M365 Manager Plus monitors the health of Microsoft 365 services 24x7 and sends out email notifications immediately when a service outage is detected. With real-time service outage alerts, you'll know about outages the moment they happen, so you can quickly respond and keep your business processes running without any hiccups.

Granular incident report: The service health dashboard of M365 Manager Plus provides granular details such as the number of incidents in features and endpoints of a service, the number of users who will be affected by a particular incident, the current status of the incident, the start and end time of the incident, and other details which cannot be fetched using PowerShell scripts.

Centralized monitoring: Monitor the health of Exchange Online, Azure Active Directory, OneDrive for Business, Skype for Business, and nearly a dozen other Microsoft 365 services all from one central location.

Real-time alerts: M365 Manager Plus monitors your Exchange Online, Azure Active Directory, OneDrive for Business, Skype for Business, and other Microsoft 365 services 24x7. It also constantly monitors the health of your cloud setup and notifies you immediately about any service outages.

Historical data: Gain access to historical Microsoft 365 service health monitoring data that's older than 30 days.

In-depth graphs: View graphs illustrating the health status of Microsoft 365 services to facilitate quick decision-making.

Teams archiving with powershell

Learn more about how M365 Manager Plus simplifies complex PowerShell tasks.

Why businesses choose M365 Manager Plus?

What our customers say

  • We can now effectively reconcile which licenses we are using in the organization and assign the cost to the business unit. We were also able to identify a number of license changes that could be put in place that reduced our total Microsoft 365 spending.

    Timothy Ransom
    Group IT/IS manager at The Eclipse Group, United Arab Emirates

  • M365 Manager Plus is valuable to our future business and, most importantly, it allows me to keep improving the level of service we provide.

    IT infrastructure manager
    Sunstar Suisse S.A.

  • Our firm purchased ManageEngine M365 Manager Plus to help us protect our business from email-borne cyberthreats. We are absolutely satisfied with the features and ease of use. It has surpassed our expectations.

    Insurance agent
    Security and risk management Gartner review

A holistic Microsoft 365 administration solution

One-stop solution for all your
Microsoft 365 administration needs!

Download now