Zentralisierter Protokollierungsdienst in Skype for Business 2015

Zusammenfassung: Erfahren Sie mehr über die Dienstkomponenten und Konfigurationseinstellungen für den zentralisierten Protokollierungsdienst in Skype for Business Server 2015.

Der zentralisierte Protokollierungsdienst hat folgende Möglichkeiten:

  • Starten oder beenden Sie die Protokollierung auf einem oder mehreren Computern und Pools mit einem einzigen Befehl von einem zentralen Standort aus.

  • Durchsuchen von Protokollen auf einem oder mehreren Computern und Pools. Sie können die Suche so anpassen, dass alle Protokolle auf allen Computern zurückgegeben werden oder präzisere Ergebnisse zurückgegeben werden.

  • Konfigurieren Sie die Protokollierungssitzungen wie folgt:

    • Definieren Sie ein Szenario oder verwenden Sie ein Standardszenario. Ein Szenario im zentralisierten Protokollierungsdienst besteht aus einem Bereich (global oder Standort), einem Szenarionamen zum Identifizieren des Zwecks des Szenarios und einem oder mehreren Anbietern. Sie können das Standardszenario und ein definiertes Szenario jederzeit auf einem Computer ausführen.

    • Sie können einen vorhandenen Anbieter verwenden oder einen neuen Anbieter erstellen. Ein Anbieter definiert, was die Protokollierungssitzung sammelt, welche Detailebene, welche Komponenten nachverfolgt werden sollen und welche Flags angewendet werden.

      Tipp

      Wenn Sie mit OCSLogger vertraut sind, bezieht sich der Begriffprovider auf die Sammlung von Komponenten (z. B. S4, SIPStack), einen Protokollierungstyp (z. B. WPP, EventLog oder IIS-Protokolldatei), eine Ablaufverfolgungsebene (z. B. All, verbose, debug) und Flags (z. B. TF_COMPONENT, TF_DIAG). Diese Elemente werden im Anbieter definiert (eine Windows PowerShell Variable) und an den Befehl Centralized Logging Service übergeben.

    • Konfigurieren Sie Protokolle für bestimmte Computer und Pools.

    • Definieren Sie den Bereich der Protokollierungssitzung unter Verwendung der Optionen Standort (Ausführung der Protokollierungsaufzeichnung erfolgt nur auf Computern an diesem Standort) bzw. Global (Ausführung der Protokollierungsaufzeichnung erfolgt auf allen Computern in der Bereitstellung).

Der zentralisierte Protokollierungsdienst ist ein leistungsstarkes Problembehandlungstool für große oder kleine Probleme, von der Ursachenanalyse bis hin zu Leistungsproblemen. Alle Beispiele werden mithilfe der Skype for Business Server-Verwaltungsshell gezeigt. Hilfe für das Befehlszeilentool wird über das Tool selbst bereitgestellt, aber es gibt eine begrenzte Anzahl von Funktionen, die Sie über die Befehlszeile ausführen können. Durch die Verwendung Skype for Business Server-Verwaltungsshell haben Sie Zugriff auf einen viel größeren und viel konfigurierbareren Satz von Features, sodass dies immer Ihre erste Wahl sein sollte.

Komponenten des Protokollierungsdiensts

Der zentralisierte Protokollierungsdienst wird auf allen Servern in Ihrer Bereitstellung ausgeführt und besteht aus den folgenden Agents und Diensten:

  • ClsAgent für den zentralen Protokollierungsdienst wird auf jedem Computer ausgeführt, auf dem Skype for Business Server bereitgestellt wurden. Er lauscht ( an den Ports TCP 50001-50003) auf Befehle von ClsController über WCF und sendet Antworten zurück an den Controller. Es verwaltet Protokollsitzungen (Starten/Beenden/Aktualisieren) und durchsucht Protokolle. Es führt auch Housekeeping-Vorgänge wie Protokollarchivierung und Löschvorgänge aus.

  • Centralized Logging Service Controller Cmdlets The Skype for Business Server Management Shell sendet Start-, Stop-, Flush- und Search-Befehle an clsAgent. Wenn Suchbefehle gesendet werden, werden die resultierenden Protokolle an den ClsControllerLib.dll zurückgegeben und aggregiert. Der Controller sendet Befehle an den Agent, empfängt die status dieser Befehle und verwaltet die Daten der Suchprotokolldatei, da sie von allen Agents auf einem beliebigen Computer im Suchbereich zurückgegeben werden, und aggregiert die Protokolldaten in einem aussagekräftigen und sortierten Ausgabesatz. Die Informationen in den folgenden Themen konzentrieren sich auf die Verwendung der Skype for Business Server-Verwaltungsshell.

