다음을 통해 공유


Azure Monitor에 로그 업로드

정기적으로 로그를 내보낸 후 Azure에 업로드할 수 있습니다. 로그를 내보내 업로드하면 Azure에서 데이터 컨트롤러, SQL 관리되는 인스턴스, PostgreSQL 서버 리소스가 생성되고 업데이트됩니다.

시작하기 전에

로그를 업로드하려면 먼저 다음을 수행해야 합니다.

  1. Log Analytics 작업 영역 만들기
  2. 환경 변수에 ID 및 공유 키 할당

이 문서의 예제에서는 꺾쇠 괄호(< ... >)를 사용하여 스크립트를 실행하기 전에 바꿔야 하는 값을 식별합니다. 대괄호와 대괄호 안의 값을 바꿉니다.

Log Analytics 작업 영역 만들기

Log analytics 작업 영역을 만들려면 다음 명령을 실행하여 Log Analytics 작업 영역을 만들고 액세스 정보를 환경 변수로 설정합니다.

참고 항목

작업 영역이 이미 있는 경우 이 단계를 건너뛸 수 있습니다.

az monitor log-analytics workspace create --resource-group <resource group name> --workspace-name <some name you choose>

예제 출력:

{
  "customerId": "00000000-0000-0000-0000-000000000000",
  "eTag": null,
  "id": "/subscriptions/<Subscription ID>/resourcegroups/user-arc-demo/providers/microsoft.operationalinsights/workspaces/user-logworkspace",
  "location": "eastus",
  "name": "user-logworkspace",
  "portalUrl": null,
  "provisioningState": "Succeeded",
  "resourceGroup": "user-arc-demo",
  "retentionInDays": 30,
  "sku": {
    "lastSkuUpdate": "Thu, 30 Jul 2020 22:37:53 GMT",
    "maxCapacityReservationLevel": 3000,
    "name": "pergb2018"
  },
  "source": "Azure",
  "tags": null,
  "type": "Microsoft.OperationalInsights/workspaces"
}

환경 변수에 ID 및 공유 키 할당

나중에 사용하기 위해 로그 작업 영역 분석 customerId를 환경 변수로 저장합니다.

SET WORKSPACE_ID=<customerId>

이 명령은 Log Analytics 작업 영역에 연결하는 데 필요한 액세스 키를 반환합니다.

az monitor log-analytics workspace get-shared-keys --resource-group MyResourceGroup --workspace-name MyLogsWorkpace

예제 출력:

{
  "primarySharedKey": "<primarySharedKey>==",
  "secondarySharedKey": "<secondarySharedKey>=="
}

나중에 사용하기 위해 기본 키를 환경 변수에 저장합니다.

SET WORKSPACE_SHARED_KEY=<primarySharedKey>

환경 변수 확인

원하는 경우 다음과 같이 필요한 모든 환경 변수를 설정했는지 확인합니다.

echo %WORKSPACE_ID%
echo %WORKSPACE_SHARED_KEY%

환경 변수를 설정하면 로그를 로그 작업 영역으로 업로드할 수 있습니다.

az CLI를 사용하여 직접 모드에서 Azure Log Analytics 작업 영역에 로그 자동 업로드 구성

직접 연결 모드에서 로그 업로드는 자동 모드로만 설정할 수 있습니다. 이 메트릭 자동 업로드는 Azure Arc 데이터 컨트롤러를 배포하는 동안 또는 배포 후에 설정할 수 있습니다.

Azure Log Analytics 작업 영역에 로그 자동 업로드 사용

Azure Arc 데이터 컨트롤러 배포 중에 로그의 자동 업로드를 사용하지 않도록 설정한 경우 아래 명령을 실행하여 로그 자동 업로드를 사용하도록 설정합니다.

az arcdata dc update --name <name of datacontroller> --resource-group <resource group> --auto-upload-logs true
#Example
az arcdata dc update --name arcdc --resource-group <myresourcegroup> --auto-upload-logs true

Azure Log Analytics 작업 영역에 로그 자동 업로드 사용

Azure Arc 데이터 컨트롤러 배포 중에 로그의 자동 업로드를 사용하도록 설정한 경우 아래 명령을 실행하여 로그 자동 업로드를 사용하지 않도록 설정합니다.

az arcdata dc update --name <name of datacontroller> --resource-group <resource group> --auto-upload-logs false
#Example
az arcdata dc update --name arcdc --resource-group <myresourcegroup> --auto-upload-logs false

kubectl CLI를 사용하여 직접 모드에서 Azure Log Analytics 작업 영역에 로그 자동 업로드 구성

Azure Log Analytics 작업 영역에 로그 자동 업로드 사용

kubectl을 사용하여 로그의 자동 업로드를 구성하려면 다음을 수행합니다.

  • 이전 섹션에서 설명한 대로 Log Analytics 작업 영역이 만들어졌는지 확인합니다.
  • 다음과 같이 WorkspaceIDSharedAccessKey를 사용하여 Log Analytics 작업 영역에 대한 Kubernetes 비밀을 만듭니다.
