SQL Server Reporting Services 管理元件中的監視組態

SQL Server Reporting Services 的管理元件會藉由實作下列工作流程,自動探索 SQL Server Reporting Services 和 Power BI 報表伺服器 的實例:

  • 讀取登錄,以偵測伺服器上是否已安裝 SQL Server Reporting Services 和 Power BI 報表伺服器。 如果已安裝,管理元件會建立種子物件。

  • 如果探索到種子物件,管理元件會讀取這類數據源,例如登錄、WMI、SQL Server Reporting Services 組態檔等等,以探索實例屬性和部署種子物件。

    Deployment Seed 物件是由 System Center Operations Manager 管理伺服器所管理的未裝載物件。 需要適當的許可權才能存取必要的數據源。 如需詳細資訊,請參閱 Reporting Services 執行身分配置檔

探索 SQL Server Reporting Services部署

SQL Server Reporting Services 部署包含下列元件:

  • 一或多個 SQL Server Reporting Services 實例
  • 裝載 Reporting Services 資料庫的 Reporting Services 資料庫和 SQL Server

Reporting Services Database 是一個詞彙,描述伺服器 Reporting Services 所使用的兩個資料庫:

  • 目錄資料庫
  • 暫存資料庫

注意

必須先在 Windows (Discovery) 7.0.20.0 版或更新版本上安裝 Microsoft SQL Server,才能探索伺服器 Reporting Services 部署。 此 MP 檔案是 Windows 傳遞上 適用於 SQL Server 的 Microsoft System Center 管理組件 的一部分。 如果 Windows (Discovery) 上沒有 Microsoft SQL Server,此管理元件將無法探索及監視伺服器 Reporting Services 部署的可用性和效能。 在安裝 Windows SQL Server (Discovery) 的情況下,仍可監視伺服器 Reporting Services。

SQL Server Reporting Services 的管理元件支援不同類型的 SQL Server 安裝。 Reporting Services 資料庫可以部署到:

  • 獨立實例 (具名或預設實例)
  • 叢集實例
  • 可用性群組

針對可用性群組故障轉移,需要大約8小時才能重新探索部署。 因應措施是,您可以暫時變更下列探索的執行間隔:

  • MSSQL Reporting Services: 原生模式部署探索
  • MSSQL Reporting Services: 部署種子探索

若要尋找裝載 Reporting Services Database 的 SQL Server 實例,管理元件會使用 Reporting Services 實例所使用的 連接字串 來連線到資料庫。 支援下列 連接字串 格式:

  • MachineName
  • MachineName\InstanceName
  • IPAddress
  • IPAddress\PortNumber
  • (local)

部署探索會在 System Center Operations Manager 伺服器上執行,並查詢 API 以取得在不同 SQL Server 上探索到的 Reporting Services 實例和資料庫清單。

不僅部署探索會建立新的 Deployment 物件,也會建立新的 部署監看員 物件,這兩個物件都是未裝載的。

SQL Server Reporting Services 向外延展部署是分散式應用程式。 因此,部署物件是由管理伺服器管理。 部署物件的主要用途是結合各種 Reporting Services元件的健康情況狀態,以及將個別 System Center Operations Manager 物件分組。

部署監看員是由安裝在裝載 SQL Server Reporting Services Database 之伺服器上的代理程式所管理的輔助物件,或裝載指定部署中其中一個 Reporting Services 實例的代理程式所管理。 此物件可用來收集 SQL Server Reporting Services 部署的相關信息。

停用指定 SQL Server Reporting Services 版本的監視

SQL Server Reporting Services 的管理元件可讓您排除某些版本的 SQL Server Reporting Services,使其無法監視。

若要排除您不想要監視的版本,請覆寫 MSSQL SQL Server Reporting Services:實例探索 (原生模式 ) 探索中要排除的版本,覆寫要排除之參數的版本。 使用逗號來指定多個版本。

例如,覆寫 “2016,2017” 會指示管理元件略過 SQL Server Reporting Services 2016 和 2017 的實例。

停用指定 SQL Server 版本的監視螢幕快照。

