Compartir a través de


Los informes de Operations Manager no se pueden implementar

Este artículo le ayuda a corregir un problema en el que se produce un error en la implementación de informes de Operations Manager con el identificador de evento 31567.

Se aplica a: System Center Operations Manager
Número de KB original: 4519161

Síntomas

Al instalar System Center 2019 Operations Manager junto con la versión más reciente de SQL Server Reporting Services (SSRS) 2017, los informes de Operations Manager no se implementan.

Al abrir la vista Informes en la consola del operador y seleccionar cualquiera de las carpetas, la lista de informes está vacía. Además, los mensajes de error similares a los siguientes se registran en el registro de eventos de Operations Manager:

Nombre del registro: Operations Manager
Origen: Módulos del servicio de mantenimiento
Fecha: <fecha><y hora>
Identificador de evento: 31567
Categoría de tarea: Data Warehouse
Nivel: Error
Palabras clave: Clásico
Usuario: N/A
Equipo: <FQDN>
Descripción:
No se pudo implementar el componente de informes en el servidor de SQL Server Reporting Services. Se volverá a intentar la operación. Excepción "DeploymentException": no se pudieron implementar informes para el módulo de administración con el identificador dependiente de la versión "ID>"<. System.Web.Services.Protocols.SoapException: Cargar o guardar archivos con . No se permite la extensión CustomConfiguration. Póngase en contacto con el administrador si tiene alguna pregunta. --->
Microsoft.ReportingServices.Diagnostics.Utilities.ResourceFileFormatNotAllowedException: Cargar o guardar archivos con . No se permite la extensión CustomConfiguration. Póngase en contacto con el administrador si tiene alguna pregunta.
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)
Esto afecta a uno o varios flujos de trabajo.
Nombre del flujo de trabajo: Microsoft.SystemCenter.DataWarehouse.Deployment.Report
Nombre de instancia: servicio de sincronización de Data Warehouse
Id. de instancia: {GUID}
Grupo de administración: <Nombre del grupo de administración>

Nota:

Este problema también se produce en la versión 1807 de System Center Operations Manager al actualizar a SSRS 2017 y, a continuación, quitar y volver a instalar Operations Manager Reporting.

Causa

SSRS 2017 versión 14.0.600.1274 y versiones posteriores incluyen una nueva configuración avanzada AllowedResourceExtensionsForUpload. Esta configuración restringe el conjunto de extensiones de archivos de recursos que se pueden cargar en el servidor de informes. Este problema se produce porque Operations Manager Reporting usa extensiones que no se incluyen en el conjunto predeterminado en AllowedResourceExtensionsForUpload.

Solución 1

Agregue *.* a la lista de extensiones autorizadas. Para ello, siga estos pasos:

  1. Inicie SQL Server Management Studio y, a continuación, conéctese a una instancia del servidor de informes que use Operations Manager.
  2. Haga clic con el botón derecho en el nombre de la instancia del servidor de informes, seleccione Propiedades y, a continuación, seleccione Avanzadas.
  3. Busque la configuración AllowedResourceExtensionsForUpload , agregue *.* a la lista de extensiones y, a continuación, seleccione Aceptar.
  4. Reinicie SSRS.

Solución 2

Use el script de PowerShell para agregar las extensiones. Para ello, ejecute el siguiente script de PowerShell:

Nota:

Debe reiniciar SSRS después de ejecutar este script.

$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!'

Nota:

Es posible que tenga que actualizar la $ServiceAddress variable mediante una dirección web válida para el servicio de informes. Es posible que la lista de extensiones del script no sea exhaustiva. Incluya sus propias extensiones según corresponda.