Kommunikation zwischen ClsController und ClsAgent

Beziehung zwischen CLSController und CLSAgent.

Sie geben Befehle über die Windows Server-Befehlszeilenschnittstelle oder die Skype for Business Server-Verwaltungsshell aus. Die Befehle werden auf dem Computer ausgeführt, bei dem Sie angemeldet sind, und an den lokalen ClsAgent oder an die anderen Computer und Pools in Ihrer Bereitstellung gesendet.

ClsAgent verwaltet eine Indexdatei aller .CACHE-Dateien, die auf dem lokalen Computer vorhanden sind. ClsAgent ordnet diese so zu, dass sie, entsprechend der Definition der Option „CacheFileLocalFolders“, gleichmäßig auf Volumes verteilt sind und nie mehr als 80 % eines Volumes belegen (der lokale Cachespeicherort und der Prozentsatz sind mit dem Cmdlet Set-CsClsConfiguration konfigurierbar). ClsAgent ist außerdem für die Cacheablaufzeiten alter gecachter Ereignisablaufprotokolldateien (ETL-Dateien) vom lokalen Computer zuständig. Nach zwei Wochen (der Zeitrahmen kann mit dem CmdletSet-CsClsConfiguration konfiguriert werden) werden diese Dateien in eine Dateifreigabe kopiert und vom lokalen Computer gelöscht. Ausführliche Informationen finden Sie unter Set-CsClsConfiguration. Wenn eine Suchanfrage empfangen wird, werden die Suchkriterien verwendet, um die gecachten ETL-Dateien auszuwählen und die Suche anhand der Werte in dem vom Agent geführten Index durchzuführen.

Hinweis

Dateien, die vom lokalen Computer in die Dateifreigabe verschoben wurden, können von ClsAgent durchsucht werden. Sobald ClsAgent die Dateien in die Dateifreigabe verschiebt, werden die Cacheablaufzeiten und das Entfernen von Dateien nicht mehr durch ClsAgent verwaltet. Sie sollten daher eine administrative Aufgabe definieren, die die Größe der Dateien in der Dateifreigabe überwacht und diese Dateien löscht oder archiviert.

Die resultierenden Protokolldateien können mit einer Vielzahl von Tools gelesen und analysiert werden, einschließlich Snooper.exe und jedes Tool, das eine Textdatei lesen kann, z. B.Notepad.exe. Snooper.exe ist Teil der Skype for Business Server 2015-Debugtools und steht als Webdownload zur Verfügung.

Wie OCSLogger verfügt der zentralisierte Protokollierungsdienst über mehrere Komponenten für die Ablaufverfolgung und bietet Optionen zum Auswählen von Flags, z. B. TF_COMPONENT und TF_DIAG. Der zentralisierte Protokollierungsdienst behält auch die Protokollierungsebenenoptionen von OCSLogger bei.

Der wichtigste Vorteil bei der Verwendung der Skype for Business Server-Verwaltungsshell gegenüber dem ClsController über der Befehlszeile besteht darin, dass Sie neue Szenarien mit ausgewählten Anbietern konfigurieren und definieren können, die auf den Problembereich, benutzerdefinierte Flags und Protokollierungsebenen abzielen. Die für ClsController verfügbaren Szenarien sind auf die für das Programm definierten Szenarien beschränkt.

In früheren Versionen war OCSLogger.exe verfügbar, um Administratoren und Supportmitarbeitern das Erfassen von Nachverfolgungsdateien von Computern in der Bereitstellung zu ermöglichen. OCSLogger hatte bei all seinen Stärken einen Nachteil. Sie konnten damit nur jeweils auf einem Computer Protokolle erfassen. Sie konnten sich bei mehreren Computern anmelden, indem Sie separate Kopien von OCSLogger verwendeten, Sie erhielten jedoch mehrere Protokolle und es gab kein einfaches Verfahren, um die Ergebnisse zusammenzufassen.

Wenn ein Benutzer eine Protokollsuche anfordert, ermittelt der ClsController, an welche Computer die Anfrage gesendet werden muss (dies basiert auf den ausgewählten Szenarien). Er bestimmt außerdem, ob die Suche an die Dateifreigabe gesendet werden muss, in der sich die gespeicherten ETL-Dateien befinden. Wenn die Suchergebnisse an den ClsController zurückgegeben werden, fasst der Controller die Ergebnisse zu einem einzigen, zeitlich geordneten Ergebnissatz zusammen, der dem Benutzer angezeigt wird. Benutzer können die Suchergebnisse für weitere Analysen auf ihrem lokalen Computer speichern.

