데이터베이스 보관 및 제거
이 섹션에서는 Windows Server AppFabric에서 모니터링 저장소(ApplicationServerMonitoring의 기본 이름)를 보관 및 제거하거나 지속성 저장소(ApplicationServerPersistence의 기본 이름)만 제거하는 방법에 대해 설명합니다. 모니터링 또는 지속성 저장소 크기가 증가함에 따라 많은 데이터가 누적될 수 있습니다. 최고 성능을 유지하려면 특정 기준에 따라 오래된 모니터링 데이터를 보관하거나, AppFabric 모니터링 및 지속성 저장소에서 각각 부실 인스턴스 지속성 데이터를 제거할 수 있습니다.
AppFabric을 사용하면 이 작업에 맞게 특별히 고안된 AppFabric과 함께 제공되는 Windows PowerShell cmdlet을 사용하여 저장소만 보관 및 제거할 수 있습니다. 보관 데이터는 모니터링 저장소의 컨텍스트에서만 적용됩니다. 모니터링 데이터는 사실상 기록 데이터이므로 보관하는 것이 좋으며 AppFabric 대시보드에는 WCF 호출 기록 섹션/추적된 이벤트 페이지 및 WF 인스턴스 기록 섹션/추적된 WF 인스턴스 페이지에 기록 모니터링 메트릭이 표시됩니다. 그러나 지속된 WF 인스턴스 섹션/지속된 WF 인스턴스 페이지에 표시된 메트릭은 현재 지속된 워크플로 인스턴스에 대한 실시간 라이브 데이터입니다. 지속된 워크플로 인스턴스 정보를 보관한 다음 나중에 이러한 워크플로 인스턴스가 완료되고 더 이상 존재하지 않을 시점에 보는 것은 그다지 유용하지 않습니다. 따라서 모든 보관 관련 cmdlet은 모니터링 저장소에만 적용됩니다. 제거 cmdlet 기능은 모니터링 및 지속성 저장소에 모두 적용됩니다. AppFabric 자동 데이터 저장소 제거 기능은 Microsoft SQL Server를 사용하여 해당 모니터링을 저장하도록 구성된 AppFabric 설치에만 사용될 수 있습니다. 모니터링 저장소는 자동 제거 기능이 있는 유일한 AppFabric 데이터베이스입니다. 지속성 저장소에서는 이 기능을 사용하도록 구성할 수 없습니다.
데이터베이스 제거 및 보관 Cmdlet
다음과 같은 Windows PowerShell용 AppFabric cmdlet을 사용하여 AppFabric 저장소 제거 및 보관과 연결된 다양한 작업을 수행합니다.
Cmdlet | 설명 |
---|---|
Clear-ASMonitoringSqlDatabase |
모니터링 데이터베이스에서 데이터를 제거합니다. 선택적으로, 제거된 데이터를 보관 데이터베이스에 전송할 수 있습니다. |
Set-ASMonitoringSqlDatabaseArchiveConfiguration |
모니터링 데이터베이스를 대상 보관 데이터베이스와 연결합니다. 대상 보관 데이터베이스는 기존의 초기화된 모니터링 데이터베이스여야 합니다. |
Get-ASMonitoringSqlDatabaseArchiveConfiguration |
보관 구성(기본적으로 보관 대상 데이터베이스를 식별하는 연결 문자열)이 있는 경우 지정된 모니터링 데이터베이스에서 이를 반환합니다. |
Remove-ASMonitoringSqlDatabaseArchiveConfiguration |
모니터링 데이터베이스의 보관 데이터베이스에 대한 구성 정보를 제거합니다. 이 경우 보관 구성이 이전에 Set-ASMonitoringSqlDatabaseArchiveConfiguration을 사용하여 구성되었다고 가정합니다. |
Remove-ASAppServiceInstance |
지속성 저장소에서 "부실" 인스턴스 데이터를 제거합니다. 제거된 인스턴스 데이터에 대한 보관 옵션은 없습니다. |
다음 섹션에서는 이러한 각 cmdlet에 대해 자세히 설명하고 cmdlet이 사용되는 방법을 보여 주는 예를 제공합니다.
모니터링 저장소 구성 설정, 가져오기 및 제거
Set-ASMonitoringSqlDatabaseArchiveConfiguration은 연결된 보관 대상 데이터베이스를 사용하여 지정된 모니터링 데이터베이스를 구성합니다. 보관 대상 데이터베이스는 기존의 초기화된 모니터링 데이터베이스여야 합니다. 이 cmdlet은 기본 및 보관 데이터베이스에 모두 모니터링 데이터베이스 아티팩트가 포함되어 있고 해당 버전이 일치하는지 확인합니다.
Get-ASMonitoringSqlDatabaseArchiveConfiguration은 모니터링 데이터베이스에서 보관 데이터베이스 구성을 검색합니다.
Remove-ASMonitoringSqlDatabaseArchiveConfiguration은 모니터링 데이터베이스의 보관 데이터베이스에 대한 구성 정보를 제거합니다.
Set-ASMonitoringSqlDatabaseArchiveConfiguration
구문 1:
Set-ASMonitoringSqlDatabaseArchiveConfiguration -ArchiveDatabase <String> -Database <String> [-Confirm] [-LinkedArchiveServer <String>] [-Server <String>] [-WhatIf] [<CommonParameters>]
구문 2:
Set-ASMonitoringSqlDatabaseArchiveConfiguration -ArchiveDatabase <String> -ConnectionString <String> [-Confirm] [-LinkedArchiveServer <String>] [-WhatIf] [<CommonParameters>]
매개 변수 | 설명 |
---|---|
ArchiveDatabase |
대상 보관 데이터베이스의 이름입니다. |
Database |
보관을 구성할 기본 데이터베이스의 이름입니다. ConnectionString이 지정된 경우에만 선택 사항입니다. |
ConnectionString |
기본 모니터링 데이터베이스의 연결 문자열입니다. |
LinkedArchiveServer |
대상 보관 데이터베이스를 호스트하는 SQL Server의 이름입니다. |
Server |
기본 모니터링 데이터베이스를 호스트하는 SQL Server의 이름입니다. |
WhatIf |
데이터베이스에 연결하지만 실제로 보관을 구성하지는 않습니다. 선택 사항. |
예제
다음 예에서는 기본 모니터링 데이터베이스 ApplicationServerMonitoring에 대한 보관 구성을 설정합니다. 대상 보관 데이터베이스는 ArchiveMonitoringDatabase입니다. 보관 구성을 설정하기 전에 작업을 확인하는 메시지가 사용자에게 표시됩니다.
Set-ASMonitoringSqlDatabaseArchiveConfiguration –ArchiveDatabase ArchiveMonitoringDatabase –Database ApplicationServerMonitoring
Get-ASMonitoringSqlDatabaseArchiveConfiguration
구문 1:
Get-ASMonitoringSqlDatabaseArchiveConfiguration -Database <String> [-Server <String>] [<CommonParameters>]
구문 2:
Get-ASMonitoringSqlDatabaseArchiveConfiguration -ConnectionString <String> [<CommonParameters>]
매개 변수 | 설명 |
---|---|
Database |
해당 보관 구성을 검색할 기본 데이터베이스의 이름입니다. 연결 문자열이 지정된 경우에만 선택 사항입니다. |
Server |
기본 모니터링 데이터베이스를 호스트하는 SQL Server의 이름입니다. 선택 사항이므로 지정되지 않은 경우 이 매개 변수의 기본값은 로컬 컴퓨터로 설정됩니다. |
ConnectionString |
기본 모니터링 데이터베이스의 연결 문자열입니다. 데이터베이스가 지정되고 서버가 지정된 경우에만 선택 사항이고, 그렇지 않으면 기본적으로 로컬 컴퓨터로 설정됩니다. |
Remove-ASMonitoringSqlDatabaseArchiveConfiguration
구문 1:
Remove-MonitoringDatabaseArchiveConfiguration [-Database <String>] [–Server <String>] [-Confirm <Switch>][-ConnectionString<String>]
매개 변수 | 설명 |
---|---|
Database |
해당 보관 구성을 검색할 기본 데이터베이스의 이름입니다. 연결 문자열이 지정된 경우에만 선택 사항입니다. |
Server |
기본 모니터링 데이터베이스를 호스트하는 SQL Server의 이름입니다. 선택 사항이므로 지정되지 않은 경우 이 매개 변수의 기본값은 로컬 컴퓨터로 설정됩니다. |
Confirm |
지정된 경우 사용자가 링크 제거를 확인해야 합니다. |
ConnectionString |
기본 모니터링 데이터베이스의 연결 문자열입니다. 데이터베이스 매개 변수가 지정되고 서버가 지정된 경우에만 선택적으로 사용할 수 있고, 그렇지 않으면 기본적으로 로컬 컴퓨터로 설정됩니다. |
예제
다음 예에서는 기본 모니터링 데이터베이스 ApplicationServerMonitoring에 대한 보관 구성을 제거합니다.
Remove-MonitoringDatabaseArchiveConfiguration –Database “ApplicationServerMonitoring”
모니터링 저장소 제거 및 보관
Clear-ASMonitoringSqlDatabase cmdlet을 사용하여 모니터링 데이터베이스에서 데이터를 제거하고, 선택적으로 제거된 데이터를 원격 보관 대상 모니터링 데이터베이스로 전송할 수 있습니다.
Clear-ASMonitoringSqlDatabase
구문 1:
Clear-ASMonitoringSqlDatabase -Database <String> [-Archive] [-CutoffTime <DateTime>] [-MaxAge <TimeSpan>] [-PurgeMode {<EventAgeMode | None | WFInstanceCompletedMode}] [-Server <String>] [<CommonParameters> [-WhatIf]]
구문 2:
Clear-ASMonitoringSqlDatabase -ConnectionString <String> [-Archive] [-CutoffTime <DateTime>] [-MaxAge <TimeSpan>] [-PurgeMode {<EventAgeMode | None | WFInstanceCompletedMode>}] [-WhatIf] [<CommonParameters>]
매개 변수 | 설명 |
---|---|
Database |
제거할 데이터베이스의 이름입니다. ConnectionString이 지정된 경우에만 선택 사항입니다. |
ConnectionString |
제거할 데이터베이스에 대한 연결 문자열입니다. Database 및 Server가 지정된 경우 선택 사항입니다. |
Archive |
제거할 데이터는 먼저 Set-ASMonitoringSqlDatabaseArchiveConfiguration을 사용하여 미리 구성된 보관 데이터베이스에 보관됩니다. 선택 사항입니다. |
CutoffTime |
데이터베이스에서 경계 시간 전에 내보낸 모든 이벤트가 제거됩니다. WFInstanceCompletedMode에 있을 때 활성 인스턴스에 관련된 WF 이벤트는 보존됩니다. 이 매개 변수는 선택 사항이며 지정되지 않은 경우 해당 값은 현재 시간에서 MaxAge 매개 변수를 빼서 계산합니다. |
MaxAge |
시간 기준 제거의 대상이 될 때까지 이벤트가 모니터링 데이터베이스에서 유지되는 시간입니다. 이 매개 변수는 선택 사항이고 기본적으로 0으로 설정됩니다. |
PurgeMode |
제거를 수행하는 방법을 결정합니다. 두 가지 옵션이 있습니다.
|
Server |
제거할 데이터베이스를 호스트하는 서버의 이름입니다. 선택 사항이고 제공되지 않는 경우 기본적으로 로컬 서버로 설정됩니다. |
예제
다음은 완료된 인스턴스에 관련된 이벤트를 보관 및 제거하는 방법을 보여 주는 간단한 예입니다. 이 예에서는 로컬 서버에 있는 ContosoDatabase 모니터링 데이터베이스를 제거합니다.
Clear-ASMonitoringSqlDatabase –Database “ContosoDatabase” –PurgeMode “WFInstanceCompletedMode” –Archive
지속성 저장소에서 부실 인스턴스 제거
웹 팜의 모든 컴퓨터에서 제거된 서비스 인스턴스가 지속성 저장소에 남아 있게 되어 지속성 저장소 쿼리에 문제가 발생할 수 있습니다. 컴퓨터가 네트워크에서 제거될 경우 제거된 컴퓨터에 연결된 지속된 인스턴스는 지속성 저장소에 부실 인스턴스로 남아 있습니다. Remove-ASAppServiceInstance cmdlet은 해당 부실 인스턴스를 정리하는 기능을 제공합니다.
Remove-ASAppServiceInstance
구문 1:
Remove-ASAppServiceInstance -Database <String> -InstanceId <Guid> [-Confirm] [-Force] [-Server <String>] [-WhatIf] [<CommonParameters>]
구문 2:
Remove-ASAppServiceInstance -ConnectionString <String> [-Confirm] [-Force] [-WhatIf] [<CommonParameters>]
구문 3:
Remove-ASAppServiceInstance -ServiceInstanceInfo <InstanceInfo> [-Confirm] [-Force] [-WhatIf] [<CommonParameters>]
매개 변수 | 설명 |
---|---|
Database |
제거할 지속성 저장소의 이름입니다. ConnectionString이 지정되지 않은 경우 필수입니다. |
InstanceId |
GUID 형식의 서비스 인스턴스 ID입니다. |
Confirm |
사용자가 서비스 인스턴스가 제거되기 전에 작업을 확인하도록 합니다. Force와 함께 사용할 수 없습니다. |
Force |
사용자 확인 없이 작업을 강제로 수행합니다. Confirm과 함께 사용할 수 없습니다. |
Server |
Database를 호스트하는 SQL Server의 이름입니다. 선택 사항이고 기본적으로 로컬 서버로 설정됩니다. |
WhatIf |
저장소에 연결하지만 실제로 서비스 인스턴스 데이터를 제거하지는 않습니다. |
ConnectionString |
제거할 지속성 저장소에 대한 연결 문자열입니다. 선택 사항이고 Database 및 Server 대신 사용할 수 있습니다. |
ServiceInstanceInfo |
참고 항목
개념
2011-12-05