Exchange Reporter 3.9 verfügbar

Gerade habe ich die neue Version des Exchange Reporter veröffentlicht. Neben einen kleinen Bugfix bezüglich des falsch angezeigten Failover Zeitpunkts der Datenbanken innerhalb einer DAG, sind nun gleich drei neue Module verfügbar. Zwei der neuen Module wurden von Leslie beigesteuert. Leslie hat bereits in den vorherigen Versionen viele Bugs gefunden und gemeldet, daher gebührt Ihm hier ein ganz großes Dankeschön!

Das neue Modul „HealthChecker.ps1“ integriert das Script „Exchange Health Checker“ in den Exchange Reporter. Das Modul führt das Original Script aus und integriert die Ergebnisse des Health Checkers in den Exchange Reporter. Hier mal ein Beispiel:

Falls jemand den Exchange Health Checker noch nicht kennt: Das Script gibt es bereits seit 2015 und wurde vor neulich auch auf dem Exchange Team Blog erwähnt:

Unter dem Link finden sich auch die Checks, welche durch den Health Checker durchgeführt werden. Exchange Reporter kann in der aktuellen Version nun das Health Checker Script ausführen und die Ergebnisse ebenfalls im Exchange Report darstellen. Somit ist Exchange Reporter in der Lage neben den vielen verfügbaren Statistiken auch den Health Check zu automatisieren und in einem Report zusammenzufassen. Natürlich lässt sich der Health Checker unabhängig vom Exchange Reporter aktualisieren, wie genau das funktioniert, steht in der Exchange Reporter Doku.

Leslie hat mir zwei neue Module zugeschickt, welche ich ebenfalls gerne in den Reporter aufnehme. Das Modul „LicenceReport.ps1“ erzeugt eine Übersicht der genutzten und vorhandenen Exchange Client Access Lizenzen. Das Modul liefert einen guten Überblick, ob ggf. ein Lizenz Defizit vorliegt. Fairerweise muss ich allerdings sagen, dass die Auswertung nur einen sehr oberflächlichen Überblick der Lizenzen liefert, einem SAM-Audit hält dieses Modul in keinster Weise stand. Trotzdem finde ich das Modul ganz nützlich, hier mal ein Beispiel:

Das Modul erfordert Änderungen an der settings.ini. Daher bitte die Doku lesen, um die vorhandene settings.ini entsprechend anzupassen, oder die mitgelieferte settings.ini entsprechend neu anpassen.

Das ebenfalls neue Modul „AddressListsReport.ps1“ liefert einen Überblick über die Exchange Adresslisten, so lassen sich Adresslisten aufspüren welche keine Einträge haben:

In größeren Umgebungen müsste das Modul allerdings etwas angepasst werden, da eine Auflistung aller Mitglieder einen sehr großen Report erzeugen kann. In Umgebungen wo es viele Adresslisten gibt, finde ich das Modul allerdings sehr sinnvoll.

Des weiteren wurden zwei kleine Fehler behoben. Im DAGReport.ps1 wurden der falsche Failoverzeitpunkt und eine falsche Anzahl an Datenbankkopien angezeigt. Die aktuelle Version kann hier runtergeladen werden:

Hier geht es zur Exchange Reporter Seite mit der detaillierten Beschreibung:

25 thoughts on “Exchange Reporter 3.9 verfügbar”

  1. Hello
    erstmal Danke für die ganze Arbeit.

    Leider kann ich den Exchange Reporter nicht starten, beim Laden der „global Variab“ kommt immer ein Error.

    In der Errorlog.txt steht folgendes:
    ———————————————————————————————————————————————————————————–
    -Start– 01/19/2022 11:30:39 ———————————————————————————-
    Die Benennung „Set-ADServerSettings“ wurde nicht als Name eines Cmdlet, einer Funktion, einer Skriptdatei oder eines ausführbaren Programms erkannt. Überprüfen Sie die Schreibweise des Namens, oder ob der Pfad korrekt ist (sofern enthalten), und wiederholen Sie den Vorgang.
    ———————————————————————————————————————————————————————————–
    Hat jemand eine Idee, was hierfür der Grund ist?

    Thank you
    Michi

    Reply
  2. Hello Frank,

    kann das Script evtl. noch um die Möglichkeit erweitert/angepasst werden, die credentials über eine im Benutzerkontex erstellten und ausgelesenen XML Datei einzulesen?

    Die Zugangsdaten in der settings.ini im Klartext zu hinterlegen, finde ich nicht so gut. Dort würde ich lieber den Pfad zu einer xml-Datei hinterlegen, in dem die Credentials enthalten sind. Somit kann diese auch nur der Benutzer auslesen, der die Datei auf dem Server erstellt hat.

    Kann ja evtl. als zusätzliche Option ein hinzugefügt werden, wenn ein Pfad zu einer xml angegeben ist, nutze dies, ansonsten die im Klartext hinterlegten Daten.

    Greetings
    Stefan

    Reply
  3. Hallo, lange schon setzen wir den Reporter ein. Zuletzt V3.7… Nun auf 3.9 gewechselt.
    Eine Frage, gibt es schon Bestrebungen -oder auch nen geheimen SChalter- um bei der Mail Flow Übersicht (Gesendete/Empfangene Mails) unterscheiden zu können ob es sich um EXTERNE oder INTERNE Mails handelt?
    Die Unterscheidung könnte ja z.B. über die Akzeptierten Domänen (Accepted Domains unter Mailflow) erfolgen.
    Die dort hinterlegten Domänen, sind Firmenintern. Und alles nicht enthaltene ist „Extern“.

    Das wäre klasse

    Thank you very much

    Reply
  4. Guten Morgen alle zusammen.

    Bei „Modules“ tragen diese beiden gemeinsam die Nummer „34“. Ist das korrekt:

    34=Addresslistreport.ps1
    34=HealthChecker.ps1

    Vermutlich ist der „HealthChecker“ dann die 35, oder?

    Reply
    • Hallo Martin,
      Über die Nummern kannst du die Reihenfolge im Report beinflussen soweit hatte ich das verstanden und angewendet.

      Reply
    • Hallo Martin,

      das ist richtig, die Nummern steuern die Reihenfolge und sollten unterschiedlich sein. Die beiden Module sind voneinader unabhängig.

      Grüße Leslie

      Reply
    • Hi Martin,
      stimmt, ist ein kleiner Fehler in der settings.ini. hat aber keine Auswirkungen, es dient (wie schon von anderen erwähnt) nur der Sortierung der Module im Report. Gleiche Nummern sind daher erst einmal kein Problem. Ich werde es aber in der nächsten Version korrigieren.

      Greetings,
      Frank

      Reply
      • Hello Frank,

        die Aussage ist meiner Erfahrung nach falsch. Bei doppelten Nummern ist der zuerst erwähnte Report (zumindest in einer Email) nicht enthalten.

        LG

        Reply
  5. Hello everyone,
    vielen Dank für die überarbeitete Version!

    Bei der Integration in unserer Umgebung ist mir aufgefallen, dass nun Administratorenrechte notwendig sind um das Skript laufen zu lassen. Hat das einen bestimmten Grund?

    Denn der dafür vorgesehen Nutzer hat an allen Servern die notwendigen Rechte, um die Informationen abzurufen. Ich möchte jetzt ungern das Berechtigungsschema aufbohren.

    Greetings,
    Daniel

    Reply
    • Hallo Daniel,
      das ein oder andere Modul benötigt lokale Admin Rechte, es kann also bei Modulen zu Fehlern kommen, wenn diese nicht mit lokalen Admin Rechten laufen. Ich hab aber dummerweise nicht dokumentiert, welche Module zickig werden. Wenn du möchtest kannst du aber Zeile 1 (#Requires -RunAsAdministrator) in der Datei „New-ExchangeReport.ps1“ löschen, somit ist keine administrative PowerShell mehr erforderlich.
      Greetings,
      Frank

      Reply
  6. Hallo Lesli,
    wir haben viele Shared Mailbox und natürlich Benutzer mit Vollzugriff auf diese aber sollte es das vielleicht sein?!
    Kann man auslesen bzw. Herausbekommen welche Postfächer das wäre.
    Auch die Anzahl der Active Sync Benutzer ist viel geringer aber was ich mir vorstellen kann ist eine Regel, die bei bestimmten Anwendern Elemente die älter als 60 Tage sind aus dwm Papierkorb löscht aber auch nur da und das war bisher bei der Standard Cal dabei.

    Mfg Paul

    Reply
    • Hi Paul,

      die Shared Mailboxen sollten das nicht sein und auch für Active Sync brauchst du keine Ent Cal aber für bestimmte Beschränkungen auf die mobilen Geräte per Richtlinie.

      Eine Liste der betroffenen User bekommst du mit
      Get-ExchangeServerAccessLicenseUser -LicenseName (Get-ExchangeServerAccessLicense |
      Where-Object {($_.UnitLabel -eq „CAL“) -and ($_.LicenseName -like „*Enterprise*“)}).licenseName -WarningAction silentlyContinue

      Ich hatte auch überlegt ob man die Liste mit aufnimmt aber das kann den Bericht wie hier natürlich schnell fluten.

      Aufbewahrungsrichtlinien mit persönlichen Tags zählen zu den Ent CAL Funktionen.
      https://docs.microsoft.com/de-de/exchange/policy-and-compliance/mrm/retention-tags-and-retention-policies?view=exchserver-2019

      Grüße Leslie

      Reply
      • Hallo Leslie,
        wir haben die Ursache gefunden und es war ein Aufbewahrungstag namens „Never Delete“ innerhalb einer Aufbewahrungsrichtlinie. Nach der Entfernung sank die Anzahl der Ent CAL`s auf 70.

        Vielen Dank für den Tipp und das Modul.

        Reply
  7. Hello Frank,
    ich hab mir die neue Version heruntergeladen und auf den Exchange eingespielt.
    Kann es sein, dass das Modul clientinfo.ps1 im Archiv komplett fehlt?
    Ciao Thomas

    Reply
      • Hello Frank,
        danke für die neue Version.
        Gibt es eine Möglichkeit die Funktion für Exchange 2016 wieder zurück zu bringen? In den RPC Client Logs kann ich keinen Hinweis mehr auf den verwendeten Client finden. Oder wo muss man da suchen?
        Greetings
        Peter

        Reply
        • Hallo Peter,
          ich hoffe ich kann das Modul noch mal zurück bringen. Ich muss mich erst einmal wieder damit beschäftigen, wo man am besten die Infos zu den CLients abgreifen kann.
          Greetings,
          Frank

        • Hello Frank,
          danke für die Info. Unter $exinstall\Logging\MAPI Client Access konnte ich die genutzten Outlook Versionen finden.
          Greetings
          Peter

  8. Version läuft wie es sein soll aber die Anzahl der Ent. CAL‘s kann ich so nicht glauben denn es wären bei uns eigentlich nur 70 und nicht 1600. Nur die 70 haben ein Archivpostfach und sonst gibt es nur normale Postfächer und Sammelpostfächer (Shared Mailbox).

    Ich hatte damals den Wunsch geäußert bei den EAS Geräten die Anzahl der Inaktiven Tage über die settings.ini vielleicht umzusetzen.
    Vielleicht kommt das ja noch und vielen Dank für das Tool

    Reply
  9. Oh man, der Zufall mal wieder. Gestern gerade erst Version 3.8 runtergeladen und installiert und eingerichtet und heute direkt das Update. :-)

    Aber dennoch, Besten Dank an alle Beteiligten!

    Reply

Leave a Comment