모니터링 알림
Apigee Edge를 사용하면 이벤트 실패로 인해 오류 또는 실패가 발생할 때 알림을 syslog 또는 외부 모니터링 시스템/도구로 전달할 수 있습니다. 이러한 알림은 시스템 수준 또는 애플리케이션 수준 알림/이벤트일 수 있습니다. 애플리케이션 수준 알림은 대부분 생성된 이벤트를 기반으로 생성되는 맞춤 알림입니다. 네트워크 관리자는 일반적으로 맞춤 조건을 구성합니다. 알림에 대한 자세한 내용은 Apigee 지원팀에 문의하세요.
알림 기준 설정
알림을 생성해야 하는 기준을 설정합니다. 설정하는 내용은 하드웨어 구성에 따라 다릅니다. 기준은 용량과 관련하여 설정해야 합니다. 예를 들어 용량이 6GB인 경우 Apigee Edge가 너무 낮을 수 있습니다. 기준과 같거나 (=) 큰 (>) 기준을 사용하여 기준을 할당할 수 있습니다. 두 번 연속 알림 생성 사이의 시간 간격을 지정할 수도 있습니다. 시간/분/초 옵션을 사용할 수 있습니다.
시스템 수준 알림 설정 기준
다음 표에서는 기준을 설명합니다.
| 알림 | 권장 기준 | 설명 |
|---|---|---|
|
메모리 부족 |
500MB |
구성요소를 시작하기에 메모리가 너무 부족합니다. |
|
디스크 공간 부족 (/var/log) |
8GB |
디스크 공간이 너무 부족합니다. |
|
높은 부하 |
3+ |
실행 대기 중인 프로세스가 예기치 않게 증가했습니다. |
|
프로세스가 중지됨 |
해당사항 없음, 불리언 값(true 또는 false) |
시스템의 Apigee Java 프로세스가 중지되었습니다. |
Apigee 관련 포트 및 서드 파티 포트 확인
다음 포트를 모니터링하여 활성 상태인지 확인합니다.
- 관리 서버, 라우터, 메시지 프로세서의 포트 4526, 4527, 4528
- 관리 서버, 라우터, 메시지 프로세서의 포트 1099, 1100, 1101
- 라우터의 포트 8081 및 15999
- 메시지 프로세서의 포트 8082 및 8998
- 관리 서버의 포트 8080
다음 서드 파티 포트를 확인하여 활성 상태인지 확인합니다.
- Qpid 포트 5672
- Postgres 포트 5432
- Cassandra 포트 7000, 7199, 9042, 9160
- ZooKeeper 포트 2181
- SymasLDAP 포트 10389
각 Apigee 구성요소가 API 호출을 수신 대기하는 포트를 확인하려면 관리 서버 (일반적으로 포트 8080에 있음)에 다음 API 호출을 실행합니다.
curl -v -u username:password http://host:port/v1/servers?pod=gateway®ion=dc-1curl -v -u username:password http://host:port/v1/servers?pod=central®ion=dc-1curl -v -u username:password http://host:port/v1/servers?pod=analytics®ion=dc-1
이러한 명령어의 출력에는 아래와 비슷한 섹션이 포함됩니다.
http.management.port 섹션은 지정된 구성요소의 포트 번호를 제공합니다.
{ "externalHostName" : "localhost", "externalIP" : "111.222.333.444", "internalHostName" : "localhost", "internalIP" : "111.222.333.444", "isUp" : true, "pod" : "gateway", "reachable" : true, "region" : "default", "tags" : { "property" : [ { "name" : "Profile", "value" : "Router" }, { "name" : "rpc.port", "value" : "4527" }, { "name" : "http.management.port", "value" : "8081" }, { "name" : "jmx.rmi.port", "value" : "1100" } ] }, "type" : [ "router" ], "uUID" : "2d4ec885-e20a-4173-ae87-10be38b35750" }
로그 보기
로그 파일은 시스템의 이벤트/작업과 관련된 메시지를 추적합니다. 프로세스가 시작되고 완료되거나 오류 조건이 발생하면 메시지가 로그에 표시됩니다. 로그 파일을 보면 실패 상태에 도달하기 전후에 CPU, 메모리, 디스크, 부하, 프로세스 등 시스템 구성요소에 대한 정보를 얻을 수 있습니다. 또한 현재 시스템 문제의 원인을 파악하고 진단하거나 잠재적인 시스템 문제를 예측할 수 있습니다.
예를 들어 구성요소의 일반적인 시스템 로그에는 아래와 같이 다음 항목이 포함됩니다.
TimeStamp = 25/01/13 19:25 ; NextDelay = 30 Memory HeapMemoryUsage = {used = 29086176}{max = 64880640} ; NonHeapMemoryUsage = {init = 24313856}{committed = 57278464} ; Threading PeakThreadCount = 53 ; ThreadCount = 53 ; OperatingSystem SystemLoadAverage = 0.25 ;
/opt/apigee/conf/logback.xml 파일을 수정하여 서버를 다시 시작하지 않고도 로깅 메커니즘을 제어할 수 있습니다. logback.xml 파일에는 로깅 메커니즘이 구성 변경사항이 있는지 logback.xml 파일을 확인하는
빈도를 설정하는 다음 속성이 포함되어 있습니다.
<configuration scan="true" scanPeriod="30 seconds" >
기본적으로 로깅 메커니즘은 매분 변경사항을 확인합니다. `scanPeriod` 속성에 시간 단위를 생략하면 기본적으로 밀리초로 설정됩니다.
다음 표에서는 Apigee Edge Private Cloud 구성요소의 로그 파일 위치를 보여줍니다.
| 구성요소 | 위치 |
|---|---|
|
관리 서버 |
|
|
라우터 |
|
|
메시지 프로세서 |
|
|
Qpid 서버 |
|
|
Apigee Postgres 서버 |
|
|
새 Edge UI |
|
|
ZooKeeper |
|
|
SymasLDAP |
|
|
Cassandra |
|
|
Qpidd |
|
|
PostgreSQL 데이터베이스 |
|
메시지 프로세서의 디버그 로그 사용 설정
메시지 프로세서의 디버그 로그를 사용 설정하려면 다음 단계를 따르세요.
- 메시지 프로세서 노드에서
/opt/apigee/customer/application/message-processor.properties를 수정합니다. 해당 파일이 없으면 만듭니다. - 파일에 다음 속성을 추가합니다.
conf_system_log.level=DEBUG
- 메시지 프로세서를 다시 시작합니다.
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
apigee-monit 권장사항
apigee-monit를 사용하는 경우 Apigee는 다음을 권장합니다.
- 구성요소 모니터링을 중지하기 전에 백업 또는 업그레이드와 같이 구성요소를 시작하거나 중지하는 작업을 실행합니다.
cron과 같은 도구를 사용하여apigee-monit를 모니터링합니다. 자세한 내용은 apigee-monit 모니터링을 참고하세요.
모니터링 도구
Nagios, Collectd, Graphite, Splunk, Sumologic, Monit와 같은 모니터링 도구를 사용하면 전체 엔터프라이즈 환경과 비즈니스 프로세스를 모니터링할 수 있습니다.
| 구성요소 | Nagios | Collectd | Splunk | |
|---|---|---|---|---|
|
시스템 수준 검사 |
CPU 사용률 |
|||
|
사용 가능한 메모리/사용된 메모리 |
||||
|
디스크 공간 사용량 |
||||
|
네트워크 통계 |
||||
|
프로세스 |
|
|
||
|
API 검사 |
||||
|
JMX |
||||
|
자바 |
||||
|
로그 파일 |
||||
|
중요 이벤트 |
비율 제한 도달 |
|||
|
백엔드 서버 (Hybris 또는 SharePoint)에 연결할 수 없음 |
||||
|
FaaS (STS)에 연결할 수 없음 |
||||
|
경고 이벤트 |
SMTP 서버에 연결할 수 없음 |
|||
|
SLA 위반 |
||||