이벤트

EPM Integration Agent에서 수행하는 단계는 다음과 같습니다.

  1. Oracle Enterprise Performance Management Cloud에 지정된 EPM Integration Agent 데이터 소스에서 정의된 SQL을 처리합니다.

  2. SQL 결과 세트를 준비하고 정의된 데이터 소스에서 EPM Cloud로 전송합니다.

이 단계를 "추출" 및 "업로드" 단계라고 합니다. EPM Integration Agent의 스크립팅은 사용자정의 스크립트를 정의할 수 있는 이러한 두 프로세스 단계와 관련된 4가지 이벤트를 지원합니다. 이벤트는 다음과 같습니다.

이벤트 스크립트 이름 설명

추출 이전

BefExtract.py

BefExtract.groovy

에이전트 추출 처리 전에 실행되는 스크립트입니다. SQL 처리 전에 처리를 수행하려는 경우 이 스크립트에 해당 코드를 포함해야 합니다.

추출 이후

AftExtract.py

AftExtract.groovy

에이전트 추출 처리 후에 실행되는 스크립트입니다. 추출 후에 agent/MyData/data 로컬 폴더에 작업 ID와 dat 접미어를 포함하는 파일이 준비됩니다.

업로드 이전

BefUpload.py

BefUpload.groovy

데이터 파일이 EPM Cloud로 업로드되기 전에 실행되는 스크립트입니다. EPM Cloud로 업로드되는 파일은 agent/MyData/data 폴더의 <jobID>.dat 파일입니다.

업로드 이후

AftUpload.py

AftUpload.groovy

데이터 파일이 EPM Cloud로 업로드된 후에 실행되는 스크립트입니다.

주:

쓰기 되돌림 실행 중에 사용되는 EPM Integration Agent BefExportAftExport 이벤트에 대한 자세한 내용은 EPM Integration Agent 쓰기 되돌림 이벤트 스크립트를 참조하십시오.

샘플 스크립트는 에이전트가 설치된 로컬 시스템의 agent/Sample/jythonagent/Sample/groovy 폴더에서 사용할 수 있습니다. 시스템은 agent/MyData/scripts 폴더에 있는 스크립트의 인스턴스를 실행합니다. 예를 들어BefExtract 스크립트만 실행하려는 경우 이 스크립트만 agent/MyData/scripts 폴더에 저장합니다.

위에서 설명한 4가지 사용자정의 메소드를 구현하는 고유한 Java 클래스 구현을 생성할 수도 있습니다. 참조를 위해 Agent/Sample 폴더에 예제가 제공되지만, 이 방법을 선택하는 경우 다음을 고려합니다.

  • Java로 직접 통합 논리를 구현하려는 경우 agent/MyData/scripts 폴더에 스크립트를 저장할 필요가 없습니다. Java 구현은 항상 4가지 이벤트를 실행하며, 이러한 이벤트에 대한 스크립트 파일이 없을 경우 고객/파트너가 정의한 Java 논리를 처리합니다.

  • EPMAgentInterface 인터페이스를 구현해야 하는 Java 클래스 파일 CustomEvent.java를 생성할 수 있습니다. 예를 들어 public class CustomEventagent-interface.jar에 있는 EPMAgentInterface()를 구현합니다.

  • CustomEvent.classoracle.epm.aif.agent.agentinterface.CustomEvent.classagent-interface.jar 내에 패키지할 수 있습니다. agent-interface.jar 이외의 별도 jar에 패키지하는 경우 이 jar을 CUSTOM_CLASS_PATH 에이전트 시작 매개변수에 포함해야 합니다.

  • oracle.epm.aif.agent.agentinterface.CustomEvent.class에서 다른 클래스 이름을 사용하려는 경우 시작 매개변수 CUSTOM_INTERFACE_CLASS_NAME을 정규화된 Java 클래스 이름으로 설정해야 합니다.

  • agent-interface.jar은 개발 부서에서 정기 EPM Cloud 릴리스 주기 중에 수정사항이나 새 버전을 제공할 때마다 업데이트됩니다. 개발 및 테스트 목적으로 사용자정의 이벤트 클래스를 사용할 수 있지만, 프로덕션 배포에서는 사용자정의를 덮어쓰지 않도록 별도의 jar을 유지관리하는 것이 좋습니다.