Wenn Sie eine Protokollierungssitzung starten, legen Sie Szenarien fest, die sich auf das Problem beziehen, das Sie beheben möchten. Sie können jederzeit zwei Szenarien gleichzeitig ausführen. Eines dieser beiden Szenarien sollte das Szenario „AlwaysOn“ sein. Dieses sollte in Ihrer Bereitstellung immer ausgeführt werden und Informationen von allen Computern, Pools und Komponenten erfassen.

Wichtig

Standardmäßig wird das AlwaysOn-Szenario in Ihrer Bereitstellung nicht ausgeführt. Sie müssen das Szenario explizit starten. Nach dem Start wird die Ausführung bis zum expliziten Beenden fortgesetzt, und der Ausführungszustand bleibt durch Neustarts der Computer erhalten. Ausführliche Informationen zum Starten und Beenden von Szenarien finden Sie unter Starten oder Beenden der CLS-Protokollerfassung in Skype for Business Server 2015.

Wenn ein Problem auftritt, können Sie ein zweites Szenario starten, das sich auf dieses Problem bezieht. Reproduzieren Sie das Problem und beenden Sie dann die Protokollierung für das zweite Szenario. Beginnen Sie mit der Protokollsuche für das Problem. Die zusammengefassten Protokolle ergeben eine Protokolldatei, die Nachverfolgungsmeldungen von allen Computern des Standort- oder des globalen Bereichs Ihrer Bereitstellung enthält. Wenn die Suche mehr Daten zurückgibt, als Sie analysieren können (meist aufgrund von Störabstände, bei denen das Rauschen zu hoch ist), führen Sie eine weitere Suche mit enger gesteckten Parametern durch. An diesem Punkt können Sie gegebenenfalls auftretende Muster feststellen, die Ihnen helfen, das Problem genauer einzugrenzen. Letztlich finden Sie nach diversen verfeinerten Suchen Daten, die für das Problem relevant sind und die Hauptursache deutlich machen.

Tipp

Wenn in Skype for Business Server ein Problemszenario angezeigt wird, fragen Sie sich zunächst: "Was weiß ich bereits über das Problem?" Wenn Sie die Problemgrenzen quantifizieren, können Sie einen großen Teil der operativen Entitäten in Skype for Business Server beseitigen.

Stellen Sie sich ein Beispielszenario vor, in dem Sie wissen, dass Benutzer bei der Suche nach einem Kontakt keine aktuellen Ergebnisse erhalten. Es macht keinen Sinn, nach Problemen in den Medienkomponenten, Enterprise-VoIP, Konferenzen und einer Reihe anderer Komponenten zu suchen. Was Sie nicht wissen, ist, wo das Problem tatsächlich auftritt: auf dem Client oder auf dem Server? Kontakte werden vom Benutzerreplikator aus Active Directory gesammelt und über den Adressbuchserver (ABServer) an den Client übermittelt. Der ABServer ruft seine Updates aus der RTC-Datenbank ab (in der der Benutzerreplikator sie geschrieben hat) und sammelt sie standardmäßig in Adressbuchdateien ( 1:30 Uhr). Die Skype for Business Server Clients rufen das neue Adressbuch nach einem zufälligen Zeitplan ab. Da Sie wissen, wie der Prozess funktioniert, können Sie Die Suche nach der potenziellen Ursache für ein Problem im Zusammenhang mit daten, die vom Benutzerreplikator aus Active Directory gesammelt werden, der ABServer die Adressbuchdateien nicht abruft und erstellt, oder die Clients, die die Adressbuchdatei nicht herunterladen, reduzieren.

Aktuelle Konfiguration

Der zentralisierte Protokollierungsdienst ist so konfiguriert, dass definiert wird, was der Protokollierungsdienst erfassen soll, wie er sammelt, woher er gesammelt wird und was die Protokolleinstellungen sind. Sie definieren diese Einstellungen global (d. h. für die gesamte Bereitstellung) oder für einen Standort (also einen benannten Standort in Ihrer Bereitstellung). Für jede Protokollierung, die Sie definieren, werden die Einstellungen verwendet, die jeweils für die von Ihnen für Befehle zum Starten, Beenden, Leeren und Durchsuchen von Protokollen verwendete Identität geeignet sind.

