진단 로깅 설정

Analysis Services 솔루션의 중요한 기능은 서버가 작동하는 방법을 모니터링하는 것입니다. Azure Analysis Services 모니터링에 대한 일반적인 내용은 Azure Analysis Services 모니터링을 참조 하세요.

이 문서에서는 Analysis Services 서버에 대한 Azure Monitor 리소스 로그를 설정, 보기 및 관리하는 방법을 설명합니다. 리소스 로그를 Azure Storage로 보내고, Azure Event Hubs스트리밍하고, Azure Monitor 로그로 내보낼 수 있습니다.

Resource logging to Storage, Event Hubs, or Azure Monitor logs

참고 항목

Azure Az PowerShell 모듈을 사용하여 Azure와 상호 작용하는 것이 좋습니다. 시작하려면 Azure PowerShell 설치를 참조하세요. Az PowerShell 모듈로 마이그레이션하는 방법에 대한 자세한 내용은 Azure PowerShell을 AzureRM에서 Azure로 마이그레이션을 참조하세요.

다음이 로깅됩니다.

엔진, 서비스 및 메트릭 로그 범주를 선택할 수 있습니다. 각 범주에 대해 기록되는 항목 목록은 Microsoft.AnalysisServices/server에 대해 지원되는 리소스 로그를 참조 하세요.

진단 로깅 설정

Azure Portal

  1. Azure Portal> 서버의 왼쪽 탐색 영역에서 진단 설정을 클릭한 다음, 진단 켜기를 클릭합니다.

    Screenshot showing Turn on diagnostics in the Azure portal.

  2. 진단 설정에서 다음 옵션을 지정합니다.

    • Name(이름): 만들 로그에 대한 이름을 입력합니다.

    • 스토리지 계정에 보관. 이 옵션을 사용하려면 연결할 기존 스토리지 계정이 필요합니다. 스토리지 계정 만들기를 참조하세요. 지침에 따라 리소스 관리자와 범용 계정을 만든 다음 포털에서 이 페이지로 돌아가 해당 스토리지 계정을 선택합니다. 새로 만든 스토리지 계정이 드롭다운 메뉴에 나타나기까지 몇 분 정도 걸릴 수 있습니다.

    • 이벤트 허브로 스트림. 이 옵션을 사용하려면 연결할 기존 Event Hub 네임스페이스 및 이벤트 허브가 필요합니다. 자세한 내용은 Azure Portal을 사용하여 Event Hubs 네임스페이스 및 이벤트 허브 만들기를 참조하세요. 그런 다음 포털의 이 페이지로 돌아가 Event Hub 네임스페이스 및 정책 이름을 선택합니다.

    • Azure Monitor(Log Analytics 작업 영역)로 보내기. 이 옵션을 사용하려면 기존 작업 영역을 사용하거나, 포털에서 새 작업 영역 만들기 리소스를 사용합니다. 로그를 보는 방법에 대한 자세한 내용은 이 문서의 Log Analytics 작업 영역에서 로그 보기를 참조하세요.

    • 엔진. xEvents를 기록하려면 이 옵션을 선택합니다. 스토리지 계정으로 보관하려는 경우 리소스 로그의 보존 기간을 선택할 수 있습니다. 보존 기간이 만료되면 로그가 자동으로 삭제됩니다.

    • 서비스. 서비스 수준 이벤트를 기록하려면 이 옵션을 선택합니다. 스토리지 계정으로 보관하려는 경우 리소스 로그의 보존 기간을 선택할 수 있습니다. 보존 기간이 만료되면 로그가 자동으로 삭제됩니다.

    • 메트릭. Metrics에 자세한 데이터를 저장하려면 이 옵션을 선택합니다. 스토리지 계정으로 보관하려는 경우 리소스 로그의 보존 기간을 선택할 수 있습니다. 보존 기간이 만료되면 로그가 자동으로 삭제됩니다.

  3. 저장을 클릭합니다.

    "<작업 영역 이름>의 진단을 업데이트하지 못했습니다. 구독 <구독 ID>는 microsoft.insights를 사용하도록 등록되지 않았습니다."라는 오류가 표시되는 경우 Azure Diagnostics 문제 해결 지침을 따라 계정을 등록한 다음, 이 절차를 다시 시도하세요.

    나중에 리소스 로그를 저장하는 방법을 변경하려면 이 페이지로 돌아와서 설정을 수정할 수 있습니다.

