Book Image

Microsoft Exchange 2010 PowerShell Cookbook

Book Image

Microsoft Exchange 2010 PowerShell Cookbook

Overview of this book

Table of Contents (22 chapters)
Microsoft Exchange 2010 PowerShell Cookbook
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Reporting on Exchange Server uptime


Using WMI and PowerShell, we can quickly determine how long a server has been online based on the last boot time of the operating system. This information can be useful for monitoring scripts that report on availability, or even when you just want to do a quick check on how long each server has been online. In this recipe, we'll take a look at how to use PowerShell to extract this information.

How to do it...

  1. To determine the total uptime for a server, we can query the Win32_OperatingSystem class by first running this command:

    $OS = Get-WmiObject Win32_OperatingSystem
  2. Next, we can access the LastBootUpTime property of this object to determine how long the system has been online:

  3. The problem with this, as you can see from the output shown previously, is that the value is stored in UTC (Universal Time Coordinate) format. So we'll convert the value to a readable date time format:

    $OS.ConvertToDateTime($OS.LastBootUpTime)
  4. To get the total uptime, we can subtract...