적용 대상:
SQL Server 2019 및 이전 Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
중요합니다
데이터 마이닝은 SQL Server 2017 Analysis Services에서 더 이상 사용되지 않으며 이제 SQL Server 2022 Analysis Services에서 중단되었습니다. 더 이상 사용되지 않고 중단된 기능에 대한 설명서는 업데이트되지 않습니다. 자세한 내용은 Analysis Services 이전 버전과의 호환성을 참조하세요.
서비스와 데이터가 작동하는지 확인하는 견고한 확인 테스트 통과 없이는 SharePoint용 파워 피벗 설치 또는 복구 작업이 완료되지 않습니다. 이 문서에서는 Windows PowerShell을 사용하여 이러한 단계를 수행하는 방법을 보여 줍니다. 특정 작업으로 바로 진행할 수 있도록 각 단계를 자체 섹션에 배치합니다. 예를 들어 이 항목의 데이터베이스 섹션에서 스크립트를 실행하여 유지 관리 또는 백업을 예약하려는 경우 서비스 애플리케이션 및 콘텐츠 데이터베이스의 이름을 확인합니다.
전체 PowerShell 스크립트는 항목의 맨 아래에 포함되어 있습니다. 전체 스크립트를 시작점으로 사용하여 전체 SharePoint용 파워 피벗 배포를 감사하기 위한 사용자 지정 스크립트를 빌드합니다.
PowerShell 환경 준비
이 섹션의 단계에서는 PowerShell 환경을 준비합니다. 스크립팅 환경이 현재 구성된 방식에 따라 단계가 필요하지 않을 수 있습니다.
PowerShell 권한
관리자 권한으로 PowerShell 창 또는 PowerShell ISE(통합 스크립팅 환경)를 엽니다. 명령을 실행할 때 관리 권한이 없는 경우 다음과 유사한 오류 메시지가 표시됩니다.
Get-SPLogEvent: 이 cmdlet을 실행하려면 컴퓨터 관리자 권한이 있어야 합니다.
SharePoint 및 SharePoint용 파워 피벗 모듈
SharePoint 관련 cmdlet을 실행할 때 다음과 유사한 오류 메시지가 표시되면 Add-PSSnapin 명령을 실행합니다.
'Get-PowerPivotSystemService'라는 용어 는 cmdlet, 함수, 스크립트 파일 또는 작동 가능한 프로그램의 이름으로 인식되지 않습니다. 이름의 철자를 확인하거나 경로가 포함된 경우 경로가 올바른지 확인하고 다시 시도합니다.
Add-PSSnapin Microsoft.Sharepoint.Powershell -EA 0
Windows PowerShell
필요에 따라 파워피벗 관리 대시보드를 사용하여 중앙 관리에서 대부분의 구성 요소를 확인할 수 있습니다. 중앙 관리에서 대시보드를 열려면 일반 애플리케이션 설정을 클릭한 다음 파워 피벗에서 관리 대시보드를 클릭합니다. 대시보드에 대한 자세한 내용은 Power Pivot 관리 대시보드 및 사용량 현황 데이터를 참조하세요.
증상 및 권장 작업
다음 표에는 증상 또는 문제 목록과 문제를 해결하는 데 도움이 되도록 이 항목의 제안된 섹션이 나와 있습니다.
| 증상 | 섹션 참조 |
|---|---|
| 데이터 새로 고침이 실행되고 있지 않습니다. | 타이머 작업 섹션을 참조하고 온라인 파워 피벗 데이터 새로 고침 타이머 작업이 온라인 상태인지 확인합니다. |
| 관리 대시보드 데이터가 오래되었습니다. | 타이머 작업 섹션을 참조하고 관리 대시보드 처리 타이머 작업이 온라인 상태인지 확인합니다. |
| 관리 대시보드의 일부 | Excel Services 또는 SharePoint용 파워 피벗 없이 중앙 관리 토폴로지를 포함하는 팜에 SharePoint용 파워 피벗을 설치하는 경우 Power Pivot 관리 대시보드의 기본 제공 보고서에 대한 모든 권한을 원하는 경우 Microsoft ADOMD.NET 클라이언트 라이브러리를 다운로드하여 설치해야 합니다. 대시보드의 일부 보고서는 ADOMD.NET 사용하여 팜의 파워 피벗 쿼리 처리 및 서버 상태에 대한 보고 데이터를 제공하는 내부 데이터에 액세스합니다. |
Analysis Services Windows 서비스
이 섹션의 스크립트는 SharePoint 모드에서 SQL Server Analysis Services 인스턴스를 확인합니다. 서비스가 실행 중인지 확인합니다.
get-service | select name, displayname, status | where {$_.Name -eq "msolap`$powerpivot"} | format-table -property * -autosize | out-default
예제 출력
Name DisplayName Status
---- ----------- ------
MSOLAP$POWERPIVOT SQL Server Analysis Services (POWERPIVOT) Running
PowerPivotSystemService 및 PowerPivotEngineService
이 섹션의 스크립트는 SharePoint 시스템 서비스에 대한 파워 피벗을 확인합니다. SharePoint 2013 배포를 위한 하나의 시스템 서비스와 SharePoint 2010 배포용 두 개의 서비스가 있습니다.
PowerPivotSystemService
상태가 온라인 상태인지 확인합니다.
Get-PowerPivotSystemService | select typename, status, applications, farm | format-table -property * -autosize | out-default
예제 출력
TypeName Status Applications Farm
-------- ------ ------------ ----
SQL Server PowerPivot Service Application Online {Default PowerPivot Service Application} SPFarm Name=SharePoint_Config_77d8ab0744a34e8aa27c806a2b8c760c
PowerPivotEngineService
비고
SharePoint 2013을 사용 중인 경우 이 스크립트를 건너뛰십시오. PowerPivotEngineService는 SharePoint 2013 배포의 일부가 아닙니다. SharePoint 2013에서 Get-PowerPivotEngineService cmdlet을 실행하면 다음과 유사한 오류 메시지가 표시됩니다. 이 오류 메시지는 이 항목의 필수 구성 요소 섹션에 설명된 Add-PSSnapin 명령을 실행한 경우에도 반환됩니다.
'Get-PowerPivotEngineService'라는 용어는 cmdlet의 이름으로 인식되지 않습니다.
SharePoint 2010 배포에서 상태가 Online인지 확인합니다.
Get-PowerPivotEngineService | select typename, status, name, instances, farm | format-table -property * -autosize | out-default
예제 출력
TypeName : SQL Server Analysis Services
Status : Online
Name : MSOLAP$POWERPIVOT
Instances : {POWERPIVOT}
Farm : SPFarm Name=SharePoint_Config
Power Pivot 서비스 애플리케이션 및 프록시
상태가 온라인인지 확인합니다. Excel Services 애플리케이션은 서비스 응용 프로그램 데이터베이스를 사용하지 않으므로 cmdlet은 데이터베이스 이름을 반환하지 않습니다. 이 항목의 뒷부분에 있는 데이터베이스 섹션에서 데이터베이스가 온라인 상태인지 확인할 수 있도록 Power Pivot 서비스 애플리케이션에서 사용하는 데이터베이스를 확인합니다.
Power Pivot 및 Excel 서비스 응용 프로그램
SharePoint 2010 배포의 경우 상태가 Online인지 확인합니다.
Get-PowerPivotServiceApplication | select typename,name, status, unattendedaccount, applicationpool, farm, database
Get-SPExcelServiceApplication | select typename, DisplayName, status
예제 출력
TypeName : PowerPivot Service Application
Name : PowerPivotServiceApplication1
Status : Online
UnattendedAccount : PowerPivotUnattendedAccount
ApplicationPool : SPIisWebServiceApplicationPool Name=sqlbi_serviceapp
Farm : SPFarm Name=SharePoint_Config
Database : GeminiServiceDatabase Name=PowerPivotServiceApplication1_19648f3f2c944e27acdc6c20aab8487a
TypeName : Excel Services Application Web Service Application
DisplayName : Excel Services Application
Status : Online
서비스 애플리케이션 풀
비고
다음 코드 샘플에서는 먼저 SharePoint 서비스 응용 프로그램의 기본 Power Pivot의 applicationpool 속성을 반환합니다. 이름은 문자열에서 구문 분석되어 애플리케이션 풀의 상태를 가져오는 데 사용됩니다.
상태가 온라인 상태인지 확인합니다. 상태가 온라인 상태가 아니거나 Power Pivot 사이트를 탐색할 때 "http 오류"가 표시되는 경우 IIS 애플리케이션 풀의 ID 자격 증명이 여전히 올바른지 확인합니다. IIS 풀 이름은 Get-SPServiceApplicationPool 명령에서 반환된 ID 속성의 값입니다.
$poolname=[string](Get-PowerPivotServiceApplication | select -property applicationpool)
$position=$poolname.lastindexof("=")
$poolname=$poolname.substring($position+1)
$poolname=$poolname.substring(0,$poolname.length-1)
Get-SPServiceApplicationPool | select name, status, processaccountname, id | where {$_.Name -eq $poolname} | format-table -property * -autosize | out-default
예제 출력
Name Status ProcessAccountName Id
---- ------ ------------------ -------
SharePoint Web Services System Online DOMAIN\account 89b50ec3-49e3-4de7-881a-2cec4b8b73ea
: 애플리케이션 풀은 중앙 관리 페이지 서비스 애플리케이션 관리에서 확인할 수도 있습니다. 서비스 애플리케이션의 이름을 클릭한 다음 리본에서 속성을 클릭합니다.
Power Pivot 및 Excel 서비스 응용 프로그램 프록시
상태가 온라인 상태인지 확인합니다.
Get-SPServiceApplicationProxy | select typename, status, unattendedaccount, displayname | where {$_.TypeName -like "*powerpivot*" -or $_.TypeName -like "*excel services*"} | format-table -property * -autosize | out-default
예제 출력
TypeName Status UnattendedAccount DisplayName
-------- ------ ----------------- -----------
PowerPivot Service Application Proxy Online PowerPivotUnattendedAccount PowerPivotServiceApplication1
Excel Services Application Web Service Application Proxy Online Excel Services Application
Databases
다음 스크립트는 서비스 애플리케이션 데이터베이스 및 모든 콘텐츠 데이터베이스의 상태를 반환합니다. 상태가 온라인인지 확인합니다.
Get-SPDatabase | select name, status, server, typename | where {$_.TypeName -eq "content database" -or $_.TypeName -like "*Gemini*"} | format-table -property * -autosize | out-default
예제 출력
Name Status Server TypeName
---- ------ ------ --------
DefaultPowerPivotServiceApplicationDB-38422181-2b68-4ab2-b2bb-9c00c39e5a5e Online SPServer Name=TESTSERVER Microsoft.AnalysisServices.SPAddin.GeminiServiceDatabase
DefaultWebApplicationDB-f0db1a8e-4c22-408c-b9b9-153bd74b0312 Online TESTSERVER\POWERPIVOT Content Database
SharePoint_Admin_3cadf0b098bf49e0bb15abd487f5c684 Online TESTSERVER\POWERPIVOT Content Database
SharePoint 기능
사이트, 웹 및 팜 기능이 온라인인지 확인합니다.
Get-SPFeature | select displayname, status, scope, farm | where {$_.displayName -like "*powerpivot*"} | format-table -property * -autosize | out-default
예제 출력
DisplayName Status Scope Farm
----------- ------ ----- ----
PowerPivotSite Online Site SPFarm Name=SharePoint_Config
PowerPivotAdmin Online Web SPFarm Name=SharePoint_Config
PowerPivot Online Farm SPFarm Name=SharePoint_Config
타이머 작업
시간 작업이 온라인인지 확인하십시오. Power Pivot EngineService는 SharePoint 2013에 설치되어 있지 않으므로 스크립트는 SharePoint 2013 배포에서 EngineService 타이머 작업을 나열하지 않습니다.
Get-SPTimerJob | where {$_.service -like "*power*" -or $_.service -like "*mid*"} | select status, displayname, LastRunTime, service | format-table -property * -autosize | out-default
예제 출력
Status DisplayName LastRunTime Service
------ ----------- ----------- -------
Online Health Analysis Job (Daily, SQL Server Analysis Services, All Servers) 4/9/2014 12:00:01 AM EngineService Name=MSOLAP$POWERPIVOT
Online Health Analysis Job (Hourly, SQL Server Analysis Services, All Servers) 4/9/2014 1:00:01 PM EngineService Name=MSOLAP$POWERPIVOT
Online Health Analysis Job (Weekly, SQL Server Analysis Services, All Servers) 4/6/2014 12:00:10 AM EngineService Name=MSOLAP$POWERPIVOT
Online PowerPivot Management Dashboard Processing Timer Job 4/8/2014 3:45:38 AM MidTierService
Online PowerPivot Health Statistics Collector Timer Job 4/9/2014 1:00:12 PM MidTierService
Online PowerPivot Data Refresh Timer Job 4/9/2014 1:09:36 PM MidTierService
Online Health Analysis Job (Daily, SQL Server PowerPivot Service Application, All Servers) 4/9/2014 12:00:00 AM MidTierService
Online Health Analysis Job (Daily, SQL Server PowerPivot Service Application, Any Server) 4/9/2014 12:00:00 AM MidTierService
Online Health Analysis Job (Weekly, SQL Server PowerPivot Service Application, All Servers) 4/6/2014 12:00:03 AM MidTierService
Online Health Analysis Job (Weekly, SQL Server PowerPivot Service Application, Any Server) 4/6/2014 12:00:03 AM MidTierService
Online PowerPivot Setup Extension Timer Job 4/1/2014 1:40:31 AM MidTierService
건강 수칙
SharePoint 2013 배포에는 더 적은 규칙이 있습니다. 각 SharePoint 환경에 대한 규칙의 전체 목록과 규칙을 사용하는 방법에 대한 설명은 파워 피벗 상태 규칙 구성을 참조하세요.
Get-SPHealthAnalysisRule | select name, enabled, summary | where {$_.summary -like "*power*"} | format-table -property * -autosize | out-default
예제 출력
Name Enabled Summary
---- ------- -------
SecondaryLogonHealthRule True PowerPivot: Secondary Logon service (seclogon) is disabled
DataRefreshTimerJobHealthRule True PowerPivot: The PowerPivot Data Refresh timer job is disabled.
ASUsageLoadHealthRule True PowerPivot: The ratio of load events to connections is too high.
ASMiniDumpHealthRule True PowerPivot: One or more minidump files were found in the Logs directory, indicating a program crash
ASUsageCubeRule True PowerPivot: Usage data is not getting updated at the expected frequency.
ASADOMDNETHealthRule True PowerPivot: ADOMD.NET is not installed on a standalone WFE that is configured for central admin
MidTierAcctReadPermissionRule True PowerPivot: MidTier process account should have 'Full Read' permission on all associated SPWebApplications.
Windows 및 ULS 로그
Windows 이벤트 로그
다음 명령은 Windows 이벤트 로그에서 SharePoint 모드의 SQL Server Analysis Services 인스턴스와 관련된 이벤트를 검색합니다. 이벤트를 사용하지 않도록 설정하거나 이벤트 수준을 변경하는 방법에 대한 자세한 내용은 SharePoint 로그 파일 및 진단 로깅 구성 및 보기(SharePoint용 파워 피벗)를 참조하세요.
서비스 이름: MSOLAP$POWERPIVOT
Windows 서비스의 표시 이름: SQL Server Analysis Services(POWERPIVOT)
Get-EventLog "application" | Where-Object {$_.source -like "msolap`$powerpivot*"} |select timegenerated, entrytype , source, message | format-table -property * -autosize | out-default
예제 출력
TimeGenerated EntryType Source Message
------------- --------- ------ -------
4/16/2014 1:45:19 PM Information MSOLAP$POWERPIVOT Software usage metrics are disabled.
4/16/2014 1:45:19 PM Information MSOLAP$POWERPIVOT Service started. Microsoft SQL Server Analysis Services 64 Bit Evaluation (x64) RTM 12.0.1997.5.
4/16/2014 1:45:18 PM Information MSOLAP$POWERPIVOT The flight recorder was started.
4/14/2014 6:45:37 PM Information MSOLAP$POWERPIVOT Software usage metrics are disabled.
SharePoint ULS 로그, 지난 48시간
다음 명령은 지난 48시간 동안 생성된 ULS 로그에서 파워 피벗 메시지를 반환합니다. 필요에 따라 addhours 매개 변수를 조정합니다.
Get-SPLogEvent -starttime(get-date).addhours(-48) | Where-Object {$_.Area -eq "powerpivot service" -and $_.level -eq "high"} | select timestamp, area, category, eventid,level, message| format-table -property * -autosize | out-default
명령의 다음 변형은 데이터 새로 고침 범주에 대한 로그 이벤트만 반환합니다.
Get-SPLogEvent -starttime(get-date).addhours(-48) | Where-Object {$_.category -eq "data refresh" -and $_.level -eq "high"} | select timestamp, area, category, eventid, level, correlation, message
예제 출력
Timestamp : 4/14/2014 7:15:01 PM
Area : PowerPivot Service
Category : Data Refresh
EventID : 43
Level : High
Correlation : 5755879c-7cab-e097-8f80-f27895d44a77
Message : The following error occured when working with the service application, Default PowerPivot Service Application. Skipping the service application..
Timestamp : 4/14/2014 7:15:02 PM
Area : PowerPivot Service
Category : Data Refresh
EventID : 99
Level : High
Correlation : 5755879c-7cab-e097-8f80-f27895d44a77
Message : EXCEPTION: System.TimeoutException: The request channel timed out while waiting for a reply after 00:00:47.0625313. Increase the timeout value passed to
the call to Request or increase the SendTimeout value on the Binding. The time allotted to this operation may have been a portion of a longer timeout.
---> System.TimeoutException: The HTTP request to 'http://localhost:32843/SecurityTokenServiceApplication/securitytoken.svc/actas' has exceeded the
allotted timeout of 00:00:54.5930000. The time allotted to this operation may have been a portion of a longer timeout. ---> System.Net.WebException: The
operation has timed out at System.Net.HttpWebRequest.GetResponse() at
System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.HttpChannelRequest.WaitForReply(TimeSpan timeout...
MSOLAP 공급자
공급자 MSOLAP 공급자를 확인합니다. SQL Server 2012(11.x) 및 SQL Server 2014(12.x) 파워 피벗에는 MSOLAP.5가 필요합니다.
$excelApp=Get-SPExcelServiceApplication
get-spexceldataprovider -ExcelServiceApplication $excelApp |select providerid,providertype,description | where {$_.providerid -like "msolap*" } | format-table -property * -autosize | out-default
예제 출력
ProviderId ProviderType Description
---------- ------------ -----------
MSOLAP Oledb Microsoft OLE DB Provider for OLAP Services
MSOLAP.3 Oledb Microsoft OLE DB Provider for OLAP Services 9.0
MSOLAP.4 Oledb Microsoft OLE DB Provider for OLAP Services 10.0
MSOLAP.5 Oledb Microsoft OLE DB Provider for OLAP Services 11.0
ADOMD.Net 클라이언트 라이브러리
get-wmiobject -class win32_product | Where-Object {$_.name -like "*ado*"} | select name, version, vendor | format-table -property * -autosize | out-default
예제 출력
name version vendor
---- ------- ------
Microsoft SQL Server 2008 Analysis Services ADOMD.NET 10.1.2531.0 Microsoft Corporation
Microsoft SQL Server 2005 Analysis Services ADOMD.NET 9.00.1399.06 Microsoft Corporation
건강 데이터 수집 규칙
상태가 온라인이고 사용이 True인지 확인합니다.
get-spusagedefinition | select name, status, enabled, tablename, DaysToKeepDetailedData | where {$_.name -like "powerpivot*"} | format-table -property * -autosize | out-default
예제 출력
Name Status Enabled TableName DaysToKeepDetailedData
---- ------ ------- --------- ----------------------
PowerPivot Connections OnlineTrue AnalysisServicesConnections 14
PowerPivot Load Data Usage Online True AnalysisServicesLoads 14
PowerPivot Query Usage Online True AnalysisServicesRequests 14
PowerPivot Unload Data Usage Online True AnalysisServicesUnloads 14
자세한 내용은 Power Pivot 사용량 현황 데이터 수집을 참조하세요.
Solutions
다른 구성 요소가 온라인인 경우 솔루션 확인을 건너뛸 수 있습니다. 그러나 보건 규칙이 누락된 경우 다음의 두 솔루션이 존재하는지와 두 개의 파워 피벗 솔루션이 온라인 및 배포되었는지 확인합니다.
get-spsolution | select name, status, deployed, DeploymentState, DeployedServers | where {$_.Name -like "*powerpivot*"} | format-table -property * -autosize | out-default
SharePoint 2013 예제 출력
Name Status Deployed DeploymentState DeployedServers
---- ------ -------- --------------- ---------------
powerpivotfarm14solution.wsp Online True GlobalDeployed {UETESTA00}
powerpivotfarmsolution.wsp Online True GlobalDeployed {UETESTA00}
powerpivotwebapplicationsolution.wsp Online True WebApplicationDeployed {UETESTA00}
SharePoint 2010 예제 출력
Name Status Deployed DeploymentState DeployedServers
---- ------ -------- --------------- ---------------
powerpivotfarm.wsp Online True GlobalDeployed {uesql11spoint2}
powerpivotwebapp.wsp Online True WebApplicationDeployed {uesql11spoint2}
SharePoint 솔루션을 배포하는 방법에 대한 자세한 내용은 솔루션 패키지 배포(SharePoint Server 2010)를 참조하세요.
수동 확인 단계
이 섹션에서는 PowerShell cmdlet으로 완료할 수 없는 확인 단계를 설명합니다.
예약된 데이터 새로 고침:가능한 한 빨리 새로 고침하도록 통합 문서 새로 고침 일정을 구성합니다. 자세한 내용은 Windows 인증을 지원하지 않는 데이터 새로 고침 예약 및 데이터 원본의 "데이터 새로 고침 확인" 섹션을 참조하세요(SharePoint용 파워 피벗).
추가 리소스
Windows PowerShell의 웹 서버(IIS) 관리 Cmdlet입니다.
SharePoint에서 서비스, IIS 사이트 및 애플리케이션 풀 상태를 확인하는 PowerShell입니다.
SharePoint 2013용 Windows PowerShell 참조
SharePoint Foundation 2010용 Windows PowerShell 참조
Windows PowerShell을 사용하여 Excel Services 관리(SharePoint Server 2010)
전체 PowerShell 스크립트
다음 스크립트에는 이전 섹션의 모든 명령이 포함되어 있습니다. 스크립트는 이 항목에 제시된 것과 동일한 순서로 명령을 실행합니다. 이 스크립트에는 추가 필터링이 필요한 경우 이 항목에 설명된 명령의 일부 선택적 변형이 포함되어 있습니다. 변형은 주석 문자(#)로 비활성화됩니다. 이 스크립트에는 Reporting Services SharePoint 모드를 확인하기 위한 몇 가지 문도 포함되어 있습니다. Reporting Services 명령문은 주석 문자(#)로 비활성화됩니다.
# This script audits services related to PowerPivot for SharePoint
$starttime=Get-Date
write-host -foregroundcolor DarkGray StartTime $starttime
Write-Host "Import the SharePoint PowerShell snappin"
Add-PSSnapin Microsoft.Sharepoint.Powershell -EA 0
#Write-Host ""
Write-Host -ForegroundColor Green "Analysis Services Windows Service"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
get-service | select name, displayname, status | where {$_.Name -eq "msolap`$powerpivot"} | format-table -property * -autosize | out-default
#Write-Host ""
Write-Host -ForegroundColor Green "PowerPivotEngineService and PowerPivotSystemService"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-PowerPivotSystemService | select typename, status, applications, farm | format-table -property * -autosize | out-default
# If needed, you can run the following to compare job definitions specific to the service against the results of the timer job definition section
#Get-PowerPivotSystemService | select -ExpandProperty jobdefinitions | select displayname, schedule, service | format-table -property * -autosize | out-default
Get-PowerPivotEngineService | select typename, status, name, instances, farm | format-table -property * -autosize | out-default
# If needed, you can run the following to compare job definitions specific to the service against the results of the timer job definition section
#Get-PowerPivotEngineService | select -ExpandProperty jobdefinitions | select displayname, schedule, service | format-table -property * -autosize | out-default
#Write-Host ""
#Write-Host -ForegroundColor Green "Service Instances - optional if you want to associate services with the server"
#Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
#Get-SPServiceInstance | select typename, status, server, service, instance | where {$_.TypeName -like "*powerpivot*" -or $_.TypeName -like "*excel*" -or $_.TypeName -like "*Analysis Services*"} | format-table -property * -autosize | out-default
#Get-PowerPivotEngineServiceInstance | select typename, ASServername, status, server, service, instance
#Get-PowerPivotSystemServiceInstance | select typename, ASSServerName, status, server, service, instance
#Write-Host ""
Write-Host -ForegroundColor Green "PowerPivot And Excel Service Applications"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-PowerPivotServiceApplication | select typename,name, status, unattendedaccount, applicationpool, farm, database
Get-SPExcelServiceApplication | select typename, DisplayName, status
#Write-Host ""
Write-Host -ForegroundColor Green "PowerPivot Service Application pool"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
# the following assumes there is only 1 PowerPivot Service Application, and returns that applicaitons pool name. if you have more than one, use the 2nd version
$poolname=[string](Get-PowerPivotServiceApplication | select -property applicationpool)
$position=$poolname.lastindexof("=")
$poolname=$poolname.substring($position+1)
$poolname=$poolname.substring(0,$poolname.length-1)
Get-SPServiceApplicationPool | select name, status, processaccountname, id | where {$_.Name -eq $poolname} | format-table -property * -autosize | out-default
#Write-Host ""
Write-Host -ForegroundColor Green "PowerPivot and Excel Service Application Proxy"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-SPServiceApplicationProxy | select typename, status, unattendedaccount, displayname | where {$_.TypeName -like "*powerpivot*" -or $_.TypeName -like "*excel services*"} | format-table -property * -autosize | out-default
#Get-SPServiceApplicationProxy | select typename, status, unattendedaccount, displayname | where {$_.TypeName -like "*powerpivot*" -or $_.TypeName -like "*Reporting Services*" -or $_.TypeName -like "*excel services*"} | format-table -property * -autosize | out-default
#Write-Host ""
Write-Host -ForegroundColor Green "DATABASES"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-SPDatabase | select name, status, server, typename | where {$_.TypeName -eq "content database" -or $_.TypeName -like "*Gemini*"} | format-table -property * -autosize | out-default
#Get-SPDatabase | select name, status, server, typename | where {$_.TypeName -eq "content database" -or $_.TypeName -like "*Gemini*" -or $_.TypeName -like "*ReportingServices*"}
#Write-Host ""
Write-Host -ForegroundColor Green "features"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-SPFeature | select displayname, status, scope, farm| where {$_.displayName -like "*powerpivot*"} | format-table -property * -autosize | out-default
#Get-SPFeature | select displayname, status, scope, farm | where {$_.displayName -like "*powerpivot*" -or $_.displayName -like "*ReportServer*"} | format-table -property * -autosize | out-default
#Write-Host ""
Write-Host -ForegroundColor Green "Timer Jobs (Job Definitions) -- list is the same as seen in the 'Review timer job definitions' section of the management dashboard"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-SPTimerJob | where {$_.service -like "*power*" -or $_.service -like "*mid*"} | select status, displayname, LastRunTime, service | format-table -property * -autosize | out-default
#Write-Host ""
Write-Host -ForegroundColor Green "health rules"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-SPHealthAnalysisRule | select name, enabled, summary | where {$_.summary -like "*power*"} | format-table -property * -autosize | out-default
$time=Get-Date
write-host -foregroundcolor DarkGray StartTime $starttime
write-host -foregroundcolor DarkGray EndTime $time
#Write-Host ""
Write-Host -ForegroundColor Green "Windows Event Log data MSSQL$POWERPIVOT and "
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-EventLog "application" | Where-Object {$_.source -like "msolap`$powerpivot*"} |select timegenerated, entrytype , source, message | format-table -property * -autosize | out-default
#The following is the same command but with the Inforamtion events filtered out.
#Get-EventLog "application" | Where-Object {$_.source -like "msolap`$powerpivot*" -and ($_.entrytype -match "error" -or $_.entrytype -match "critical" -or $_.entrytype -match "warning")} |select timegenerated, entrytype , source, message | format-table -property * -autosize | out-default
#Write-Host ""
Write-Host -ForegroundColor Green "ULS Log data"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
Get-SPLogEvent -starttime(get-date).addhours(-48) | Where-Object {$_.Area -eq "powerpivot service" -and $_.level -eq "high"} | select timestamp, area, category, eventid,level, correlation, message| format-table -property * -autosize | out-default
#the following example filters for the category 'data refresh'
#Get-SPLogEvent -starttime(get-date).addhours(-48) | Where-Object {$_.category -eq "data refresh" -and $_.level -eq "high"} | select timestamp, area, category, eventid, level, correlation, message
$time=Get-Date
write-host -foregroundcolor DarkGray StartTime $starttime
write-host -foregroundcolor DarkGray EndTime $time
#Write-Host ""
Write-Host -ForegroundColor Green "MSOLAP data provider for Excel Servivces, service application"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
$excelApp=Get-SPExcelServiceApplication
get-spexceldataprovider -ExcelServiceApplication $excelApp |select providerid,providertype,description | where {$_.providerid -like "msolap*" } | format-table -property * -autosize | out-default
Write-Host -ForegroundColor Green "ADOMD.net client library"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
get-wmiobject -class win32_product | Where-Object {$_.name -like "*ado*"} | select name, version, vendor | format-table -property * -autosize | out-default
#Write-Host ""
Write-Host -ForegroundColor Green "Usage Data Rules"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
get-spusagedefinition | select name, status, enabled, tablename, DaysToKeepDetailedData | where {$_.name -like "powerpivot*"} | format-table -property * -autosize | out-default
Write-Host -ForegroundColor Green "Solutions"
Write-Host -ForegroundColor Green ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
get-spsolution | select name, status, deployed, DeploymentState, DeployedServers | where {$_.Name -like "*powerpivot*"} | format-table -property * -autosize | out-default
$time=Get-Date
write-host -foregroundcolor DarkGray StartTime $starttime
write-host -foregroundcolor DarkGray EndTime $time