PowerShell

계속할 기본 명령은 다음과 같습니다. PowerShell을 사용하여 스토리지 계정에 대한 로깅을 설정하는 방법에 대한 단계별 도움말을 보려면 이 문서의 뒷부분에 나오는 자습서를 참조하세요.

PowerShell을 사용하여 메트릭 및 리소스 로깅을 사용하도록 설정하려면 다음 명령을 사용합니다.

  • 스토리지 계정에서 리소스 로그의 스토리지를 사용하도록 설정하려면 다음 명령을 사용합니다.

    Set-AzDiagnosticSetting -ResourceId [your resource id] -StorageAccountId [your storage account id] -Enabled $true
    

    스토리지 계정 ID는 로그를 보낼 스토리지 계정에 대한 리소스 ID입니다.

  • 이벤트 허브로의 리소스 로그 스트리밍을 활성화하려면 다음 명령을 사용합니다.

    Set-AzDiagnosticSetting -ResourceId [your resource id] -ServiceBusRuleId [your service bus rule id] -Enabled $true
    

    Azure Service Bus 규칙 ID는 다음 형식의 문자열입니다.

    {service bus resource ID}/authorizationrules/{key name}
    
  • 리소스 로그를 Log Analytics 작업 영역으로 보낼 수 있게 하려면 다음 명령을 사용합니다.

    Set-AzDiagnosticSetting -ResourceId [your resource id] -WorkspaceId [resource id of the log analytics workspace] -Enabled $true
    
  • 다음 명령을 사용하여 Log Analytics 작업 영역의 리소스 ID를 가져올 수 있습니다.

    (Get-AzOperationalInsightsWorkspace).ResourceId
    

이러한 매개 변수를 결합하여 여러 출력 옵션을 사용하도록 설정할 수 있습니다.

REST API

Azure Monitor REST API를 사용하여 진단 설정을 변경하는 방법을 알아봅니다.

Resource Manager 템플릿

Resource Manager 템플릿을 사용하여 리소스 생성 시 진단 설정을 활성화하는 방법을 알아봅니다.

로그 관리

로그는 일반적으로 로깅을 설정하는 몇 시간 내에 사용할 수 있습니다. 스토리지 계정의 로그 관리에 따라 다릅니다.

  • 표준 Azure 액세스 제어 메서드를 사용하여 액세스할 수 있는 사용자를 제한하여 로그를 보호합니다.
  • 더 이상 스토리지 계정에 유지하지 않으려는 로그를 삭제합니다.
  • 이전 로그가 스토리지 계정에서 삭제되도록 보존 기간을 설정해야 합니다.

Log Analytics 작업 영역에서 로그 보기

진단 데이터를 보려면 Log Analytics 작업 영역의 왼쪽 메뉴에서 로그를 엽니다.

Screenshot showing log Search options in the Azure portal.

쿼리 작성기에서 LogManagement>AzureDiagnostics를 확장합니다. AzureDiagnostics에는 엔진 및 서비스 이벤트가 포함됩니다. 쿼리는 즉석에서 생성됩니다. EventClass_s 필드에는 xEvent 이름이 포함됩니다. 온-프레미스 로깅에 xEvents를 사용한 경우 익숙해 보일 수 있습니다. EventClass_s 또는 이벤트 이름 중 하나를 클릭하면 Log Analytics 작업 영역이 계속 쿼리를 생성합니다. 나중에 다시 사용하도록 쿼리를 저장해야 합니다.

Analysis Services에서 사용할 수 있는 더 많은 쿼리는 샘플 Kusto 쿼리를 참조 하세요.

PowerShell을 사용하여 로깅 켜기

이 빠른 자습서에서는 Analysis Service 서버와 동일한 구독 및 리소스 그룹에서 스토리지 계정을 만듭니다. 그러면 Set-AzDiagnosticSetting을 사용하여 진단 로깅을 설정하고, 출력을 새 스토리지 계정에 전송합니다.

필수 조건

이 자습서를 완료하려면 다음 리소스가 필요합니다.