停用指定 SQL Server Reporting Services 版本的監視

SQL Server Reporting Services 的管理元件可讓您排除特定版本的 SQL Server Reporting Services 實例,使其無法監視。

若要排除您不想要監視的版本,請使用您想要排除的版本覆寫 MSSQL Reporting Services:實例探索 (原生模式) 探索,以排除的版本覆寫要排除的 SQL Server 版本。 使用逗號來指定多個版本。

下表列出可用來覆寫要排除參數之 SQL Server 版本的簡短名稱。

簡短名稱 涵蓋的版本
企業 Enterprise Edition,Enterprise Edition:核心型授權
標準 Standard Edition、Business Intelligence Edition
Web Web Edition
開發人員 Developer Edition
快速 Express Edition、具有進階服務的 Express Edition
評估 Enterprise Evaluation Edition

停用指定 SQL Server 版本的監視螢幕快照。

SQL Server Reporting Services元件的可用性

此管理元件引進一組 SQL Server Reporting Services 部署和實例的監視。 這些監視器會從下列觀點驗證可用性:

  • 向外延展部署:
    • 目錄資料庫可供存取
    • 暫存資料庫可供存取
    • 共用數據源沒有中斷的參考
    • 失敗的報表執行數目 (以總報表執行百分比表示,) 低於閾值
    • 探索部署中的所有實例
    • 失敗的訂用帳戶數目
  • 執行個體:
    • 目錄資料庫可供存取
    • 暫存資料庫可供存取
    • Windows 服務已啟動
    • Web 服務可供存取
    • 報表管理員可供存取
    • 實例未使用太多 CPU 資源
    • 實例未使用太多記憶體資源
    • 如果兩個元件都在同一部伺服器上執行,Reporting Services 實例與 SQL Server Database Engine (之間沒有記憶體組態衝突)
    • 其他進程允許足夠的記憶體資源供 Reporting Services 實例使用
    • 每分鐘失敗的報表執行數目低於指定 Reporting Services 實例的臨界值

報表管理員和 Web 伺服器可存取

SQL Server Reporting Services的管理元件支援使用多個端點 URL 監視 Reporting Services Web 服務和報表管理員,以判斷它們是否可用。 根據預設,會使用序列中的第一個URL。 如果您想要使用不同的 URL,您可以藉由將其預設值變更為對應至所需 URL 的值,明確地設定 URL 位置 覆寫。

失敗的訂用帳戶監視

SQL Server Reporting Services 的管理元件支援監視失敗的訂用帳戶和排程的重新整理計劃,並在找到這些警示時產生對應的警示。

若要判斷您是否有失敗的訂用帳戶或方案,監視器會掃描 [訂閱] 數據表中的 LastStatus 數據行。 如需狀態的詳細資訊,請參閱 這篇文章

報表訂閱和排程的重新整理計劃可能會因為各種原因而失敗。 如需造成失敗原因的詳細資訊,請參閱報表入口網站上 我的訂 用帳戶和 Power BI 報告入口網站上 排程的重新整理

執行 Power BI 報表監視

Reporting Services 的管理元件能夠追蹤執行 Power BI 報表所耗用的記憶體數量。 一旦您在 [閾值] 覆寫中定義的臨界值超過 GB () 中指定的覆寫,就會擲回警示。 根據預設,監視器會使用記憶體耗用量中計算的前10個大量記憶體報告。 您可以隨時根據環境喜好設定重新定義這兩個覆寫。

SQL Server Reporting Services 安裝的效能

