SQL 쿼리 저장 및 공유

이 문서에서는 로그 애널리틱스에서 만든 쿼리를 저장하고 공유하는 방법을 설명합니다.

이 문서에서는 로그 애널리틱스 및 로그 애널리틱스 페이지를 사용하여 로그 데이터를 쿼리하는 방법에 익숙하다고 가정합니다. 이 주제를 잘 모르면 로그 쿼리 및 분석을 참조하세요.

쿼리 결과를 차트로 표시하고 이러한 차트를 커스텀 대시보드에 저장하는 방법은 SQL 쿼리 결과 차트로 표시를 참조하세요.

시작하기 전에

로그 애널리틱스를 사용하기 전에 다음을 수행합니다.

  • 로그 애널리틱스를 사용하는 데 필요한 권한을 얻으려면 관리자에게 프로젝트에 대한 다음 IAM 역할을 부여해 달라고 요청하세요.

    • _Required_Default 로그 버킷을 쿼리하려는 경우: 로그 뷰어(roles/logging.viewer)
    • 프로젝트의 모든 로그 뷰를 쿼리하려는 경우: 로그 뷰 접근자(roles/logging.viewAccessor)

    프로젝트 수준에서 부여된 로그 뷰 액세스자 역할에 IAM 조건을 추가하거나 로그 뷰의 정책 파일에 IAM 바인딩을 추가하여 주 구성원을 특정 로그 뷰로 제한할 수 있습니다. 자세한 내용은 로그 뷰에 대한 액세스 제어를 참조하세요.

    이는 로그 탐색기 페이지에서 로그 항목을 보는 데 필요한 권한과 같습니다. 사용자 정의 버킷에 대한 뷰를 쿼리하거나 _Default 로그 버킷의 _AllLogs 뷰를 쿼리하는 데 필요한 추가 역할에 대한 자세한 내용은 Cloud Logging 역할을 참조하세요.

  • 로그 애널리틱스를 사용하도록 로그 버킷이 업그레이드되었는지 확인합니다.

    1. Google Cloud 콘솔에서 로그 스토리지 페이지로 이동합니다.

      로그 스토리지로 이동

      검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Logging인 결과를 선택합니다.

    2. 쿼리하려는 로그 뷰가 있는 로그 버킷마다 로그 애널리틱스 사용 가능 열에 열기가 표시되어 있는지 확인합니다. 업그레이드가 표시되면 업그레이드를 클릭하고 대화상자를 완료합니다.

쿼리 저장

실행하는 모든 쿼리는 30일 동안 자동으로 저장되며 로그 애널리틱스 페이지에서 최근 탭을 선택하여 액세스할 수 있습니다. 최근 탭에 나열된 쿼리를 검색하고 보고 실행, 공유할 수 있습니다.

나중에 사용할 수 있도록 쿼리를 유지하려면 유용한 정보로 주석 처리하거나 팀원이 쿼리를 보고 실행할 수 있도록 한 후 쿼리를 저장합니다. 이름, 설명, 공개 상태 라벨을 기준으로 저장된 쿼리를 검색하고 정렬할 수 있습니다. 이러한 쿼리를 편집하고 삭제할 수도 있습니다. 저장한 쿼리는 삭제할 때까지 보관됩니다.

Google Cloud 프로젝트당 10,000개의 쿼리를 저장할 수 있습니다.

콘솔

쿼리를 저장하려면 다음을 수행합니다.

  1. Google Cloud 콘솔에서 로그 분석 페이지로 이동합니다.

    로그 애널리틱스로 이동

    검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Logging인 결과를 선택합니다.

  2. 쿼리 창을 쿼리로 채웁니다.

    새 쿼리를 입력하거나 최근 탭에서 쿼리를 선택하거나 저장됨 탭에서 쿼리를 선택하여 쿼리 창을 채울 수 있습니다.

    쿼리 창의 쿼리가 유효하면 저장이 사용 설정됩니다.

  3. 저장을 클릭하고 이름설명 필드를 작성합니다. 이 필드에 설정한 값은 저장됨 탭에 표시됩니다.

  4. 선택사항: Google Cloud 프로젝트 뷰의 로그 애널리틱스 페이지에 액세스할 수 있는 모든 사용자가 저장된 쿼리를 보고 실행할 수 있게 하려면 프로젝트와 공유 전환 버튼을 사용 설정합니다.

    기본적으로 이 전환 버튼은 사용 중지되어 있으며 공개 상태는 사용자로 제한됩니다.

  5. 쿼리 저장을 클릭합니다.

  6. 선택사항: 사용자에게 표시되는 저장된 쿼리를 보고 정렬 및 실행하려면 저장됨 탭을 선택합니다.

    이름, 설명, 공개 상태 라벨을 기준으로 저장된 쿼리를 정렬하고 필터링할 수 있습니다. 쿼리의 콘텐츠로 필터링할 수도 있습니다.

