Freigeben über


Operations Manager-Berichte können nicht bereitgestellt werden

Dieser Artikel hilft Ihnen, ein Problem zu beheben, bei dem die Bereitstellung von Operations Manager-Berichten mit der Ereignis-ID 31567 fehlschlägt.

Gilt für: System Center Operations Manager
Ursprüngliche KB-Nummer: 4519161

Problembeschreibung

Wenn Sie System Center 2019 Operations Manager zusammen mit der neuesten Version von SSRS 2017 (SQL Server Reporting Services) installieren, werden Operations Manager-Berichte nicht bereitgestellt.

Wenn Sie die Berichtsansicht in der Operations-Konsole öffnen und einen der Ordner auswählen, ist die Liste der Berichte leer. Darüber hinaus werden im Operations Manager-Ereignisprotokoll Fehlermeldungen protokolliert, die in etwa wie folgt aussehen:

Protokollname: Operations Manager
Quelle: Integritätsdienstmodule
Datum: <Datumszeit><>
Ereignis-ID: 31567
Aufgabenkategorie: Data Warehouse
Ebene: Fehler
Schlüsselwörter: Klassisch
Benutzer: N/V
Computer: <FQDN>
Beschreibung:
Fehler beim Bereitstellen der Berichtskomponente auf dem SQL Server Reporting Services-Server. Der Vorgang wird erneut versucht. Ausnahme 'DeploymentException': Fehler beim Bereitstellen von Berichten für das Management Pack mit versionsabhängiger ID '<ID>'. System.Web.Services.Protocols.SoapException: Hochladen oder Speichern von Dateien mit . CustomConfiguration-Erweiterung ist nicht zulässig. Wenden Sie sich an Ihren Administrator, wenn Sie Fragen haben. --->
Microsoft.ReportingServices.Diagnostics.Utilities.ResourceFileFormatNotAllowedException: Hochladen oder Speichern von Dateien mit . CustomConfiguration-Erweiterung ist nicht zulässig. Wenden Sie sich an Ihren Administrator, wenn Sie Fragen haben.
at Microsoft.ReportingServices.Library.ReportingService2005Impl.CreateResource(String Resource, String Parent, Boolean Overwrite, Byte[] Contents, String MimeType, Property[] Properties, Guid batchId)
at Microsoft.ReportingServices.WebServer.ReportingService2005.CreateResource(String Resource, String Parent, Boolean Overwrite, Byte[] Contents, String MimeType, Property[] Properties)
Ein oder mehrere Workflows waren hiervon betroffen.
Workflowname: Microsoft.SystemCenter.DataWarehouse.Deployment.Report
Instanzname: Data Warehouse-Synchronisierungsdienst
Instanz-ID: {GUID}
Verwaltungsgruppe: <Verwaltungsgruppenname>

Notiz

Dieses Problem tritt auch in System Center Operations Manager, Version 1807, auf, wenn Sie ein Upgrade auf SSRS 2017 durchführen, und anschließend die Operations Manager-Berichterstellung entfernen und erneut installieren.

Ursache

SSRS 2017, Version 14.0.600.1274 und höhere Versionen, enthalten eine neue erweiterte Einstellung AllowedResourceExtensionsForUpload. Diese Einstellung beschränkt die Gruppe von Erweiterungen der Ressourcendateien, die auf den Berichtsserver hochgeladen werden können. Dieses Problem tritt auf, da von der Operations Manager-Berichterstellung Erweiterungen verwendet werden, die standardmäßig nicht in AllowedResourceExtensionsForUpload enthalten sind.

Lösung 1

Fügen Sie der Liste der autorisierten Erweiterungen hinzu *.* . Gehen Sie dazu wie folgt vor:

  1. Starten Sie SQL Server Management Studio, und stellen Sie dann eine Verbindung mit einer Berichtsserverinstanz her, die Operations Manager verwendet.
  2. Klicken Sie mit der rechten Maustaste auf den Namen der Berichtsserverinstanz, wählen Sie "Eigenschaften" aus, und wählen Sie dann "Erweitert" aus.
  3. Suchen Sie die Einstellung AllowedResourceExtensionsForUpload , fügen Sie der Liste der Erweiterungen hinzu *.* , und wählen Sie dann OK aus.
  4. Starten Sie SSRS neu.

Lösung 2

Verwenden Sie das PowerShell-Skript, um die Erweiterungen hinzuzufügen. Führen Sie hierzu das folgende PowerShell-Skript aus:

Notiz

Sie müssen SSRS nach dem Ausführen dieses Skripts neu starten.

$ServiceAddress = 'http://localhost'

$ExtensionAdd = @(
	'*'
	'CustomConfiguration'
	'Report'
	'AvailabilityMonitor'
	'TopNApplications'
	'Settings'
	'License'
	'ServiceLevelTrackingSummary'
	'CustomPerformance'
	'MostCommonEvents'
	'PerformanceTop'
	'Detail'
	'DatabaseSettings'
	'ServiceLevelObjectiveDetail'
	'PerformanceDetail'
	'ConfigurationChange'
	'TopNErrorGroupsGrowth'
	'AvailabilityTime'
	'rpdl'
	'mp'
	'TopNErrorGroups'
	'Downtime'
	'TopNApplicationsGrowth'
	'DisplayStrings'
	'Space'
	'Override'
	'Performance'
	'AlertDetail'
	'ManagementPackODR'
	'AlertsPerDay'
	'EventTemplate'
	'ManagementGroup'
	'Alert'
	'EventAnalysis'
	'MostCommonAlerts'
	'Availability'
	'AlertLoggingLatency'
	'PerformanceTopInstance'
	'rdl'
	'PerformanceBySystem'
	'InstallUpdateScript'
	'PerformanceByUtilization'
	'DropScript'
)

Write-Output 'Setting Allowed Resource Extensions for Upload'
$error.clear()
try
{
	$Uri = [System.Uri]"$ServiceAddress/ReportServer/ReportService2010.asmx"
	$Proxy = New-WebServiceProxy -Uri $Uri -UseDefaultCredential
	$Type = $Proxy.GetType().Namespace + '.Property'
	
	$Property = New-Object -TypeName $Type
	$Property.Name = 'AllowedResourceExtensionsForUpload'

	$ValueAdd = $ExtensionAdd | ForEach-Object -Process {
		"*.$psItem"
	}	

	$Current = $Proxy.GetSystemProperties($Property)
	if ($Current)
    {
	$ValueCurrent = $Current.Value -split ','
	$ValueSet = $ValueCurrent + $ValueAdd | Sort-Object -Unique
	}
	else
    {
        $ValueSet = $ValueAdd | Sort-Object -Unique
    }

	
	$Property.Value = $ValueSet -join ','
	
	$Proxy.SetSystemProperties($Property)
    Write-Output '  Successfully set property to: *.*'
}
catch
{
	Write-Warning "Failure occurred: $error"
}
Write-Output 'Script completed!'

Notiz

Möglicherweise müssen Sie die $ServiceAddress Variable mithilfe einer gültigen Webadresse auf Ihren Berichtsdienst aktualisieren. Die Liste der Erweiterungen im Skript darf nicht erschöpfend sein. Schließen Sie ihre eigenen Erweiterungen entsprechend ein.