這個管理組件會收集下列效能度量︰

  • 向外延展部署:
    • 每分鐘的報表執行失敗數目
    • 每分鐘的報表執行數目
    • 報表數目
    • 共用的資料來源數目
    • 訂閱數目
    • 每分鐘的隨選執行失敗數目
    • 每分鐘的隨選執行數目
    • 每分鐘的排定執行失敗數目
    • 每分鐘的排定執行數目
  • 執行個體:
    • CPU 使用率 (%)
    • WorkingSetMaximum (GB)
    • WorkingSetMinimum (GB)
    • 其他處理序耗用的記憶體 (%)
    • SSRS 所耗用的記憶體 (GB)
    • 伺服器上的記憶體總計 (GB)
    • 伺服器上耗用的記憶體總計 (GB)
    • 每分鐘的報表執行失敗數目
    • 每分鐘的報表執行數目
    • Power BI Analysis Services 進程耗用的工作集記憶體 (GB)
    • Power BI Analysis Services 進程耗用的私人記憶體 (GB)
    • Power BI Mashup 容器耗用的工作集記憶體, (GB)
    • Power BI Mashup 容器耗用的私人記憶體 (GB)
    • 在伺服器 (GB) 上執行 Power BI 報表,以總記憶體使用量

安全性實體設定狀態監視器

此監視器會檢查在設定 Reporting Services 執行身分配置檔,ReportServer 資料庫是否可存取每個必要 SQL Server Reporting Services 安全性實體。

以下是目標為 Reporting Services 實例的監視器所檢查的安全性實體完整清單:

  • 目錄檢視的 SELECT 許可權

    • Dbo。ExecutionLog2
  • 數據表的 SELECT 許可權

    • Dbo。鑰匙

以下是以 Reporting Services 部署監看員為目標的監視器所檢查的安全性實體完整清單:

  • 目錄檢視的 SELECT 許可權

    • Dbo。ExecutionLog2
  • 數據表的 SELECT 許可權

    • Dbo。目錄
    • Dbo。DataSource
    • Dbo。訂閱

功能群組

在 System Center Operations Manager 中,群組為物件的邏輯集合,如 Windows 電腦、硬碟或 Microsoft SQL Server 執行個體。 如需群組的詳細資訊,請參閱 建立和管理群組

在 SQL Server Reporting Services 的管理元件中,您可以使用兩個群組,其具有動態成員資格類型:

  • MSSQL Reporting Services: 部署群組

    此群組用來包含所有 Reporting Services Deployment 物件。

  • MSSQL Reporting Services: Power BI 功能群組

    此群組可用來啟用支援此功能的特定 Reporting Services 實例的 Power BI;例如:

    • 執行 Power BI 報表監視器所耗用的記憶體
    • MSSQL Reporting Services: Power BI Mashup 容器耗用的工作集記憶體 (GB) 效能規則
    • MSSQL Reporting Services: Power BI Mashup 容器耗用的私人記憶體 (GB) 效能規則
    • MSSQL Reporting Services: Power BI Analysis Services 進程耗用的工作集記憶體 (GB) 效能規則
    • MSSQL Reporting Services: Power BI Analysis Services 進程耗用的私人記憶體 (GB) 效能規則
    • MSSQL Reporting Services:在伺服器 (GB) 效能規則上執行 Power BI 報表,以總計記憶體使用量

工作概觀

SQL Server Reporting Services 管理元件會針對具有目標實例和部署的某些活動提供工作:

  • 匯出事件記錄檔

    從裝載 SQL Server Reporting Services 實例的計算機或監視 SQL Server Reporting Services 部署的計算機匯出 Windows 事件記錄檔。 標識碼為 4221 的導出來源事件如下:

    • SQL Server 報告 MP 連結庫
    • SQL Server 報告探索MP
    • SQL Server 報告監視MP
    • SQL Server 報告部署
    • SQL Server MP 預設值

    如需詳細資訊,請參閱 匯出事件記錄檔工作

  • 開始 Reporting Services

    您可以從 System Center Operations Manager 工作啟動 SQL Server Reporting Services 實例。

  • 停止 Reporting Services

    SQL Server Reporting Services 實例可由 System Center Operations Manager 的工作停止。

啟用偵錯

在 SQL Server Reporting Services 的管理元件中,您可以在 Windows 事件記錄檔中啟用偵錯,以防您想要調查監視期間可能發生的潛在問題,或查看管理元件工作流程中使用的詳細數據集。

