Apigee Edge 문서입니다.
Go to the
Apigee X documentation. info
버전 2.0.0
Cloud Logging 로그에 항목을 작성합니다.
이 콘텐츠는 이 확장 프로그램을 구성하고 사용하는 데 필요한 참조를 제공합니다.
기본 요건
API 프록시에서 이 확장 프로그램을 사용하기 전에 다음 작업을 실행해야 합니다.
IAM에서 Cloud Logging 시스템에 확장 프로그램을 나타낼 프로젝트 구성원에게 Logging > 로그 작성자 역할을 할당합니다. 역할을 부여하는 방법은 특정 리소스에 대한 서비스 계정에 역할 부여를 참고하세요. 로깅 역할에 대한 자세한 내용은 액세스 제어 가이드를 참고하세요.
구성 참조를 사용하여 확장 프로그램을 추가하고 구성할 때 생성된 키 JSON 파일의 콘텐츠를 사용합니다.
이 확장 프로그램은 ExtensionCallout 정책에서 PostClientFlow에 있는 호출할 수 있도록 지원합니다.
ExtensionCallout 정책을 사용하여
PostClientFlow에서 이 확장 프로그램을 호출하려면 조직에서 features.allowExtensionsInPostClientFlow 플래그
가 true로 설정되어 있는지 확인하세요.
Apigee Edge for Public Cloud 고객인 경우 Apigee Edge 지원팀에 문의하여 조직에서
features.allowExtensionsInPostClientFlow플래그가true로 설정되어 있는지 확인해야 합니다.Apigee Edge for Private Cloud 고객인 경우 조직 속성 업데이트 API 를 사용하여
features.allowExtensionsInPostClientFlow플래그를true로 설정합니다.
Cloud Logging 정보
Cloud Logging은 Google Cloud's 운영 제품군에 포함되어 있습니다. 여기에는 로그 스토리지, 로그 탐색기라고 하는 사용자 인터페이스, 로그를 프로그래매틱 방식으로 관리하는 API가 포함됩니다. Cloud Logging을 사용하면 로그 항목을 읽고 쓰고, 로그를 검색 및 필터링하고, 로그를 내보내고, 로그 기반 측정항목을 만들 수 있습니다.
Cloud Logging 확장 프로그램은 로그에 항목을 작성합니다. 자세한 내용은 Cloud Logging 문서를 참고하세요.
샘플
다음 예에서는 Cloud Logging 확장 프로그램 작업 지원을 구성하는 방법을 보여줍니다. ExtensionCallout 정책
전역 로그
다음 정책은 Cloud 전역 리소스의 example-log라는 로그에 This is a test 메시지를 작성합니다. 실제 사용에서는 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>cloud-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 콘솔을 사용하여 확장 프로그램을 구성하는 단계는 확장 프로그램 추가 및 구성을 참고하세요.
작업
로그
로그에 메시지를 작성합니다.
이 작업은 Cloud Logging 로그 항목을 작성합니다. 로그 항목은 메타데이터와 항목 데이터로 구성됩니다. 로그 항목에 대한 자세한 내용은
항목 참조를 참고하세요.
metadata 속성의 콘텐츠에 대한 자세한 내용은 Cloud Logging 문서의
LogEntry
객체를 참고하세요.
구문
<Action>log</Action>
<Input><![CDATA[{
"logName" : "cloud-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 |
이 항목이 속한 로그의 이름입니다. | 문자열 | 없음 | 예 |
metadata |
로그 항목에 대한 메타데이터입니다.metadata에서 type 및 labels를 설정하는 방법에 대한 자세한 내용과 옵션은 MonitoredResource를 참고하세요. |
JSON | 없음 | 아니요 |
message |
이 로그 항목의 값으로 사용할 데이터입니다. 문자열을 지정하거나 JSON을 사용하여 더 구조화된 메시지를 로깅할 수 있습니다. | 문자열 또는 JSON | 없음 | 예 |
응답
메시지가 로그에 작성된 경우 None입니다. 그렇지 않으면 요청에서 오류가 반환됩니다. 확장 프로그램 디버깅도 참고하세요.
구성 참조
API 프록시에서 사용할 이 확장 프로그램을 구성하고 배포할 때는 다음을 사용하세요.
일반 확장 프로그램 속성
모든 확장 프로그램에는 다음과 같은 속성이 있습니다.
| 속성 | 설명 | 기본 | 필수 |
|---|---|---|---|
name |
확장 프로그램의 구성에 지정할 이름입니다. | 없음 | 지원됨 |
packageName |
Apigee Edge에서 제공하는 확장 프로그램 패키지 이름입니다. | 없음 | 지원됨 |
version |
확장 프로그램을 구성하는 확장 프로그램 패키지의 버전 번호입니다. | 없음 | 지원됨 |
configuration |
추가하는 확장 프로그램 관련 구성 값입니다. 이 확장 프로그램 속성의 속성을 참조하세요. | 없음 | 지원됨 |
이 확장 프로그램 패키지의 속성
이 확장 프로그램과 관련된 다음 구성 속성의 값을 지정합니다.
| 속성 | 설명 | 기본값 | 필수 |
|---|---|---|---|
projectId |
로그를 생성해야 하는 Google Cloud 프로젝트 ID입니다. | 없음 | 예 |
credentials |
Apigee Edge 콘솔에 입력하면 서비스 계정 키 파일의 콘텐츠가 됩니다. 관리 API를 사용하여 전송하면 서비스 계정 키 파일에서 생성된 base64로 인코딩된 값입니다. | 없음 | 예 |