Google Stackdriver Logging 확장 프로그램

<ph type="x-smartling-placeholder"></ph> 현재 Apigee Edge 문서를 보고 있습니다.
Apigee X 문서.
정보

<ph type="x-smartling-placeholder">

버전 1.2.1

Stackdriver Logging 로그에 항목을 씁니다.

이 콘텐츠는 이 확장 프로그램을 구성하고 사용하기 위한 참조를 제공합니다.

기본 요건

API 프록시에서 이 확장 프로그램을 사용하려면 먼저 다음 작업을 수행해야 합니다.

  1. IAM에서 Logging 할당 > Stackdriver Logging 시스템에 대한 확장 프로그램을 나타내는 프로젝트 구성원에 대한 로그 작성자 권한입니다. 역할을 부여하는 방법에 대한 안내는 서비스 계정에 특정 리소스에 대한 역할 부여하기를 참고하세요. 역할 로깅에 대한 자세한 내용은 액세스 제어 가이드를 참조하세요.

  2. GCP 콘솔을 사용하여 서비스 계정의 키를 생성합니다.

  3. 구성 참조를 사용하여 확장 프로그램을 추가 및 구성할 때 결과 키 JSON 파일의 콘텐츠를 사용합니다.

Stackdriver Logging 정보

Stackdriver Logging은 Google Cloud Platform (GCP)의 Stackdriver 제품군의 일부입니다. 여기에는 로그용 스토리지, 로그 뷰어라고 하는 사용자 인터페이스, 로그를 프로그래매틱 방식으로 관리하는 API가 포함됩니다. Stackdriver Logging을 사용하면 로그 항목을 읽고 쓰고, 로그를 검색 및 필터링하고, 로그를 내보내고, 로그 기반 측정항목을 만들 수 있습니다.

이 확장 프로그램은 현재 로그에 항목을 씁니다.

자세한 내용은 Stackdriver Logging 문서를 참조하세요.

샘플

다음 예는 ExtensionCallback 정책을 사용하여 Stackdriver Logging 확장 프로그램 작업 지원을 구성하는 방법을 보여줍니다.

전역 로그

다음 정책은 'This is a test' 메시지를 작성합니다. Stackdriver 전역 리소스의 example-log라는 로그로 복사됩니다. 실제로 사용 시에는 API 프록시의 다른 위치에 값을 설정한 흐름 변수에 메시지가 포함될 수 있습니다.

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ConnectorCallout async="false" continueOnError="true" enabled="true" name="Logging-Extension">
    <DisplayName>Logging Connector</DisplayName>
    <Connector>stackdriver-extension-sample</Connector>
    <Action>log</Action>
    <Input><![CDATA[{
        "logName": "example-log",
        "metadata": {
            "resource": {
                "type": "global",
                "labels": {
                    "project_id": "my-test"
                }
            }
        },
        "message": "This is a test."
    }]]></Input>
</ConnectorCallout>

이 콘텐츠는 이 확장 프로그램을 구성하고 사용하기 위한 참조를 제공합니다. Apigee 콘솔을 사용하여 확장 프로그램을 구성하는 단계는 확장 프로그램 추가 및 구성을 참조하세요.

작업

<ph type="x-smartling-placeholder">

로그

로그에 메시지를 작성합니다.

이 작업은 Stackdriver 로그 항목을 작성합니다. 로그 항목은 메타데이터와 항목 데이터로 구성됩니다. 로그 항목에 대한 자세한 내용은 항목 참조를 확인하세요. metadata 속성의 콘텐츠에 대한 자세한 내용은 Stackdriver Logging 문서의 LogEntry 객체를 참조하세요.

구문

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "stackdriver-log-name-to-use",
  "metadata" : JSON-structured-metadata,
  "message" : "data-to-log-as-entry"
}]]></Input>

예: 문자열

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "example-log",
  "metadata" : { "resource" : { "type" : "global" } },
  "message": "This is a test."
}]]></Input>

예: JSON

<Action>log</Action>
<Input><![CDATA[{
  "logName" : "example-log",
  "metadata" : { "resource" : { "type" : "global" } },
  "message" : { "info" :  "This is a test." }
}]]></Input>

요청 매개변수

매개변수 설명 유형 기본값 필수
logName 이 항목이 속한 로그의 이름입니다. 문자열 없음 예.
메타데이터 로그 항목에 대한 메타데이터입니다.
metadatatypelabels 설정에 대한 자세한 내용과 옵션은 MonitoredResource를 참고하세요.
JSON 없음 아니요.
메시지 이 로그 항목의 값으로 사용할 데이터입니다. 간단한 문자열을 지정하거나 JSON을 사용하여 보다 구조화된 메시지를 로깅할 수 있습니다. 문자열 또는 JSON 없음 예.

응답

메시지가 로그에 기록된 경우에는 None입니다. 그렇지 않으면 요청에서 오류를 반환합니다. 확장 프로그램 디버깅도 참고하세요.

구성 참조

API 프록시에서 사용하기 위해 이 확장 프로그램을 구성하고 배포할 때 다음을 사용하세요.

일반적인 확장 속성

모든 확장 프로그램에는 다음과 같은 속성이 있습니다.

속성 설명 기본 필수
name 확장 프로그램의 구성에 지정할 이름입니다. 없음 지원됨
packageName Apigee Edge에서 제공하는 확장 프로그램 패키지 이름입니다. 없음 지원됨
version 확장 프로그램을 구성하는 확장 프로그램 패키지의 버전 번호입니다. 없음 지원됨
configuration 추가하는 확장 프로그램 관련 구성 값입니다. 이 확장 프로그램 속성의 속성을 참조하세요. 없음 지원됨

이 확장 프로그램의 속성

이 확장 프로그램과 관련된 다음 구성 속성의 값을 지정합니다.

속성 설명 기본값 필수
projectId 로그가 생성될 GCP 프로젝트 ID입니다. 없음 예.
사용자 인증 정보 Apigee Edge 콘솔에 입력하면 서비스 계정 키 파일의 콘텐츠입니다. 관리 API를 통해 전송될 때는 서비스 계정 키 파일에서 생성되는 base64 인코딩 값입니다. 없음 예.