若要啟用偵錯,請執行下列動作:

  1. 開啟 Windows 登錄。

  2. 建立下列金鑰: HKLM:\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\SQL Management Packs\EnableEvtLogDebugOutput\SQL Server Reporting Services MP

  3. 使用對應至您要收集記錄之管理組名的名稱 <MG Name> ,建立 Multi-String。 將 Value 數據 保留空白,以啟用 Operations Manager 事件記錄檔中所有 SQL MP 模組的偵錯記錄。

或使用下列 PowerShell 腳稿,以自動化模式啟用偵錯:

$SCOMRoot = 'HKLM:\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\'
$MPDebugKey = Join-Path -Path $SCOMRoot -ChildPath 'SQL Management Packs\EnableEvtLogDebugOutput\SQL Server Reporting Services MP'
$AgRoot = Join-Path -Path $SCOMRoot -ChildPath 'Agent Management Groups'
$SrvRoot = Join-Path -Path $SCOMRoot -ChildPath 'Server Management Groups'
$searchPath = if (Test-Path $AgRoot) { $AgRoot } else { $SrvRoot }

if (-not(Test-Path $SCOMRoot)) {
    Write-Error 'The Microsoft Operations Manager or Monitoring Agent is not installed.' -ErrorAction Stop
}

if (-not(Test-Path $MPDebugKey)) {
    New-Item -Path $MPDebugKey -Force | Out-Null
}

Get-ChildItem -Path $searchPath |
Out-GridView -OutputMode Multiple | # Remove this line if there is no need for GUI
ForEach-Object {
    New-ItemProperty -LiteralPath $MPDebugKey -Name $_.PSChildName -Value '1' -PropertyType 'MultiString' -Force | Out-Null
}

對於必須啟用擴充記錄的每個 Operations Manager 或監視代理程式,都應該執行相同的作業。 您不需要重新啟動任何服務;會自動套用變更。

停用偵錯

若要停用偵錯,請刪除上述新增的金鑰,或使用下列 PowerShell 腳本停用自動化模式中的偵錯:

$MPDebugKey = 'HKLM:\SOFTWARE\Microsoft\Microsoft Operations Manager\3.0\SQL Management Packs\EnableEvtLogDebugOutput\SQL Server Reporting Services MP'

if (-not(Test-Path $MPDebugKey)) {
    Write-Error 'The Microsoft Operations Manager or Monitoring Agent is not installed.' -ErrorAction Stop
}

(Get-Item -Path $MPDebugKey).property |
Out-GridView -OutputMode Multiple | # Remove this line if there is no need for GUI
ForEach-Object {
    Remove-ItemProperty -LiteralPath $MPDebugKey -Name $_ -Force | Out-Null
}

注意

目前,您只能為所有 SQL MP 模組啟用擴充記錄。 尚不支援個別模組的擴充記錄。

健全狀況的積存方式

下圖顯示 Windows 管理元件上 SQL Server 物件的健康狀態如何匯總。 SQL Server 健全狀況匯總圖。

最佳作法:建立用於自訂的管理組件

管理元件已密封;您無法變更其任何原始設定。 不過,您可以建立自訂,例如覆寫或新的監視物件,並將它們儲存至不同的管理組件。

根據預設,Operations Manager 會將所有自訂儲存至預設管理組件。 最佳做法是,您應該為每個想要自定義的密封管理元件建立個別的管理元件。

建立新的管理組件以儲存覆寫有下列好處:

  • 當您建立管理元件來儲存密封管理元件的自定義設定時,根據您要自定義的管理元件名稱來建立新管理元件的名稱會很有説明;例如,Microsoft SQL Server Reporting Services 覆寫

  • 建立新管理組件來儲存每個未密封管理組件的自訂,可讓您更方便從測試環境將自訂匯出到生產環境。 它也可讓您更輕鬆地刪除管理元件,因為您必須先刪除任何相依性,才能刪除管理元件。 如果所有管理元件的自定義專案都儲存在預設管理元件中,而且您需要刪除單一管理元件,您必須先刪除預設管理元件,這也會刪除其他管理元件的自定義。

如需管理元件自定義和預設管理元件的詳細資訊,請參閱 Operations Manager 管理元件是什麼?