EP Agent
EP(Environment Performance) Agent는 독립 실행형 Java 응용 프로그램입니다. EPAgent에는 Enterprise Manager로 전송할 데이터를 수집하기 위한 여러 기능이 있습니다. 상태 저장 스크립트 플러그 인이나 상태 비저장 스크립트 플러그 인을 등록하면 모든 데이터를 Enterprise Manager에 쉽게 통합할 수 있습니다. 예를 들어 로그 읽기나 CPU 또는 OS 통계와 같은 상태 비저장 데이터가 이에 해당합니다.
apmdevops104kr
EP(Environment Performance) Agent는 독립 실행형 Java 응용 프로그램입니다. EPAgent에는 Enterprise Manager로 전송할 데이터를 수집하기 위한 여러 기능이 있습니다. 상태 저장 스크립트 플러그 인이나 상태 비저장 스크립트 플러그 인을 등록하면 모든 데이터를 Enterprise Manager에 쉽게 통합할 수 있습니다. 예를 들어 로그 읽기나 CPU 또는 OS 통계와 같은 상태 비저장 데이터가 이에 해당합니다.
일부 경우에는 단일 EPAgent가 네트워크 포트를 통해 임의의 원격 시스템에서 수집된 메트릭 데이터를 수신하도록 구성할 수 있습니다. 예를 들어 에이전트 및 스크립트 설치 공간의 비용이 높은 환경에서 이를 적용할 수 있습니다. 또 다른 예로 데이터 수집을 위해 전체 EPAgent를 설치하기가 불편한 경우를 들 수 있습니다. 이러한 상황을 개선하기 위해 두 개의 포트를 구성할 수 있습니다. 한 포트는 XML 형식의 메트릭 데이터를 수신 대기합니다. 다른 포트는 HTTP GET 또는 RESTful과 같은 HTTP 요청을 통해 전송되는 데이터를 수신 대기합니다.
REST 호환 인터페이스는 보다 효율적인 RESTful PUT 작업을 통해 메트릭을 일괄 제출할 수 있게 해 줍니다.
- HTTP GET 요청대개 명령 프롬프트를 사용하여wget또는curl등의 일반적인 프로그램에서 전송되는 요청입니다. HTTP GET 요청은 단일 메트릭 제출에 사용되며 최신 RESTful 인터페이스보다 효율성이 떨어집니다. 신속하게 브라우저를 사용하여 전송 중인 메트릭을 볼 수 있습니다.
- XML 형식은 최대의 유연성을 제공하지만 좀 더 복잡하며 수동 소켓 관리가 필요합니다.
EPAgent 구현
EPAgent는 Java에서 구현되었으며 JVM(Java Virtual Machine)에서 실행됩니다. 이 에이전트는 JVM 기능을 사용하여 하위 프로세스를 호출하고 STDOUT 및 STDERR를 수신합니다. 하위 프로세스는 명령줄에서 호출할 수 있는 모든 유형의 스크립트 또는 실행 파일입니다. 예를 들어 C 또는 Perl 스크립트로 작성된 컴파일된 프로그램이 이에 해당합니다.
하위 프로세스의 응용 프로그램 또는 스크립트에서는 간단한 PRINT 함수를 실행하여 EPAgent와 통신합니다. 응용 프로그램이나 스크립트는 다음 다이어그램에 표시된 것과 같이 STDOUT에 출력하는 방법으로 EPAgent에 메트릭 데이터를 전달합니다.

EPAgent에서는 STDOUT를 사용하여 수신되는 텍스트가 특정 형식을 준수할 것으로 예상합니다. 이 형식은 단순 이름/값 쌍 형식이거나 XML 형식일 수 있습니다. EPAgent에 데이터를 전송하는 응용 프로그램이나 스크립트를 EPAgent 플러그 인이라고 합니다. EPAgent에는 자세한 메트릭 데이터를 제공하는 여러 기본 플러그 인이 포함되어 있습니다. 사용자 지정 플러그 인을 만들 수도 있습니다.
스크립팅 환경
EPAgent는 컴파일된 응용 프로그램을 포함하여 실행 가능한 모든 엔터티로부터 텍스트를 수신할 수 있습니다. 하위 프로세스에서 가장 유연한 방법은 Perl, KornShell 또는 rexx와 같은 스크립팅 환경을 사용하는 것입니다. 인터프리터식 스크립팅 환경은 구현하기가 쉬우며, 실제 데이터 원본에 대한 인터페이스나 라이브러리를 제공하기도 합니다. 예를 들어 관계형 데이터베이스, OS 하위 시스템(프로세스 테이블 및 파일 시스템으로 구성) 및 타사 제품이 이러한 환경에 해당할 수 있습니다.
스크립트는 다음과 같이 다양한 출처에서 정보를 수집합니다.
- 데이터베이스와 같은 중요한 응용 프로그램의 존재를 확인하기 위해 라이브러리 함수나 시스템 유틸리티를 호출합니다.
- 응용 프로그램 오류를 감지하기 위해 응용 프로그램 로그 파일을 검색하고 구문 분석합니다.
스크립팅 환경은 유연하기 때문에 EPAgent는 사실상 모든 출처에서 성능 및 관리 정보를 수집할 수 있습니다.

