Azure Stack 진단 도구 로그 수집 구성은 아래와 같습니다.
Azure Stack 진단을 위한 로그 수집 방법은 두가지가 있습니다. Event Tracing for Windows (ETW) 를 이용한 로그 수집 방법과 PowerShell 에서 Get-AzureStackLog 명령을 이용한 방법이 있습니다.
Event Tracing for Windows (ETW) 로그 수집
기본적으로 백그라운드로 동작 하고 있습니다.
- 기본 크기가 제한된 상태로 실행됩니다. 각 파일 기본 크기는 200MB이며 주기적으로 2분 마다 파일 크기를 검사하여 200 MB 초과시 새로운 파일로 생성되어 저장 합니다. 또한 이벤트 세션당 생성 된 총 파일 크기에 대해 8gb (구성 가능) 제한되어 있으며, 크기가 8gb에 도달 하면 새 파일을 만들 때 가장 오래된 파일을 삭제 합니다.
- 로그파일은 기본적으로 5일 동안 보관 합니다.
- 기본 구성은 JSON 파일 형태로 되어 있으며, C:\TraceCollector\Configuration 에 들어 있습니다.
- JSON 파일을 수정하여 로그의 보존 기간 및 크기 제한을 변경 할수 있으며, 변경 후에는 Microsoft Azure Stack 추적 수집기 서비스를 다시 시작 해야합니다.
[ TraceCollector 폴더 ]
"C:\TraceCollector\Configuration" 에 각 리소스 별로 로그 수집 파일이 정의 되어 있습니다.
로그 수집 파일 "TraceConfiguration.Template.json" 기본 내용은 아래와 같습니다.
MaxDaysOfFiles |
파일의 보존 기간 설정, 이전 로그 파일이 삭제됩니다. |
MaxSizeInMB |
단일 파일의 크기 설정, 크기에 도달하면 새로운 .etl 파일이 만들어집니다. |
TotalSizeInMB |
이벤트 세션에서 생성 된 .etl 파일의 전체 크기 설정, 총 파일 크기가이 매개 변수 값보다 크면 이전 파일이 삭제됩니다. |
PowerShell 에서 Get-AzureStackLog 명령을 이용한 로그 수집
사용자 정의 위치의 zip 파일 형태로 저장되면, 문제 해결을 위해 기술 지원팀에서 로그 파일 요구시 Get-AzureStackLog 명령을 실행 해서 전달 합니다. 로그에 개인 식별 정보가 있어서 파일 공개에 주의 해야 합니다.
수집되어지는 주요 로그 유형 |
|
VM 생성 문제를 해결을 위한 로그 유형 |
|
다양한 로그 수집 예제
-
모든 역할에 대한 모든 로그 수집
Get-AzureStackLog -OutputPath C:\AzureStackLogs |
아래 위치에 모든 로그가 수집된 것을 확인 할 수 있습니다.
-
Virtual Machines 및 BareMetal 역할에서 로그 수집
Get-AzureStackLog -OutputPath C:\AzureStackLogs -FilterByRole VirtualMachines,BareMetal |
-
지난 8 시간 동안의 로그 파일에 대한 날짜 필터링과 함께 Virtual Machines 및 BareMetal 역할에서 로그 수집
Get-AzureStackLog -OutputPath C:\AzureStackLogs -FilterByRole VirtualMachines,BareMetal -FromDate (Get-Date).AddHours(-8) |
-
Virtual Machines 및 BareMetal 역할에서 로그를 수집 (8 시간 전부터 2 시간 전까지의 기간 동안 로그 파일에 대한 날짜 필터링 사용)
Get-AzureStackLog -OutputPath C:\AzureStackLogs -FilterByRole VirtualMachines,BareMetal -FromDate (Get-Date).AddHours(-8) -ToDate (Get-Date).AddHours(-2) |
Azure Stack 통합 시스템에서 Get-AzureStackLog를 실행
통합 시스템에서 로그 수집 도구를 실행하려면 PEP (Privileged End Point)에 대한 액세스 권한이 있어야 합니다. 로그 수집을 위해 PEP를 사용하는 예제 스크립트는 다음과 같습니다.
$ip = "<IP OF THE PEP VM>" # You can also use the machine name instead of IP here.
$pwd= ConvertTo-SecureString "<CLOUD ADMIN PASSWORD>" -AsPlainText -Force $cred = New-Object System.Management.Automation.PSCredential ("<DOMAIN NAME>\CloudAdmin", $pwd)
$shareCred = Get-Credential
$s = New-PSSession -ComputerName $ip -ConfigurationName PrivilegedEndpoint -Credential $cred
$fromDate = (Get-Date).AddHours(-8) $toDate = (Get-Date).AddHours(-2) #provide the time that includes the period for your issue
Invoke-Command -Session $s { Get-AzureStackLog -OutputPath "\\<HLH MACHINE ADDREESS>\c$\logs" -OutputSharePath "<EXTERNAL SHARE ADDRESS>" -OutputShareCredential $using:shareCred -FilterByRole Storage -FromDate $using:fromDate -ToDate $using:toDate}
if($s) { Remove-PSSession $s } |
- OutputPath매개 변수를 HLH 시스템의 위치로 지정합니다. 해당 위치가 암호화되어 있는지 확인합니다.
- OutputSharePath과 OutputShareCredential선택 사항으로 외부 공유 폴더에 로그를 업로드 할 때 사용합니다. 매개 변수로 OutputPath를 사용 할 수 있으며 OutputPath 를 지정하지 않으면 로그 수집 도구가 PEP VM의 시스템 드라이브를 사용하여 저장합니다. 드라이브 공간이 제한되어 있기 때문에 스크립트가 실패 할 수 있습니다.
-
FromDate와 ToDate매개 변수를 사용하여 특정 기간의 로그를 수집 할 수 있습니다. 이는 통합 시스템에 업데이트 패키지를 적용한 후 로그를 수집하는 시나리오에 유용 할 수 있습니다.
주요 매개 변수
- FromDate 및 ToDate 지정되지 않으면 기본적으로 지난 40 시간 동안 로그를 수집 합니다.
- TimeOutInMinutes 로그 수집 제한 시간으로 기본 값은 150분 (2.5 시간) 입니다.
- FilterByRole 에 아래 다양한 필터를 이용하여 로그를 수집 할 수 있습니다 .
[ FilterByRole의 다양한 필터 ]
ACSMigrationService, ACSMonitoringService, ACSSettingsService, ACS, ACSFabric, ACSFrontEnd, ACSTableMaster, ACSTableServer, ACSWac, ADFS, ASAppGateway, BareMetal, BRP, CA, CPI, CRP, DeploymentMachine, DHCP, Domain, ECE, ECESeedRing, FabricRing, FabricRingServices, FRP, Gateway, HealthMonitoring, HRP, IBC, InfraServiceController, KeyVaultAdminResourceProvider, KeyVaultControlPlane, KeyVaultDataPlane, NC, NonPrivilegedAppGateway, NRP, SeedRing, SeedRingServices, SLB, SQL, SRP, Storage, StorageController, URP, UsageBridge, VirtualMachines, WAS, WASPUBLIC, WDS |
- Get-AzureStackLog_Output.log 파일은 로그 수집 중 문제 해결을 위해 사용할 수 있는 파일 입니다.
- 모든 인프라 vm에 대 한 시스템 및 이벤트 로그는 Virtual Machines 역할에서 수집 됩니다.
- 모든 호스트에 대 한 시스템 및 이벤트 로그는 baremetal 역할에서 수집 됩니다.
- 장애 조치 (Failover) 클러스터 및 hyper-v 이벤트 로그는 저장소 역할에서 수집 됩니다.
- acs 로그는 저장소 및 acs 역할에서 수집 됩니다.
자세한 내용은 Azure Stack diagnostics tools 사이트를 방문 하십시오.
'Microsoft Azure stack' 카테고리의 다른 글
Azure Stack Pricing 요약 (0) | 2017.11.21 |
---|---|
ASDK : Azure Stack Custom Image(VHD) 추가 (0) | 2017.10.26 |
ASDK : Azure Stack Usage and billing 요약 (0) | 2017.10.26 |
ASDK : Azure Stack의 VM에 Docker 설치 (0) | 2017.10.24 |
ASDK : Azure Stack VPN을 이용한 Azure 연동 및 테스트 (0) | 2017.10.19 |