저장됨 탭의 옵션을 사용하여 직접 만든 쿼리를 수정하고 삭제할 수 있습니다.

  • 쿼리를 수정하려면 옵션 더보기를 클릭하고 수정을 선택합니다. 이름설명 필드의 값은 수정할 수 있지만 쿼리 자체는 수정할 수 없습니다.

  • 저장된 쿼리를 삭제하려면 옵션 더보기를 클릭하고 삭제를 선택합니다.

API

Logging API를 사용하여 쿼리를 저장하려면 savedQueries.create 메서드를 사용하세요. 이 메서드, 매개변수, 응답 데이터에 대한 상세 정보는 savedQueries.create를 위한 참조 페이지를 확인하세요.

savedQueries.create 메서드의 참조 페이지에서 API 탐색기 위젯을 사용하여 해당 메서드를 실행할 수 있습니다. 로그 애널리틱스 쿼리의 경우 opsAnalyticsQuery 필드를 지정해야 합니다. 다음 예시에서는 SavedQuery 인스턴스가 포함된 샘플 요청 본문을 보여줍니다.

{
  "parent": "projects/my-project/locations/global"
  "saved_query":
  {
     "ops_analytics_query":
     {
        "sql_query_text" :
           "SELECT
           timestamp, log_name, severity, json_payload, resource, labels
           FROM
           `TABLE_NAME_OF_LOG_VIEW`
           WHERE
           timestamp > TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 HOUR)
           ORDER BY timestamp ASC
           LIMIT 100"
     }
     "visibility": "PRIVATE"
  }
}

쿼리 공유

콘솔

문제를 해결하거나 비정상적인 결과가 표시되면 쿼리 및 해당 결과를 팀원과 공유할 수 있습니다. 로그 애널리틱스 페이지에서 쿼리 결과를 볼 때 실행된 쿼리와 결과를 표시하는 URL을 복사할 수 있습니다.

쿼리 및 결과를 팀원과 공유하려면 다음 안내를 따르세요.

  1. Google Cloud 콘솔에서 로그 분석 페이지로 이동합니다.

    로그 애널리틱스로 이동

    검색창을 사용하여 이 페이지를 찾은 경우 부제목이 Logging인 결과를 선택합니다.

  2. 쿼리로 쿼리 창을 채우고 쿼리 실행을 클릭합니다.

    새 쿼리를 입력하거나 최근 탭에서 쿼리를 선택하거나 저장됨 탭에서 쿼리를 선택하여 쿼리 창을 채울 수 있습니다.

  3. 링크 공유를 클릭합니다.

  4. 팀원에게 링크를 보냅니다.

    팀원이 링크를 열면 로그 애널리틱스 페이지가 열립니다. 이 페이지에는 실행한 쿼리와 및 해당 쿼리 결과가 표시됩니다.

    URL을 성공적으로 열려면 Google Cloud 프로젝트에서 팀원의 Identity and Access Management 역할에 Logging 페이지를 보는 데 필요한 권한이 포함되어 있어야 합니다.

API

Logging API를 이용하면 savedQueries.Create 메서드를 사용하고 visibility 필드에 SHARED 값을 지정하여 공유 쿼리를 만들 수 있습니다. 자세한 내용은 savedQueries.create의 참조 페이지를 확인하세요.

최근 쿼리 또는 저장된 쿼리 보기 및 실행

쿼리를 보거나 다시 실행하려면 로그 애널리틱스 페이지에서 최근 탭을 선택하고 쿼리를 찾습니다.

  • 쿼리를 실행하려면 실행을 클릭합니다.
  • 쿼리를 보려면 옵션 더보기 메뉴의 옵션을 사용합니다.

저장된 쿼리를 보거나 수정하거나 실행하려면 로그 애널리틱스 페이지에서 저장됨 탭을 선택하고 쿼리를 찾습니다.

  • 쿼리를 실행하려면 실행을 클릭합니다.
  • 쿼리를 수정하거나 보거나 삭제하려면 옵션 더보기 메뉴의 옵션을 사용합니다.

다음 단계