구독에 연결

Azure PowerShell 세션을 시작하고 다음 명령 사용하여 Azure 계정에 로그인합니다.

Connect-AzAccount

팝업 브라우저 창에 Azure 계정 사용자 이름 및 암호를 입력합니다. Azure PowerShell은 이 계정과 연관된 모든 구독을 가져와서 기본적으로 첫 번째 구독을 사용합니다.

구독이 여러 개인 경우 Azure Key Vault을 만드는 데 사용된 특정된 하나를 지정해야 합니다. 계정에 대한 구독을 보려면 다음을 입력합니다.

Get-AzSubscription

그런 다음 로깅하려는 Azure Analysis Services 계정과 연결된 구독을 지정하려면 다음을 입력합니다.

Set-AzContext -SubscriptionId <subscription ID>

참고 항목

사용자 계정에 여러 구독이 연결된 경우 구독을 지정하는 것이 중요합니다.

로그에 대한 새 스토리지 계정 만들기

서버와 동일한 구독에서 제공되는 로그에 기존 스토리지 계정을 사용할 수 있습니다. 이 자습서의 경우 Analysis Services 로그에 전용인 새 스토리지 계정을 만듭니다. 편의를 위해 스토리지 계정 세부 정보를 sa라는 변수에 저장합니다.

또한 Analysis Services 서버를 포함하는 것과 동일한 리소스 그룹을 사용합니다. 또한 awsales_resgroup, awsaleslogsWest Central US의 값을 고유한 값으로 바꿉니다.

$sa = New-AzStorageAccount -ResourceGroupName awsales_resgroup `
-Name awsaleslogs -Type Standard_LRS -Location 'West Central US'

로그에 대한 서버 계정을 식별합니다

계정 이름을 account라는 변수로 설정합니다. 여기서 ResourceName은 계정의 이름입니다.

$account = Get-AzResource -ResourceGroupName awsales_resgroup `
-ResourceName awsales -ResourceType "Microsoft.AnalysisServices/servers"

로깅 사용

로깅을 사용하려면 새 스토리지 계정, 서버 계정 및 범주의 변수와 함께 Set-AzDiagnosticSetting cmdlet을 사용합니다. 다음 명령을 실행하고 -Enabled 플래그를 $true로 설정합니다.

Set-AzDiagnosticSetting  -ResourceId $account.ResourceId -StorageAccountId $sa.Id -Enabled $true -Categories Engine

출력은 다음 예제와 비슷합니다.

StorageAccountId            : 
/subscriptions/a23279b5-xxxx-xxxx-xxxx-47b7c6d423ea/resourceGroups/awsales_resgroup/providers/Microsoft.Storage/storageAccounts/awsaleslogs
ServiceBusRuleId            :
EventHubAuthorizationRuleId :
Metrics                    
    TimeGrain       : PT1M
    Enabled         : False
    RetentionPolicy
    Enabled : False
    Days    : 0


Logs                       
    Category        : Engine
    Enabled         : True
    RetentionPolicy
    Enabled : False
    Days    : 0


    Category        : Service
    Enabled         : False
    RetentionPolicy
    Enabled : False
    Days    : 0


WorkspaceId                 :
Id                          : /subscriptions/a23279b5-xxxx-xxxx-xxxx-47b7c6d423ea/resourcegroups/awsales_resgroup/providers/microsoft.analysisservic
es/servers/awsales/providers/microsoft.insights/diagnosticSettings/service
Name                        : service
Type                        :
Location                    :
Tags                        :

이 출력은 이제 서버에 대한 로깅을 사용할 수 있으며 스토리지 계정에 정보가 저장됨을 확인합니다.

이전 로그를 자동으로 삭제하도록 로그에 대한 보존 정책을 설정할 수도 있습니다. 예를 들어 -RetentionEnabled 플래그를 사용하는 보존 정책을 $true로 설정하고 -RetentionInDays 매개 변수를 90으로 설정합니다. 90일보다 오래된 로그는 자동으로 삭제됩니다.

Set-AzDiagnosticSetting -ResourceId $account.ResourceId`
 -StorageAccountId $sa.Id -Enabled $true -Categories Engine`
  -RetentionEnabled $true -RetentionInDays 90

다음 단계