StoreFront

Citrix Workspace-App-Analyse

Wenn Sie Citrix Analytics verwenden, können Sie StoreFront so konfigurieren, dass die Citrix Workspace-App Benutzerereignisse zur Verarbeitung an Citrix Analytics sendet. Citrix Analytics aggregiert Metriken zu Benutzern, Anwendungen, Endpunkten, Netzwerken und Daten, um umfassende Einblicke in das Benutzerverhalten zu liefern. Weitere Informationen zu dieser Funktion in der Citrix Analytics-Dokumentation finden Sie unter Onboard Virtual Apps and Desktops Sites using StoreFront.

So konfigurieren Sie dieses Verhalten:

  • Laden Sie eine Konfigurationsdatei von Citrix Analytics herunter.
  • Importieren Sie Citrix Analytics-Daten mithilfe von PowerShell in Ihre lokale StoreFront-Bereitstellung.

Nachdem StoreFront konfiguriert wurde, kann die Citrix Workspace-App Daten von StoreFront-Stores senden, wenn der Citrix Analytics-Dienst dies anfordert.

Wichtig:

Ihre StoreFront-Bereitstellung muss in der Lage sein, die Citrix API Services zu kontaktieren. Siehe Netzwerkanforderungen für Analytics.

Herunterladen der Konfigurationsdatei von Citrix Analytics

Wichtig:

Für die Erstkonfiguration ist eine Konfigurationsdatei erforderlich, die vertrauliche Informationen enthält. Bewahren Sie die Datei nach dem Herunterladen sicher auf. Geben Sie diese Datei nicht an Personen außerhalb Ihrer Organisation weiter. Nach der Konfiguration können Sie diese Datei löschen. Wenn Sie die Konfiguration auf einem anderen Computer erneut anwenden müssen, können Sie die Datei erneut von der Citrix Analytics-Dienstverwaltungskonsole herunterladen.

  1. Melden Sie sich mit einem Administratorkonto bei Monitor (https://citrix.cloud.com/) an.
  2. Wählen Sie einen Monitor-Kunden aus.
  3. Öffnen Sie die Citrix Analytics-Dienstverwaltungskonsole, indem Sie auf Manage klicken.

    Analytics-Kachel

  4. Wählen Sie in der Citrix Analytics-Dienstverwaltungskonsole Settings > Data Sources aus.
  5. Wählen Sie in der Karte “Virtual App and Desktops” das Menüsymbol () und dann Connect StoreFront deployment aus.
  6. Wählen Sie auf der Seite “Connect StoreFront Deployment” die Option Download File, um die Datei StoreFrontConfigurationFile.json herunterzuladen.

Beispiel-Konfigurationsdatei

{
  "customerId": "<yourcloudcustomer>",
  "enablementService": " https://api.analytics.cloud.com /casvc/<yourcloudcustomer>/ctxana/v1/cas/<yourcloudcustomer>/XenDesktop/<deviceid>/dsconfigdata",
  "cwsServiceKey": "PFJTPn…….. T4=",
  "enablementServiceStatus": " https://api.analytics.cloud.com /casvc/<yourcloudcustomer>/ctxana/v1/cas/storefront/config",
  "instanceId": "d98f21d0-56e0-11e9-ba52-5136d90862fe",
  "name": "CASSingleTenant"
}
<!--NeedCopy-->

Dabei gilt:

customerId ist die eindeutige ID für den aktuellen Monitor-Kunden.

cwsServiceKey ist ein eindeutiger Schlüssel, der das aktuelle Monitor-Kundenkonto identifiziert.

instanceID ist eine generierte ID, die zum Signieren (Sichern) von Anfragen verwendet wird, die von der Citrix Workspace-App an Citrix Analytics gesendet werden. Wenn Sie mehrere StoreFront-Server oder Servergruppen bei Monitor registrieren, hat jeder eine eindeutige instanceID.

Importieren von Citrix Analytics-Daten in Ihre StoreFront™-Bereitstellung

  1. Kopieren Sie die Datei StoreFrontConfigurationFile.json in einen geeigneten Ordner auf dem lokalen StoreFront-Server (oder einem Server in einer StoreFront-Servergruppe). Die folgenden Befehle gehen davon aus, dass die Datei auf dem Desktop gespeichert ist.
  2. Öffnen Sie PowerShell ISE und wählen Sie Als Administrator ausführen.
  3. Führen Sie die folgenden Befehle aus:

    Import-STFCasConfiguration -Path "$Env:UserProfile\Desktop\StoreFrontConfigurationFile.json"
    Get-STFCasConfiguration
    <!--NeedCopy-->
    
  4. Dieser Befehl gibt eine Kopie der importierten Daten zurück und zeigt sie in der PowerShell-Konsole an.

    get stf cas configuration

Hinweis:

Lokale StoreFront-Server, die unter Windows Server 2012 R2 installiert sind, erfordern möglicherweise die manuelle Installation der C++-Laufzeitsoftwarekomponenten, damit sie sich bei CAS registrieren können. Wenn StoreFront während der Installation von Citrix Virtual Apps and Desktops installiert wird, ist dieser Schritt nicht erforderlich, da der CVAD-Metainstaller die C++-Laufzeitkomponenten bereits installiert. Wenn StoreFront nur mit dem Metainstaller CitrixStoreFront-x64.exe ohne die C++-Laufzeit installiert wird, kann die Registrierung bei Monitor nach dem Import der CAS-Konfigurationsdatei fehlschlagen.

Übertragen von Citrix Analytics-Daten an eine StoreFront-Servergruppe

Wenn Sie diese Aktionen in einer StoreFront-Servergruppe ausführen, müssen Sie die importierten Citrix Analytics-Daten an alle Mitglieder der Servergruppe weitergeben. Dieser Schritt ist in einer einzelnen StoreFront-Serverbereitstellung nicht erforderlich.

Um die Daten weiterzugeben, verwenden Sie eine der folgenden Methoden:

  • Verwenden Sie die StoreFront-Verwaltungskonsole.
  • Verwenden Sie das PowerShell-Cmdlet Publish-STFServerGroupConfiguration.

Überprüfen der StoreFront-Servergruppen-ID

Um zu überprüfen, ob Ihre Bereitstellung erfolgreich beim Citrix Analytics-Dienst registriert wurde, können Sie PowerShell verwenden, um die ServerGroupID für Ihre Bereitstellung zu ermitteln.

  1. Melden Sie sich bei Ihrem StoreFront-Server oder bei einem StoreFront-Server in der Servergruppe an.
  2. Öffnen Sie PowerShell ISE und wählen Sie Als Administrator ausführen.
  3. Führen Sie die folgenden Befehle aus:

    $WebConfigPath = "C:\Program Files\Citrix\Receiver StoreFront\Framework\FrameworkData\Framework.xml"
    $XMLObject = (Get-Content $WebConfigPath) -as [Xml]
    $XMLObject.framework.properties.property
    <!--NeedCopy-->
    

    Diese Befehle erzeugen beispielsweise eine Ausgabe wie die folgende:

    name value
    ---- -----
    ClusterId 8b8ff5c8-44ba-46e4-87f0-2df8cff31432
    HostBaseUrl https://storefront.example.com/
    SelectedIISWebSiteId 1
    AdminConsoleOperationMode Full
    <!--NeedCopy-->
    

Beenden des Sendens von Daten an Citrix Analytics von StoreFront

  1. Öffnen Sie PowerShell ISE und wählen Sie Als Administrator ausführen.
  2. Führen Sie die folgenden Befehle aus:

    Remove-STFCasConfiguration

    Get-STFCasConfiguration

    Get-STFCasConfiguration gibt nichts zurück, wenn die zuvor importierten Citrix Analytics-Daten erfolgreich entfernt wurden.

  3. Wenn Sie diese Aktionen in einer StoreFront-Servergruppe ausführen, geben Sie die Änderung weiter und entfernen Sie die importierten Citrix Analytics-Daten von allen Mitgliedern der Servergruppe. Führen Sie auf einem Server in der Servergruppe den folgenden Befehl aus:

    Publish-STFServerGroupConfiguration

  4. Führen Sie auf allen anderen Mitgliedern der Servergruppe den folgenden Befehl aus, um zu bestätigen, dass die Citrix Analytics-Konfiguration erfolgreich von allen Servern in der Gruppe entfernt wurde:

    Get-STFCasConfiguration

  5. Melden Sie sich mit einem Administratorkonto bei Monitor (https://citrix.cloud.com/) an.
  6. Wählen Sie einen Monitor-Kunden aus.
  7. Öffnen Sie die Citrix Analytics-Dienstverwaltungskonsole, indem Sie auf Manage klicken.
  8. Wählen Sie in der Citrix Analytics-Dienstverwaltungskonsole Settings > Data Sources aus.
  9. Wählen Sie in der Karte “Virtual App and Desktops” die Anzahl der StoreFront-Bereitstellungen aus:

    StoreFront-Servergruppen

  10. Identifizieren Sie die StoreFront-Bereitstellung, die Sie entfernen möchten, indem Sie sich auf ihre Host-Basis-URL und ServerGroupID beziehen.
  11. Wählen Sie im Menü () die Option Remove StoreFront deployment from Analytics aus.

    StoreFront-Servergruppen

Hinweis:

Wenn Sie die Konfiguration serverseitig, aber nicht aus Citrix Analytics entfernen, bleibt der StoreFront-Bereitstellungseintrag in Citrix Analytics bestehen, empfängt jedoch keine Daten von StoreFront. Wenn Sie die Konfiguration nur aus Citrix Analytics entfernen, wird der StoreFront-Bereitstellungseintrag beim nächsten App-Pool-Recycle (durchgeführt bei einem IIS-Reset oder automatisch alle 24 Stunden) erneut hinzugefügt.

Konfigurieren von StoreFront zur Verwendung eines Webproxys für die Kontaktaufnahme mit Monitor und die Registrierung bei Citrix Analytics

Wenn StoreFront auf einem Host-Webserver hinter einem Webproxy platziert wird, schlägt die Registrierung bei Citrix Analytics fehl. Wenn StoreFront-Administratoren einen HTTP-Proxy in ihrer Citrix-Bereitstellung verwenden, muss der für das Internet bestimmte StoreFront-Datenverkehr den Webproxy passieren, bevor er Citrix Analytics in der Cloud erreicht. StoreFront verwendet die Proxy-Einstellungen des Host-Betriebssystems nicht automatisch; es ist eine zusätzliche Konfiguration erforderlich, um den Store anzuweisen, ausgehenden Datenverkehr über den Webproxy zu senden. Sie können eine <system.net>-Proxykonfiguration konfigurieren, indem Sie einen neuen Abschnitt zur web.config-Datei des Stores hinzufügen. Tun Sie dies für jeden Store auf dem StoreFront-Server, der zum Senden von Daten an Citrix Analytics verwendet werden soll.

Methode 1: Festlegen der Store-Proxykonfiguration über PowerShell für einen oder mehrere Stores (empfohlen)

Das Ausführen des PowerShell-Skripts Config-StoreProxy.ps1 automatisiert diesen Prozess für einen oder mehrere Stores und fügt automatisch gültiges XML zur Konfiguration von <system.net> ein. Das Skript sichert auch die web.config-Datei des Stores auf dem Desktop des aktuellen Benutzers, sodass die unveränderte web.config-Datei bei Bedarf wiederhergestellt werden kann.

Hinweis:

Das mehrfache Ausführen des Skripts kann dazu führen, dass mehrere Kopien des <system.net>-XML hinzugefügt werden. Jeder Store sollte nur einen einzigen Eintrag für <system.net> haben. Das Hinzufügen mehrerer Kopien verhindert, dass die Store-Proxykonfiguration korrekt funktioniert.

  1. Öffnen Sie PowerShell ISE und wählen Sie Als Administrator ausführen.

  2. Legen Sie $Stores = @("Store","Store2") fest, um die Stores einzuschließen, die Sie mit einem Webproxy konfigurieren möchten.

  3. Geben Sie entweder an:

    • eine IP-Adresse ODER
    • einen FQDN für den Webproxy
  4. Führen Sie das folgende PowerShell-Skript aus:

    $Stores = @("Store","Store2")
    $ProxyIP = "10.0.0.1"
    $ProxyFQDN = "proxyserver.example.com"
    $ProxyPort = 8888
    
    # Set this for every Store using Stores array
    function Set-StoreProxyServer() # Tested with both IP and FQDN
    {
        [CmdletBinding()]
        param([Parameter(Mandatory=$true,ParameterSetName="ProxyIP")][Parameter(Mandatory=$true,ParameterSetName="ProxyFQDN")][array]$Stores,
            [Parameter(Mandatory=$true,ParameterSetName="ProxyIP")][string]$ProxyIP,
            [Parameter(Mandatory=$true,ParameterSetName="ProxyFQDN")][string]$ProxyFQDN,
            [Parameter(Mandatory=$true,ParameterSetName="ProxyIP")][Parameter(Mandatory=$true,ParameterSetName="ProxyFQDN")][int]$ProxyPort)
    
        foreach($Store in $Stores)
        {
            Write-Host "Backing up the Store web.config file for store $Store before making changes..." -ForegroundColor "Yellow"
            Write-Host "`n"
    
            if(!(Test-Path "$env:UserProfile\desktop\$Store\"))
            {
                Write-Host "Creating $env:UserProfile\desktop\$Store\ directory for backup..." -ForegroundColor "Yellow"
                New-Item -Path "$env:UserProfile\desktop\$Store\" -ItemType "Directory" | Out-Null
                Write-Host "`n"
            }
    
            Write-Host "Copying c:\inetpub\wwwroot\Citrix\$Store\web.config to $env:UserProfile\desktop\$Store\..." -ForegroundColor "Yellow"
            Copy-Item -Path "c:\inetpub\wwwroot\Citrix\$Store\web.config" -Destination "$env:UserProfile\desktop\$Store\" -Force | Out-Null
    
            if(Test-Path "$env:UserProfile\desktop\$Store\web.config")
            {
                Write-Host "$env:UserProfile\desktop\$Store\web.config file backed up" -ForegroundColor "Green"
            }
            else
            {
                Write-Host "$env:UserProfile\desktop\$Store\web.config file NOT found!" -ForegroundColor "Red"
            }
            Write-Host "`n"
    
            Write-Host "Setting the proxy server to $ProxyAddress for Store $Store..." -ForegroundColor "Yellow"
            Write-Host "`n"
    
            $StoreConfigPath = "c:\inetpub\wwwroot\Citrix\$Store\web.config"
            $XMLObject = (Get-Content $StoreConfigPath) -as [Xml]
    
            if([string]::IsNullOrEmpty($ProxyFQDN))
            {
                $ProxyServer = ("HTTP://$ProxyIP"+":"+$ProxyPort)
            }
            else
            {
                $ProxyServer = ("HTTP://$ProxyFQDN"+":"+$ProxyPort)
            }
    
            $XMLObject = (Get-Content $StoreConfigPath) -as [Xml]
    
            # Create 3 elements
            $SystemNet = $XMLObject.CreateNode("element","system.net","")
            $DefaultProxy = $XMLObject.CreateNode("element","defaultProxy","")
            $Proxy = $XMLObject.CreateNode("element","proxy","")
            $Proxy.SetAttribute("proxyaddress","$ProxyServer")
            $Proxy.SetAttribute("bypassonlocal","true")
    
            # Move back up the XML tree appending new child items in reverse order
            $DefaultProxy.AppendChild($Proxy)
            $SystemNet.AppendChild($DefaultProxy)
            $XMLObject.configuration.AppendChild($SystemNet)
    
            # Save the modified XML document to disk
            $XMLObject.Save($StoreConfigPath)
    
            Write-Host "Getting the proxy configuration for c:\inetpub\wwwroot\Citrix\$Store..." -ForegroundColor "Yellow"
            $XMLObject = (Get-Content $StoreConfigPath) -as [Xml]
            $ConfiguredProxyServer = $XMLObject.configuration.'system.net'.defaultProxy.proxy.proxyaddress | Out-Null
            Write-Host ("Configured proxy server for Store $Store"+": "+ $ConfiguredProxyServer) -ForegroundColor "Green"
            Write-Host "`n"`
        }
        Write-Host "Restarting IIS..." -ForegroundColor "Yellow"
        IISReset /RESTART
    }
    
    Set-StoreProxyServer -Stores $Stores -ProxyFQDN $ProxyFQDN -ProxyPort $ProxyPort
    # OR
    Set-StoreProxyServer -Stores $Stores -ProxyIP $ProxyIP -ProxyPort $ProxyPort
    <!--NeedCopy-->
    
  5. Überprüfen Sie, ob C:\inetpub\wwwroot\Citrix\<Store>\web.config nun einen <system.net>-Abschnitt am Ende der Datei enthält.

            </dependentAssembly>
        </assemblyBinding>
    </runtime>
    <system.net>
        <defaultProxy>
        <proxy proxyaddress="HTTP://proxyserver.example.com:8888" bypassonlocal="true" />
        </defaultProxy>
    </system.net>
    </configuration>
    <!--NeedCopy-->
    
  6. Importieren Sie die Citrix Analytics-Daten wie unter Importieren von Citrix Analytics-Daten in Ihre StoreFront™-Bereitstellung beschrieben.

Methode 2: Manuelles Hinzufügen eines <system.net>-Abschnitts zur web.config-Datei des Stores

Dies muss für jeden Store auf dem StoreFront-Server erfolgen, der zum Senden von Daten an Citrix Analytics verwendet werden soll.

  1. Sichern Sie die web.config-Datei für den Store und kopieren Sie sie an einen anderen Speicherort außerhalb von C:\inetpub\wwwroot\Citrix\<Store>\web.config.

  2. Ändern Sie das folgende XML mit Ihren Proxy-Einstellungen, entweder unter Verwendung einer FQDN-und-Port-Kombination oder einer IP-und-Port-Kombination.

    Verwenden Sie beispielsweise bei einer FQDN-und-Port-Kombination das folgende <system.net>-Element:

    <system.net>
        <defaultProxy>
        <proxy proxyaddress="HTTP://proxyserver.example.com:8888" bypassonlocal="true" />
        </defaultProxy>
    </system.net>
    <!--NeedCopy-->
    

    Verwenden Sie beispielsweise bei einer IP-und-Port-Kombination das folgende <system.net>-Element:

    <system.net>
        <defaultProxy>
        <proxy proxyaddress="HTTP://10.0.0.1:8888" bypassonlocal="true" />
        </defaultProxy>
    </system.net>
    <!--NeedCopy-->
    
  3. Fügen Sie am Ende der web.config-Datei des Stores das entsprechende <system.net>-Element an der hier angegebenen Stelle ein:

    </dependentAssembly>
        </assemblyBinding>
    </runtime>
    Insert the <system.net> element here
    </configuration>
    <!--NeedCopy-->
    
  4. Importieren Sie die Citrix Analytics-Daten wie unter Importieren von Citrix Analytics-Daten in Ihre StoreFront™-Bereitstellung beschrieben.