Log Analytics 작업 영역을 사용하면 분석을 위해, Sentinel과 같은 다른 서비스에서 사용하기 위해, Azure Logic Apps 등을 사용하여 경고 및 작업을 트리거하기 위해 Azure 및 비 Azure 리소스의 로그 데이터를 하나의 공간으로 수집할 수 있습니다. Log Analytics 작업 영역은 데이터 모델, 데이터 액세스 및 로그 관련 비용을 관리하도록 구성할 수 있는 테이블로 구성됩니다. 이 문서에서는 Azure Monitor 로그의 테이블 구성 옵션과 데이터 분석 및 비용 관리 요구 사항에 따라 테이블 속성을 설정하는 방법을 설명합니다.
테이블 속성
이 다이어그램은 Azure Monitor 로그의 테이블 구성 옵션에 대한 개요를 제공합니다.
테이블 형식 및 스키마
테이블의 스키마는 Azure Monitor 로그가 하나 이상의 데이터 원본에서 로그 데이터를 수집하는 테이블을 구성하는 열 세트입니다.
Log Analytics 작업 영역에는 다음 형식의 테이블이 포함될 수 있습니다.
테이블 유형입니다. |
데이터 원본 |
스키마 |
Azure 테이블 |
Azure 리소스의 로그 또는 Azure 서비스 및 솔루션에 필요한 로그. |
Azure Monitor 로그는 사용하는 Azure 서비스 및 특정 리소스에 대해 구성하는 진단 설정을 기반으로 Azure 테이블을 자동으로 만듭니다. 각 Azure 테이블에는 미리 정의된 스키마가 있습니다. Azure 테이블에 열을 추가하여 변환된 로그 데이터를 저장하거나 또 다른 원본의 데이터를 사용하여 Azure 테이블의 데이터를 보강할 수 있습니다. |
사용자 지정 테이블 |
비 Azure 리소스 및 모든 기타 데이터 원본(예: 파일 기반 로그) |
지정된 데이터 원본에서 수집하는 데이터를 저장하는 방법에 따라 사용자 지정 테이블의 스키마를 정의할 수 있습니다. |
검색 결과 |
Log Analytics 작업 영역의 테이블에 저장된 모든 데이터 |
검색 결과 테이블의 스키마는 검색 작업을 실행할 때 정의하는 쿼리를 기반으로 합니다. 기존 검색 결과 테이블의 스키마는 편집할 수 없습니다. |
복원된 로그 |
Log Analytics 작업 영역의 특정 테이블에 저장된 데이터입니다. |
복원된 로그 테이블에는 로그를 복원하는 원본 테이블과 동일한 스키마가 있습니다. 기존 복원된 로그 테이블의 스키마는 편집할 수 없습니다. |
테이블 플랜
테이블의 데이터에 액세스하는 빈도에 따라 테이블 계획을 구성합니다.
- 분석 계획은 지속적인 모니터링, 실시간 검색 및 성능 분석에 적합합니다. 이 계획을 통해 대화형 다중 테이블 쿼리에 로그 데이터를 제공하고 30일에서 2년 동안 기능 및 서비스에서 사용할 수 있습니다.
- 기본 계획은 인시던트 해결 및 인시던트 응답에 적합합니다. 이 계획은 30일 동안 할인된 수집 및 최적화된 단일 테이블 쿼리를 제공합니다.
- 보조 계획은 자세한 로그와 같은 접촉이 적은 데이터와 감사 및 준수에 필요한 데이터에 적합합니다. 이 계획은 30일 동안 저렴한 수집 및 최적화되지 않은 단일 테이블 쿼리를 제공합니다.
Azure Monitor 로그 테이블 계획에 대한 자세한 내용은 Azure Monitor 로그: 테이블 계획을 참조하세요.
장기 보존
장기 보존은 준수 또는 비정기적인 조사를 위해 작업 영역에서 정기적으로 사용하지 않는 데이터를 보존하기 위한 저렴한 솔루션입니다. 장기 보존을 추가하거나 연장하려면 테이블 수준 보존 설정을 사용합니다.
장기 보존된 데이터에 액세스하려면 검색 작업을 실행합니다.
사용자 지정 테이블에 대해 정의하는 스키마를 기반으로 수집 전에 데이터를 필터링하고 변환하는 데 데이터 수집 규칙을 사용하여 비용 및 분석 작업을 줄입니다.
테이블 속성 보기
Azure Portal 테이블 속성을 보고 설정하려면 다음을 수행합니다.
Log Analytics 작업 영역에서 테이블을 선택합니다.
테이블 화면에 Log Analytics 작업 영역의 모든 테이블에 대한 테이블 구성 정보가 표시됩니다.
테이블 오른쪽에 있는 줄임표(...)를 선택하여 테이블 관리 메뉴를 엽니다.
사용 가능한 테이블 관리 옵션은 테이블 형식에 따라 달라집니다.
테이블 관리 속성을 편집합니다.
스키마 편집을 선택하여 테이블 스키마를 보고 편집합니다.
테이블 속성을 보려면 테이블 - API 가져오기를 호출합니다.
GET https://management.azure.com/subscriptions/{subscriptionId}/resourcegroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/tables/{tableName}?api-version={api-version}
응답 본문
Name |
형식 |
설명 |
properties.plan |
문자열 |
테이블 계획입니다. Analytics , Basic 또는 Auxiliary . |
properties.retentionInDays |
integer |
테이블의 대화형 보존 기간(일)입니다. Basic 및 Auxiliiary 의 경우 이 값은 30일입니다. Analytics 의 경우 값은 4일에서 730일 사이입니다. |
properties.totalRetentionInDays |
integer |
대화형 및 장기 보존을 포함한 테이블의 총 데이터 보존입니다. |
properties.archiveRetentionInDays |
integer |
테이블의 장기 보존 기간(읽기 전용, 계산)입니다. |
properties.lastPlanModifiedDate |
String |
이 테이블에 대한 계획이 마지막으로 설정된 시간입니다. 기본 설정(읽기 전용)에서 변경되지 않은 경우 Null입니다. |
샘플 요청
GET https://management.azure.com/subscriptions/ContosoSID/resourcegroups/ContosoRG/providers/Microsoft.OperationalInsights/workspaces/ContosoWorkspace/tables/ContainerLogV2?api-version=2025-02-01
샘플 응답
상태 코드: 200
{
"properties": {
"retentionInDays": 8,
"totalRetentionInDays": 8,
"archiveRetentionInDays": 0,
"plan": "Basic",
"lastPlanModifiedDate": "2022-01-01T14:34:04.37",
"schema": {...},
"provisioningState": "Succeeded"
},
"id": "subscriptions/ContosoSID/resourcegroups/ContosoRG/providers/Microsoft.OperationalInsights/workspaces/ContosoWorkspace",
"name": "ContainerLogV2"
}
테이블 속성을 설정하려면 테이블 - API 만들기 또는 업데이트를 호출합니다.
PowerShell을 사용하여 테이블 속성을 보려면 다음을 실행합니다.
Invoke-AzRestMethod -Path "/subscriptions/ContosoSID/resourcegroups/ContosoRG/providers/microsoft.operationalinsights/workspaces/ContosoWorkspace/tables/Heartbeat?api-version=2025-02-01" -Method GET
샘플 응답
{
"properties": {
"totalRetentionInDays": 30,
"archiveRetentionInDays": 0,
"plan": "Analytics",
"retentionInDaysAsDefault": true,
"totalRetentionInDaysAsDefault": true,
"schema": {
"tableSubType": "Any",
"name": "Heartbeat",
"tableType": "Microsoft",
"standardColumns": [
{
"name": "TenantId",
"type": "guid",
"description": "ID of the workspace that stores this record.",
"isDefaultDisplay": true,
"isHidden": true
},
{
"name": "SourceSystem",
"type": "string",
"description": "Type of agent the data was collected from. Possible values are OpsManager (Windows agent) or Linux.",
"isDefaultDisplay": true,
"isHidden": false
},
{
"name": "TimeGenerated",
"type": "datetime",
"description": "Date and time the record was created.",
"isDefaultDisplay": true,
"isHidden": false
},
{
"name": "ComputerPrivateIPs",
"type": "dynamic",
"description": "The list of private IP addresses of the computer.",
"isDefaultDisplay": true,
"isHidden": false
}
],
"solutions": [
"LogManagement"
],
"isTroubleshootingAllowed": false
},
"provisioningState": "Succeeded",
"retentionInDays": 30
},
"id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/ContosoRG/providers/Microsoft.OperationalInsights/workspaces/ContosoWorkspace/tables/Heartbeat",
"name": "Heartbeat"
}
Update-AzOperationalInsightsTable cmdlet을 사용하여 테이블 속성을 설정합니다.
다음 단계
방법 배우기: