I report di Operations Manager non vengono distribuiti
Questo articolo illustra come risolvere un problema in cui la distribuzione dei report di Operations Manager ha esito negativo con l'ID evento 31567.
Si applica a: System Center Operations Manager
Numero KB originale: 4519161
Sintomi
Quando si installa System Center 2019 Operations Manager insieme alla versione più recente di SQL Server Reporting Services (SSRS) 2017, i report di Operations Manager non vengono distribuiti.
Quando si apre la visualizzazione Report nella Console operatore e si seleziona una delle cartelle, l'elenco dei report è vuoto. In aggiunta, i messaggi di errore simili ai seguenti vengono registrati nel registro eventi di Operations Manager:
Nome del log: Operations Manager
Origine: Moduli del Servizio integrità
Data: <data e><ora>
ID evento: 31567
Categoria attività: Data Warehouse
Livello: Errore
Parole chiave: Classico
Utente: N/D
Computer: <FQDN>
Descrizione:
Impossibile distribuire il componente di report nel server SQL Server Reporting Services. L'operazione verrà ritentata. Eccezione 'DeploymentException': impossibile distribuire i report per il Management Pack con ID dipendente dalla versione '<ID>'. System.Web.Services.Protocols.SoapException: caricamento o salvataggio di file con . L'estensione CustomConfiguration non è consentita. Per eventuali domande, contattare l'amministratore. --->
Microsoft.ReportingServices.Diagnostics.Utilities.ResourceFileFormatNotAllowedException: Caricamento o salvataggio di file con . L'estensione CustomConfiguration non è consentita. Per eventuali domande, contattare l'amministratore.
in Microsoft.ReportingServices.Library.ReportingService2005Impl.CreateResource(String Resource, String Parent, Boolean Overwrite, Byte[] Contents, String MimeType, Property[] Properties, Guid batchId)
in Microsoft.ReportingServices.WebServer.ReportingService2005.CreateResource(String Resource, String Parent, Boolean Overwrite, Byte[] Contents, String MimeType, Property[] Properties)
L'evento ha coinvolto uno o più flussi di lavoro.
Nome flusso di lavoro: Microsoft.SystemCenter.DataWarehouse.Deployment.Report
Nome istanza: Servizio di sincronizzazione del data warehouse
ID istanza: {GUID}
Gruppo di gestione: <Nome gruppo di gestione>
Note
Questo problema si verifica anche in System Center Operations Manager versione 1807 quando si esegue l'aggiornamento a SSRS 2017 e quindi si rimuove e reinstalla Operations Manager Reporting.
Causa
SSRS 2017 versione 14.0.600.1274 e versioni successive includono una nuova impostazione avanzata AllowedResourceExtensionsForUpload. Questa impostazione limita il set di estensioni dei file di risorse che possono essere caricati nel server di report. Questo problema si verifica perché Operations Manager Reporting usa le estensioni che non sono incluse nel set predefinito in AllowedResourceExtensionsForUpload.
Risoluzione 1
Aggiungere *.*
all'elenco delle estensioni autorizzate. A tale scopo, effettuare i passaggi seguenti:
- Avviare SQL Server Management Studio e quindi connettersi a un'istanza del server di report usata da Operations Manager.
- Fare clic con il pulsante destro del mouse sul nome dell'istanza del server di report, scegliere Proprietà e quindi selezionare Avanzate.
- Individuare l'impostazione AllowedResourceExtensionsForUpload , aggiungere
*.*
all'elenco delle estensioni e quindi selezionare OK. - Riavviare SSRS.
Risoluzione 2
Usare lo script di PowerShell per aggiungere le estensioni. A tale scopo, eseguire lo script di PowerShell seguente:
Note
È necessario riavviare SSRS dopo l'esecuzione di questo 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!'
Note
Potrebbe essere necessario aggiornare la $ServiceAddress
variabile usando un indirizzo Web valido per il servizio di report. L'elenco delle estensioni nello script potrebbe non essere esaustivo. Includere le estensioni personalizzate in base alle esigenze.