I hate errors in the event log, and event 106 is particularly stubborn. It occurs from time to time. Here is an example:
Source: MSExchange Common
Event ID: 106
Error updating a performance indicator. The counter name is 'Percentage of MSAUserNetID Cache hits for last minute', the category name is 'MSExchange Global Locator Processes'. Optional code: 3. exception: The exception thrown is : System.InvalidOperationException: The requested performance counter must be initialized as ReadOnly because it is not user-defined.
for System.Diagnostics.PerformanceCounter.InitializeImpl()
for System.Diagnostics.PerformanceCounter.get_RawValue()
for Microsoft.Exchange.Diagnostics.ExPerformanceCounter.set_RawValue(Int64 value)
Last worker process info : System.ArgumentException: No process with ID 7816 is executed.
for System.Diagnostics.Process.GetProcessById(Int32 processId)
for Microsoft.Exchange.Diagnostics.ExPerformanceCounter.GetLastWorkerProcessInfo()
Processes running while Performance counter failed to update:
2552 w3wp
..
0 Idle
Performance Counters Layout information: FileMappingNotFoundException for category MSExchange Global Locator Processes : Microsoft.Exchange.Diagnostics.FileMappingNotFoundException: Cound not open File mapping for name Global\netfxcustomperfcounters.1.0msexchange global locator processes. Error Details: 2
for Microsoft.Exchange.Diagnostics.FileMapping..ctor(String name, Boolean writable)
for Microsoft.Exchange.Diagnostics.PerformanceCounterMemoryMappedFile.Initialize(String fileMappingName, Boolean writable)
for Microsoft.Exchange.Diagnostics.ExPerformanceCounter.GetAllInstancesLayout(String categoryName)
Event 106 is generated for each performance indicator and generates many red errors in the event log:
I have not yet found out why the event 106 occurs from time to time, but at least I have a workaround. When the Exchange performance indicators are re-registered, everything is quiet again for the time being.
To register the performance indicators, the following small script can be executed in the Exchange Management Shell (as administrator):
add-pssnapin Microsoft.Exchange.Management.PowerShell.Setup $perfcounters = Get-ChildItem $exinstall\setup\perf\*.xml | foreach {$_.fullname} foreach ($perfcounter in $perfcounters) { write-host $perfcounter New-PerfCounters -DefinitionFileName $perfcounter }
The performance indicators are thus reloaded, which can be recognized by the event 1001:
The performance indicators for the service msexchangeumcallrouteravailability (msexchangeumcallrouteravailability) have been removed. The data contains the new values of the registry entries "Last Counter" and "Last Help".
Loading the performance counters takes a while, there are 272 on an Exchange 2016 server. Errors also occur during registration, so I assume that these are still bugs:
Hallo Alex,
die Befehle lässt er nun wenigstens zu ohne einen Fehler zu generieren.
die Reparaturbefehle aus deinem Post hatte ich gestern schon angewendet, die Meldungen sind hier schon einmal weniger geworden.
Werde nun die Verbleibenden Meldungen prüfen und die Counter neu generieren.
MfG Torsten
kurze Rückmeldung:
Counter sind nun in Ordnung,
System noch einmal neu gestartet.
Die ADTransientException scheint auch erst einmal weg zu sein. (unklar durch was hervorgerufen bzw. gelöst).
Vielen Dank für die Unterstützung @Alex
Moin Alex,
Danke für dein Feedback,
habe die Management Shell direkt aus dem Startmenü ohne „Als Administrator ausführen“ gestartet.
Im Titel steht nur Computer:Exchangeserver.domäne.toplevel.
Habe schon DNS doppelt und dreifach geprüft, auch aus Verzweiflung nochmal ein preparead durchgeführt.
Erhalte auch im Eventlog msexchange adaccess 2070 Info: Prozess powershell.exe (EMS) (PID=21168). Der Exchange Active Directory-Anbieter hat die Verbindung mit dem Domänencontroller verloren. Fehler: 0x51 (ServerDown) (Active Directory-Antwort: Der LDAP-Server ist nicht verfügbar.).
Aber auch msexchange adaccess 2080 Info: Prozess Microsoft.Exchange.Directory.TopologyService.exe (PID=3532). Der Exchange Active Directory-Anbieter hat folgende Server mit folgenden Eigenschaften gefunden:
(Servername | Rollen | Aktiviert | Erreichbarkeit | Synchronisiert | GK-fähig | PDC | SACL-Recht | Benötigte Daten | Netlogon | Betriebssystemversion)
Innerhalb des Standorts:
DC01.domäne.toplevel CDG 1 7 7 1 0 1 1 7 1
DC02.domäne.toplevel CDG 1 7 7 1 0 1 1 7 1
Außerhalb des Standorts:
dcdiag beider weisen nur bei syslog und dfrs nicht bestandene Tests aus, vom Exchange aus angefragt.
Bin echt ratlos was das sein kann.
MfG Torsten
Moin Torsten,
versuche es mal mit der normalen Powershell Konsole und nicht mit der Exchange Management Shell.
Dort als erstens den folgenden Befehl eingeben.
Add-Pssnapin Microsoft.Exchange.Management.PowerShell.Setup
und anschliessend
New-PerfCounters -definitionfilename „C:\Program Files\Microsoft\Exchange Server\V15\Setup\Perf\GlsPerformanceCounters.xml“
(Pfad gegebenen falls korrigieren)
siehe auch
https://docs.microsoft.com/en-us/exchange/troubleshoot/setup/event-106-msexchange-common
Grüsse aus BaWü
Alex
P.S. hast du die Reparatur der Leistungsüberwachung schon versucht?
Moin Torsten Bittner,
du hast die Powershell wahrscheinlich als (lokaler) Administrator auf dem Exchange gestartet, und dieser hat eben keine Zugriffsberechtigung auf das AD.
Starte mal die Powershell Konsole schon als Administrator angemeldet, aber OHNE „als Administrator ausführen“ gestartet.
???
´
Grüsse aus BaWü
Alex
Hallo Zusammen,
ich habe eine etwas verknotete Migration des Systems hinter mir.
Es scheint offensichtlich erst einmal alles zu laufen.
Bei der Kontrolle der Ereigniseinträge sind mir die Leistungsindikatorenfehler aufgefallen.
Diese wollte ich beheben um die wichtigen Sachen im Log zu erkennen.
Bei jeder Ausführung erhalte ich aber:
[PS] E:\Program Files\Microsoft\Exchange Server\V15\Bin>New-PerfCounters -DefinitionFileName „E:\Program Files\Microsoft
\Exchange Server\V15\setup\perf\AirSyncCounters.xml“
Der Active Directory-Server ist nicht verfügbar. Fehlermeldung: Active Directory-Antwort: Der LDAP-Server ist nicht
verfügbar.
In Zeile:1 Zeichen:1
+ New-PerfCounters -DefinitionFileName „E:\Program Files\Microsoft\Exchange Server …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [], ADTransientException
+ FullyQualifiedErrorId : [Server=EX02,RequestId=43b0ea43-f7ba-4df5-854a-85d9331b1351,TimeStamp=24.03.2021 14:54:0
1] [FailureCategory=Cmdlet-ADTransientException] 4679072
Das System scheint also ein AD Problem zu haben. Bin über jeden Vorschlag dankbar.
MfG
Torsten Bittner
Moin Frank,
manchmal muss man vorher auch noch die Leistungsüberwachung reparieren.
Geht mit den folgenden Befehlen ganz einfach.
c:\windows\system32\lodctr /R
c:\windows\sysWOW64\lodctr /R
Grüsse aus BaWü
Alexander Fuchs
Hallo Frank
kann ich das Script im laufenden Betrieb ausführen oder besser erst Abends
Gruß Frank
Hi Frank,
ja das kann im laufenden Betrieb gemacht werden.
Gruß, Frank
Hallo Frank, nur zur Info.
Die Ursache für den Fehler ID: 36887 Quelle: Schannel war ein altes Zertifikat (von meiner Testumgebung) auf einem Android Smartphone mit einem E-Mail-Account in der Outlook-App.
Gruß, Manuel
Hallo Frank,
hast Du was rausgefunden wegen dem Event 106?
Bei mir erscheint jetzt zusätzlich (ca. alle 3 Minuten mehrmals) der Fehler ID: 36887 Quelle: Schannel
Es wurde eine schwerwiegende Warnung vom Remoteendpunkt empfangen. Die schwerwiegende Warnung hat folgenden für das TLS-Protokoll definierten Code: 46.
Habe die Server DC und EX 3 mal neu aufgesetzt, immer wieder das Gleiche.
Und wenn ich unter Ereignisanzeige auf „Microsoft Exchange with Database Availability Group Events“ klicke, kommt ein Abfragefehler “ der angegebene Kanal wurde nicht gefunden.
Hast du oder jemand anders eine Idee?
Gruß und Danke, Manuel
Ich hatte beim Ausführen des Befehls ein ObjectNotFound: (New-PerfCounters:String)
Ein Add-PSSnapin Microsoft.Exchange.Management.PowerShell.Setup hat geholfen.
der oben aufgeführte Fehler beim importieren ist hier zu suchen/finden/beseitigen:
Notepad „C:\Program Files\Microsoft\Exchange Server\V15\Setup\Perf\InfoWorkerMultiMailboxSearchPerformanceCounters.xml“
suchen & ersetzen:
suchen: „> Searches“
ersetzen: „>Searches“
speichern und neu einlesen:
New-PerfCounters -DefinitionFileName „C:\Program Files\Microsoft\Exchange Server\V15\Setup\Perf\InfoWorkerMultiMailboxSearchPerformanceCounters.xml“
Der Fehler wird schon seit Exchange 2013 mitgeschleppt…