Anfügen eines Profilers

In diesem Artikel wird beschrieben, wie Sie einen Profiler anfügen und wie Sie die Ausgabedateien abrufen können. Ein Profiler wird verwendet, um Probleme im Zusammenhang mit Grafiken und der Leistung Ihrer Spieleserver zu debuggen. Um Tools wie dotnet trace oder PIX verwenden zu können, müssen Sie zuerst Den Profiler Ihrer Wahl hochladen. Anschließend ordnen Sie es einem Build zu, und die Ausgabedateien werden in Ihrem Protokollordner abgelegt.

Es wird nicht empfohlen, einen Profiler an Produktionsbuilds anzufügen, da sich dies auf die Leistung auswirken kann. Die Einrichtung für das Anfügen eines Profilers muss bei der Builderstellung erfolgen. Das Anfügen eines Profilers über Game Manager wird derzeit nicht unterstützt, sodass Sie einen Build mithilfe unserer APIs erstellen müssen. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Bereitstellen von Builds mithilfe von PowerShell/API.

Wenn Sie einen Build erstellen, befindet sich unter der Überwachungskonfiguration ein Feld für den Ressourcenverweis. Schließen Sie den Ressourcenverweis in die Überwachungskonfiguration ein. Stellen Sie sicher, dass Ihr Medienobjekt in Game Manager hochgeladen wurde. Weitere Informationen finden Sie unter Verwalten von Ressourcen in der Buildübersicht.

Für einen Linux-Server finden Sie unten ein Beispiel für ein Ausführungsskript für den Profiler.

sighdl()
{
    #This is the folder the monitoring output should be written to.
    monitoring_folder_path = "${PF_MONITORING_LOG_FOLDER}"

    #Code to end monitoring and copy the output 

    exit 0
}

#set up the trap function to catch the signals and exit gracefully
trap sighdl SIGKILL SIGINT SIGTERM
sleep 3600

Für einen Windows-Server finden Sie unten ein Beispiel für ein Ausführungsskript für den Profiler.

#Sample function that checks for the sentinel file's existence in order to end.
function Check_Sentinel_File()
{
    $fullPath = $Env:PF_SENTINEL_FILE
    while(!(Test-Path $fullPath)) { Start-Sleep 10}

    #PF_MONITORING_LOG_FOLDER contains the log folder where the monitoring output should be saved
    
    $outputPath = "{0}/{1}" -f $Env:PF_MONITORING_LOG_FOLDER, "output.txt"
    "I've died!" | Out-File $outputPath 
}

Check_Sentinel_File
  • Stellen Sie sicher, dass Sie die Ausgabe in dem Ordner speichern, der für die umgebungsvariable PF_MONITORING_LOG_FOLDER festgelegt ist, da dadurch sichergestellt wird, dass Ihre Ausgabe gespeichert wird.
  • Nachdem der Server archiviert wurde, können Sie die Protokolle herunterladen. Darin finden Sie einen Ordner namens PlayfabProfilingOutput. Dies enthält das, was Sie in Ihrem Ausführungsskript geschrieben haben, sowie alle Standardausgaben und -fehler.