Script: Monitor Lync Services Status using PowerShell script

based on a previous script I had a chance to work with which monitor disk space and sends a detailed report via email, I decided to modify it a bit in order to fit to for monitoring Lync environments and especially Lync servers services.

The following script will create an HTML report of all Lync related services based on an input text file which contains the servers list we want to monitor.

Once running, It will generate a detailed report of Lync related services status and their current state.

The script can be used for creating ad-hoc html report or as a scheduled task in which the report can be sent as an email as well.

The script can be downloaded from the following link.

Please share your comments or suggestions, I would like to hear any.


  1. Alexander Peña

    hello I could not configured to send me mail please an example of how it should go

    ### Configuring Email Parameters
    sendEmail [email protected] “Services State Report – $Date” SMTPS_ERVER $ServicesFileName

    1. Guy Bachar (Post author)

      Hi, you don’t have to specify the mail to:

      it should be as following:
      From@your_email_domain to@your_emaildoamin “Services State Report – $Date” YOUR_MAIL_SERVER $ServicesFileName

  2. leng4ever

    Great script!

    When run the script i get the following error:

    Get-WmiObject : Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))
    At C:ScriptsLyncServicesReport.ps1:147 char:18
    + $ServicesList = Get-WmiObject -Class Win32_Service -ComputerName $server | Wher …
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo : NotSpecified: (:) [Get-WmiObject], UnauthorizedAccessException
    + FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

    even though the script managed to send me a report to email.
    Any advice?


    1. Guy Bachar (Post author)

      Try to modify the text file that contains the list of servers you are running against.
      maybe one of the servers is denying connection due to FW or access restrictions.


      1. leng4ever

        THanks Guy,

        saw it was error in the serverlist file 🙂
        Could you modify the script so it also checks diskpace and add it to the table?
        Do you have same kind of script for Exchange 2013?


        1. Guy Bachar (Post author)


          I’ve a separate script that works the same but pulls information on disk space, you can download it from here:

          as for the EX2013, you can just modify the script and instead of watching for Services starting with Lync, search for services starting with Exchange.
          Let me know if you need any help modifying it.

  3. leng4ever

    Thanks,script worked like a charm!