EPAgent에는 Perl을 사용하는 것이 바람직합니다. 다양한 플랫폼에서 Perl 인터프리터를 제공하며 운영 체제, 미들웨어 및 타사 제품에 대한 데이터 API를 폭넓게 지원합니다. EPAgent에는 다양한 기능을 수행하는 샘플 Perl 스크립트 집합이 포함되어 있습니다. 예를 들어 프로세스 가용성을 확인하거나, 디스크 성능 통계를 가져오거나, HTTP 로그를 읽는 등의 기능이 이에 해당합니다. 이러한 스크립트를 확장하여 다른 기능을 수행할 수 있습니다. PBD, EPAgent 스크립트 또는 JavaScript 계산기의 사용자 지정과 관련된 지원을 받으려면 CA APM Implementation Services에 문의하십시오.
네트워크 원본에서의 입력
EPAgent는 로컬 프로세스에서의 입력뿐 아니라 네트워크 원본에서의 입력도 허용할 수 있습니다. 예를 들어 EPAgent는 에이전트 자체에서는 실행할 수 없는 네트워크로 연결된 프로세스에서 정보를 수집할 수 있습니다. 예를 들어 네트워크 포트를 사용하여 모니터링 정보를 제공하는 C++ 백엔드 시스템이 이러한 프로세스에 해당합니다. 또 다른 예로 웹 URL에 정기적으로 데이터를 게시하는 프로세스도 이에 해당합니다.
EPAgent 및 Introscope
EPAgent는 독립 실행형 프로세스로 실행됩니다. EPAgent는 Java, .NET 및 PHP 에이전트와 마찬가지로 Enterprise Manager 관리 및 성능 메트릭을 전송합니다. EPAgent는 다음 다이어그램에 표시된 것과 같이 Enterprise Manager로 데이터를 전달합니다.

EPAgent를 사용하면 응용 프로그램 환경의 전반적인 모습을 더욱 잘 파악할 수 있습니다. EPAgent를 사용하면 응용 프로그램 환경의 비 Java 및 비 .NET 부분에서 데이터를 수집할 수 있습니다. EPAgent 메트릭은 Java 및 .NET 메트릭과 함께 표시됩니다.
지원되는 플러그 인
EPAgent는 상태 저장 및 상태 비저장 플러그 인을 모두 지원합니다. 플러그 인의 표준 오류 채널은 오류를 로깅합니다. EPAgent는 이 로깅 기능을 통해 다른 오류와 마찬가지로 이 오류 출력을 로깅할 수 있습니다. 모든 기본 플러그 인에는 Perl 버전 5.00503 이상이 필요합니다.
사용 가능한 플러그 인 유형은 다음과 같습니다.
- 상태 저장이 플러그 인은 일반적으로 EPAgent가 시작되면 작동하기 시작해 무한정 실행되는 장기 실행 스크립트(데몬)입니다. 이러한 상태 저장 플러그 인은 표준 플러그 인 출력 채널을 통해 데이터를 Introscope로 언제든 되돌려 보낼 수 있습니다. 상태 저장 플러그 인이 종료되면 EPAgent가 해당 플러그 인을 다시 시작합니다.
- 상태 비저장이 플러그 인은 실행 간 지연 시간으로 지정되는 반복 일정 및 빈도에 따라 실행되도록 설계되었습니다. 상태 비저장 플러그 인은 일반적으로 데이터 수집을 목적으로 단기간 실행되는 스크립트입니다. 이 플러그 인은 표준 출력 채널을 통해 EPAgent로 데이터를 전송한 후 종료됩니다. EPAgent는 상태 비저장 플러그 인의 인스턴스가 한 번에 하나만 실행되도록 하기 위한 특별한 오류 확인을 수행하지 않습니다. 상태 비저장 플러그 인은 비교적 짧은 시간 내에 실행을 마치고 완료되도록 설계해야 합니다.
EPAgent에는 최소 구성으로 사용할 수 있는 기본 플러그 인 라이브러리가 포함되어 있습니다. 각 플러그 인의 기능과 지원되는 운영 체제는 다음과 같습니다.
플러그 인 | 기능 | 지원되는 사양 |
프로세스 가용성 확인 | 지정된 이름으로 실행 중인 프로세스를 검색합니다. | Solaris |
OS 수준 디스크 통계 | 읽기/쓰기, 트랜잭션 시간, 대기 시간 백분율, 디스크 용량 등을 보고합니다. | Solaris |
Apache 로그 판독기 | HTTP 오류 수, 트랜잭션 수, 평균 트랜잭션 크기를 보고합니다. | Solaris |
WebLogic 로그 판독기 | 오류 수 및 경고 수를 보고합니다. | Solaris |
WebSphere 로그 판독기 | 오류 수 및 경고 수를 보고합니다. | Solaris |
IIS 로그 판독기 | 유형별 오류 수, 제공된 페이지 수, IP 주소별 사용자 수를 보고합니다. | Windows |
HTTP 서비스 가용성 HTTPS 서비스 가용성 | 연결 성공/실패, 연결 왕복 시간 및 평균 처리량/대역폭을 보고합니다. | Solaris |
Solaris 통계 | 유틸리티를 통해 제공되는 모든 통계(I/O 통계, 모든 장치에 대한 네트워크 통계, 가상 메모리 통계 등)를 보고합니다. | Solaris |
또한 EPAgent는 임의의 프로그램 및 플러그 인에서 데이터를 수집할 수 있습니다. 사용자 지정 플러그 인의 유일한 요구 사항은 지원되는 두 가지 형식 중 하나로 출력을 생성해야 한다는 것입니다.