So zeigen Sie die aktuelle Konfiguration des zentralisierten Protokollierungsdiensts an

  1. Starten Sie die Skype for Business Server-Verwaltungsshell: Klicken Sie auf Start, zeigen Sie auf Alle Programme und dann auf Skype for Business 2015 und klicken Sie anschließend auf Skype for Business Server-Verwaltungsshell.

  2. Geben Sie den folgenden Befehl an der Eingabeaufforderung ein:

    Get-CsClsConfiguration
    

    Tipp

    Sie können den Bereich der zurückgegebenen Konfigurationseinstellungen einschränken oder erweitern, indem Sie und einen Bereich wie "Site:Redmond" definieren -Identity , um nur die CsClsConfiguration für den Standort Redmond zurückzugeben. Wenn Sie Details zu einem bestimmten Teil der Konfiguration benötigen, können Sie die Ausgabe an ein anderes Windows PowerShell-Cmdlet weiterleiten. Geben Sie beispielsweise Folgendes ein, um Details zu den Szenarien abzurufen, die in der Konfiguration für den Standort "Redmond" definiert sind: Get-CsClsConfiguration -Identity "site:Redmond" | Select-Object -ExpandProperty Scenarios

    Beispielausgabe von Get-CsClsConfiguration.

    Das Ergebnis des Cmdlets zeigt die aktuelle Konfiguration des zentralisierten Protokollierungsdiensts an.

Konfigurationseinstellung Beschreibung
Identity
Identifiziert den Bereich und den Namen dieser Konfiguration. Es gibt nur eine globale Konfiguration sowie eine Konfiguration pro Standort.
Scenarios
Auflistung aller Szenarien, die für diese Konfiguration definiert sind.
SearchTerms
Definierte Suchbegriffe für die Konfiguration. Microsoft 365 oder Office 365, nicht lokale Bereitstellungen.
SecurityGroups
Definierte Sicherheitsgruppen, die steuern, welche Mitglieder von Sicherheitsgruppen Computer basierend auf dem Standort, an dem sie sich befinden, anzeigen können. Die Website ist in diesem Kontext die Website, die im Topologie-Generator definiert ist.
Regions
Definierte Regionen werden verwendet, um Sicherheitsgruppen zu einer Region zusammenzufassen, beispielsweise EMEA.
EtlFileRolloverSizeMB
Dieser Parameter gibt die maximale Größe der Protokolldatei vor der Erstellung einer neuen ETL-Datei (Event Trace Log, Ereignis-Ablaufverfolgungsprotokoll) an. Wenn die definierte Größe erreicht ist, wird eine neue Protokolldatei erstellt, auch wenn die in EtlFileRolloverMinutes festgelegte maximale Zeit noch nicht erreicht wurde.
EtlFileRolloverMinutes
Die definierte maximale Zeitspanne in Minuten, die für ein Protokoll verstreichen kann, bevor eine neue ETL-Datei erstellt wird. Wenn der Timer abläuft, wird eine neue Protokolldatei erstellt, auch wenn die in EtlFileRolloverSizeMB festgelegte maximale Größe noch nicht erreicht wurde.
TmfFileSearchPath
Speicherort, an dem nach den Formatdateien für Ablaufverfolgungsmeldungen gesucht wird.
CacheFileLocalFolders
Definierter Pfad zu dem Speicherort, an dem Cachedateien auf Computer geschrieben werden. CLSAgent schreibt die Cachedatei und wird im Kontext des Netzwerkdiensts ausgeführt. In diesem Fall wird %TEMP% zu %WINDIR%\ServiceProfiles\NetworkService\AppData\Local erweitert. Standardmäßig werden Cache- und Protokolldateien in dasselbe Verzeichnis geschrieben.
CacheFileNetworkFolder
Sie können einen UNC-Pfad (Universal Naming Convention) definieren, um die Cachedateien während Protokollierungsvorgängen zu empfangen.
CacheFileLocalRetentionPeriod
Definiert als die Höchstdauer in Tagen, für die Cachedateien beibehalten werden.
CacheFileMaxDiskUsage
Definiert als der prozentuale Anteil des Speicherplatzes, der von den Cachedateien verwendet werden kann.
ComponentThrottleLimit
Definiert als die Höchstzahl an Ablaufverfolgungen pro Sekunde, die eine Komponente erzeugen kann, bevor der automatische Drosselbegrenzer ausgelöst wird.
ComponentThrottleSample
Anzahl der möglichen Überschreitungen von ComponentThrottleLimit in 60 Sekunden.
MinimumClsAgentServiceVersion
Die mindestens erforderliche Version des CLSAgent, die ausgeführt werden kann. Dieses Element ist für Microsoft 365 oder Office 365 vorgesehen.