환경 설정
1. 주요 테이블
-
영향도 분석 결과를 적용 및 조회하기 위해서는 DB에 아래 7개의 Table이 존재하여야 한다.
-
각 테이블에 대한 자세한 구성은 /resources/sql/ddl.sql 을 참조한다.
BXCM 영향도 분석 테이블 리스트 테이블명 설명 비고 BXM_DNI_RESOURCE
리소스 분석 정보
BXM_DNI_METHOD
메소드 분석 정보
BXM_DNI_METHOD_PARAM
메소드 파라미터 정보
BXM_DNI_METHOD_CALLEE
메소드 Callee 호출 정보
BXM_DNI_REST_CALLEE
메소드 REST API 호출 정보
BXM_DNI_SQL_INFO
DBIO SQL ID 분석 정보
BXM_DNI_SQL_TABLE_INFO
DBIO SQL ID TABLE 분석 정보
2. Admin 설정
-
영향도 분석 시에 사용하는 설정은 Admin Config Table에서 가져와서 사용하고 있다.
BXCM 영향도 분석 Admin 설정 리스트 Key Value(기본값) 설명 bxcm.admin.dni.exclude.callee
Na
영향도 분석에서 제외할 패키지
bxcm.admin.dni.exclude.resource
Na
영향도 분석에서 제외할 리소스
bxcm.admin.dni.include.callee
Na
영향도 분석의 대상이 되는 패키지
bxcm.admin.dni.query.count
1000
한번에 분석할 쿼리의 수
bxcm.admin.dni.web.client.name
DefaultWebClient
프로젝트에서 사용하는 web client
bxcm.admin.dni.web.client.info.class
bxcm.app.analyze.meta.visiter. DefaultWebClientMethodInvocationVisitor
해당 web client에 대응하는 visitor
bxcm.admin.dni.header.class
bxmc.request.client.PrependedSystemHeader
web client에서 사용하는 system header
-
아무 것도 설정하지 않은 경우
-
전체 프로젝트를 분석 대상으로 함
-
bxmc.request.client.DefaultWebClient와 bxmc.request.client.PrependedSystemHeader를 사용하는 web 호출만 분석
-
-
bxmc.request.client.DefaultAsyncWebClient를 사용하는 경우
-
key: bxcm.admin.dni.web.client.name, value: DefaultAsyncWebClient
-
-
custom web client를 사용한 경우
-
IRestTemplateInfoIntrfc를 구현한 클래스를 작성하여 함께 배포하고 bxcm.admin.dni.web.client.info.class 의 value 값으로 지정
-
-
프로젝트에서 header를 custom한 경우
-
key: bxcm.admin.dni.header.class, value: custom한 header class의 이름
-
-
프로젝트에서 사용하고 있는 다이나믹 쿼리의 분석이 부족한 경우
-
key: bxcm.admin.dni.dynamic.query.dft.rule
-
IParsingRuleIntrfc를 구현하여 다이나믹 태그를 삭제하고 일반적으로 parsing할 수 있는 쿼리로 변경할 수 있도록 할 수 있으며 value 로는 해당 class명을 구분자 , 를 사용하여 설정
-
-