apiVersion: v1
data:
  primaryKey: <base64 encoding of Azure Log Analytics workspace primary key>
  workspaceId: <base64 encoding of Azure Log Analytics workspace Id>
kind: Secret
metadata:
  name: log-workspace-secret
  namespace: <your datacontroller namespace>
type: Opaque
  • 비밀을 만들려면 다음을 실행합니다.

    kubectl apply -f <myLogAnalyticssecret.yaml> --namespace <mynamespace>
    
  • 기본 편집기에서 yaml 파일로 설정을 열려면 다음을 실행합니다.

    kubectl edit datacontroller <DC name> --name <namespace>
    
  • autoUploadLogs 속성을 "true"로 업데이트하고 파일을 저장합니다.

Azure Log Analytics 작업 영역에 로그 자동 업로드 사용

로그 자동 업로드를 사용하지 않도록 설정하려면 다음을 실행합니다.

kubectl edit datacontroller <DC name> --name <namespace>
  • autoUploadLogs 속성을 "false"로 업데이트하고 파일을 저장합니다.

간접 모드에서 Azure Monitor에 로그 업로드

Azure Arc에서 지원되는 SQL Managed Instance와 Azure Arc 지원 PostgreSQL 서버에 대한 로그를 업로드하려면 다음 CLI 명령을 실행합니다.

  1. 모든 로그를 지정된 파일로 내보냅니다.

    참고 항목

    az arcdata dc export 명령을 사용하여 사용량/결제 정보, 메트릭 및 로그를 내보내려면 현재로서는 SSL 확인을 바이패스해야 합니다. SSL 확인을 바이패스하라는 메시지가 표시되거나 메시지가 표시되지 않도록 AZDATA_VERIFY_SSL=no 환경 변수를 설정할 수 있습니다. 현재 데이터 컨트롤러 내보내기 API에 대한 SSL 인증서를 구성할 수 있는 방법이 없습니다.

    az arcdata dc export --type logs --path logs.json  --k8s-namespace arc
    
  2. Azure Monitor Log Analytics 작업 영역에 로그를 업로드합니다.

    az arcdata dc upload --path logs.json
    

Azure Portal에서 로그 보기

로그가 업로드되면 다음과 같이 로그 쿼리 탐색기를 사용하여 로그를 쿼리할 수 있습니다.

  1. Azure Portal을 열고 위쪽의 검색 표시줄에서 이름으로 작업 영역을 검색한 다음 선택합니다.
  2. 왼쪽 패널에서 로그를 선택합니다.
  3. 시작하기를 선택합니다. 처음 사용하는 경우 시작 페이지의 링크를 선택하여 Log Analytics에 대한 자세한 내용을 알아보세요.
  4. Log Analytics를 처음 사용하는 경우 Log Analytics에 대해 자세히 알아보려면 자습서를 따릅니다.
  5. 테이블 목록 아래쪽에서 사용자 지정 로그를 확장하면 'sql_instance_logs_CL' 또는 'postgresInstances_postgresql_logs_CL'이라는 테이블이 표시됩니다.
  6. 테이블 이름 옆의 '눈' 아이콘을 선택합니다.
  7. '쿼리 편집기에서 보기' 단추를 선택합니다.
  8. 이제 쿼리 편집기에 쿼리를 포함하여 로그에 최근 10개의 이벤트를 표시합니다.
  9. 여기에서 쿼리 편집기를 사용하여 로그 쿼리, 경고 설정 등을 시험해 볼 수 있습니다.

업로드 자동화(선택 사항)

일정에 따라 메트릭과 로그를 업로드하려는 경우 스크립트를 만들어 몇 분마다 타이머에서 실행되도록 할 수 있습니다. 다음은 Linux 셸 스크립트를 사용하여 업로드를 자동화하는 예제입니다.

자주 사용하는 텍스트/코드 편집기에서 다음 스크립트를 파일에 추가하고 .sh(Linux/Mac) 또는 .cmd, .bat 또는 .ps1(Windows)과 같은 스크립트 실행 파일로 저장합니다.

az arcdata dc export --type logs --path logs.json --force --k8s-namespace arc
az arcdata dc upload --path logs.json

스크립트 파일을 실행 가능하도록 설정합니다.

chmod +x myuploadscript.sh

20분마다 스크립트를 실행합니다.

watch -n 1200 ./myuploadscript.sh

Cron 또는 Windows 작업 스케줄러와 같은 작업 스케줄러를 사용하거나 Ansible, Puppet 또는 Chef와 같은 오케스트레이터를 사용할 수도 있습니다.

Azure Monitor에 메트릭 및 로그 업로드

Azure Monitor에 사용량 데이터, 메트릭 및 로그 업로드

청구 데이터를 Azure에 업로드하고 Azure Portal에서 보기

Azure Portal에서 Azure Arc 데이터 컨트롤러 리소스 보기