제니퍼 3.0 릴리즈 노트
제니퍼 3.0에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
[] 안 숫자는 각 버전 별 마이너(minor) 버전을 의미한다.
추가 기능
[3.0] AGENT가 Stop된 상태에서도 Profile내용을 볼 수 있도록 함
[3.0] 과거 데이터를 조회할 때 현재 일자를 알 수 있도록 수정
[3.0] Point데이터를 저장하는 방식을 변경
[3.0] F5를 Key를 사용한 Refresh기능 추가
[3.0] URL Additional Key에 등록된 문자열이 너무 길 경우 일정길이의 문자열만 잘라내는 기능 추가
[3.0] 제니퍼 DB를 admin DB와 data DB 분리
[3.0] 과거 데이타를 자동 삭제하는 기능 추가
[3.0] 제니퍼 서버가 사용하는 Connection Pool Size를 설정 가능하게 함
[3.0] 성능향상을 위해 PERF_X테이블이 PERF_X_01 ~ PERF_X_31로 분리
[3.0] Admin DB에 2차통계 테이블을 추가
[3.0] 제니퍼DB에 테이블 추가: S_PERF_X, S_VISIT_DAY, S_ERRORS
[3.0] 2차데이타분석 메뉴 추가
[3.0] Template에 대한 Export/Import 기능을 추가
[3.0] Admin DB로 데이터를 조회할 수 있는 기능 추가
[3.0] 보고서의 특정 아이템(ITEM)을 필요에 따라 활성/비활성할 수 있는 기능 추가
[3.0] Report.bat 명령어를 통한 보고서 오프라인 생성가능
[3.0] 스케쥴러에 의한 자동보고서 생성 및 서로 다른 서버로부터 발생되는 보고서의 중앙집중적 관리가 가능
[3.0] 에러 중에서 JDBC관련 자원 LEAK발생에 대한 Sendsms수행 가능하도록 함
변경 사항
[3.0] lwst관련 옵션을 lwst30.conf로 이동 (이전방식과 동일한 방식 가능, lwst30.conf와 w11.cont에 지정된 경우에는 w11.conf가 우선순위가 높음)
버그 해결
[3.0] agent간의 시간의 차이로 인해 발생하는 화면상의 깨짐 현상 수정
[3.0] DB Access 도중 NullPointerException이 발생되는 현상 수정
[3.0] V3.0에서 나오지 않던 CRUD매트릭스정보 보여질 수 있도록 수정
[3.0] 템플릿 작성도중 SQL테스트 수행시 일부 템플릿 파라미터 값을 SQL테스트 화면으로 넘기지 못하는 버그 수정
제니퍼 3.2.0 릴리즈 노트
제니퍼 3.2.0에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
제니퍼 3.2.0은 사용자 편의성 향상을 위해서 사용자 인터페이스를 개선하는데 초점을 두었다. 따라서 새롭게 추가한 기능이나 해결한 버그 등은 거의 없다.
추가 기능
자세한 내용은 제니퍼 사용자 매뉴얼을 참조한다. 드래그 & 드랍을 통한 사용자 정의 화면 구성 기능을 추가하였다. 버튼에 대한 단축키 기능을 추가하였다. 차트를 포함한 웹 페이지에 대한 인쇄 기능을 추가하였다. 시스템 엔지니어용 메뉴에서 Wmond를 이용한 CPU 모니터링 On/Off 기능을 추가하였다. 자세한 내용은 제니퍼 사용자 매뉴얼 [시스템 리소스 상태 모니터링 | 시스템 CPU 모니터링]을 참조한다.
변경 사항
자세한 내용은 제니퍼 사용자 매뉴얼을 참조한다.
제니퍼 사용자 인터페이스에 대한 전면적인 변경을 통해 사용자 편의성을 향상시켰다. 사용자 관리, 권한 관리, 메뉴 관리 등에 대한 변경을 통해 사용자 편의성을 향상시켰다. 영어, 한글, 일본어 메시지를 정리하였다. 래몬 사용자 인터페이스에 대한 전면적인 변경을 통해 사용자 편의성을 향상시켰다.
버그 해결
해결한 버그는 없다.
제니퍼 3.2.0.1 릴리즈 노트
제니퍼 3.2.0.1에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가 기능
제니퍼 버전 확인
제니퍼 버전을 확인하려면 JENNIFER_HOME/server/bin/version.bat(혹은 version.sh) 스크립트를 실행한다.
변경 사항
설정 파일 영문화
JENNIFER_HOME/server/bin/jennifer.properties 파일과 JENNIFER_HOME/agent/w11.conf 파일과 JENNIFER_HOME/agent/lwst30.conf 파일과 JENNIFER_HOME/remon/conf/remon.conf 파일에서 설명을 한글에서 영어로 수정하였다.
단 한글 설명이 있는 JENNIFER_HOME/server/bin/jennifer.properties.ko 파일과 JENNIFER_HOME/agent/w11.conf.ko 파일과 JENNIFER_HOME/agent/lwst30.conf.ko 파일과 JENNIFER_HOME/remon/conf/remon.conf.ko 파일을 추가하였다.
앞으로는 설정 파일에 대한 설명은 제니퍼 관리자 매뉴얼을 참조한다.
ignore_url 옵션 추가
제니퍼 에이전트 ignore_uri 옵션을 ignore_url 옵션으로 수정하였다. 제니퍼 에이전트가 내부적으로 두 옵션을 동일하기 취급하기는 하지만 앞으로는 ignore_url 옵션만을 사용해야 한다.
메시지 수정
외래어 표기법 등을 고려하여 한글 메시지를 다음과 같이 수정하였다.
수정 전 | 수정 후 |
---|---|
트렌젝션 | 트랜잭션 |
어플리케이션 | 애플리케이션 |
데이타 | 데이터 |
액티브 서비스 목록 변경
액티브 서비스 목록에서 SQL 정보를 기본적으로는 숨기는 것으로 수정하였다.
수정 전
수정 후
수정한 액티브 서비스 목록 화면에서 SQL 보이기/숨기기 영역을 클릭하면 SQL 정보가 나타나거나 사라진다.
실시간 애플리케이션 모니터링 변경
실시간 모니터링 상위 메뉴의 애플리케이션 메뉴에서 응답시간합의비율(%) 칼럼을 삭제하였다.
수정 전
수정 후
외부 트랜잭션(External Transaction)
실시간 모니터링 상위 메뉴의 애플리케이션 메뉴와 통계 분석 상위 메뉴의 애플리케이션 메뉴에서 조회 항목 선택 라디오 버튼 트랜잭션(Transaction)을 외부 트랜잭션(External Transaction)으로 수정하였다.
수정 전
수정 후
보고서 템플릿 인쇄 버튼 기능 변경
보고서 템플릿을 HTML 형식으로 실행시켜 보는 경우에 오른쪽 상단 인쇄 버튼을 누르면 바로 웹 브라우저 인쇄 기능을 실행하도록 하였다.
수정 전
수정 후
제니퍼소프트 홈페이지 링크 추가
로그인 화면과 사용자 인터페이스 하단 영역에 제니퍼소프트 홈페이지 링크를 추가하였다.
일본어 폰트 변경
일본어 폰트를 MS PGothic 폰트로 수정하였고, 일본어 폰트 크기는 12px로, 글자 간의 간격은 0px로 수정하였다.
summary 스크립트 변경
JENNIFER_HOME/server/bin /summary.bat(혹은 summary.sh) 파일에 파라미터 체크 로직을 추가하였고 사용법 설명을 기술하였다.
래몬 설정 파일 위치 변경
래몬 JENNIFER_HOME/remon/conf 디렉토리에서 remon.conf 파일을 제외한 설정 파일들을 JENNIFER_HOME/remon/misc 디렉토리로 옮겼다.
불필요한 파일 삭제
사용하지 않는 JENNIFER_HOME/server/bin/password.conf 파일과 JENNIFER_HOME/server/bin/password.conf.backup 파일을 삭제하였다.
버그 해결
스피드 바 차트가 사라지는 현상 해결
간헐적으로 스피드 바와 스피드 미터 차트가 화면에서 사라지는 현상을 수정하였다.
보고서 템플릿 수정
아이템 등록 화면에서 바닥글을 파라미터로 수정하였다.
수정 전
수정 후
다국어 지원을 위해서 보고서 템플릿 등록 화면 파라미터 필드에 대한 기본 값에서 한글을 제거하였다.
수정 전
수정 후
통계 분석 - 애플리케이션
통계 분석 상위 메뉴의 애플리케이션 메뉴와 장애 진단 상위 메뉴의 에러/예외 감지 메뉴에서 첫번째 차트에서 날짜를 선택하지 않고 두번째 차트에서 시간만을 선택했을 때 하단 테이블 목록에 데이터가 올바르게 나타나지 않는 현상을 수정하였다.
파이어 폭스 웹 브라우저에서 Agent 목록 필터링
모니터링 대상 서버에 대한 Agent 목록 필터링이 파이어 폭스 웹 브라우저에서 정상적으로 동작하도록 수정하였다.
제니퍼 3.2.0.2 릴리즈 노트
제니퍼 3.2.0.2에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가 기능
RV 차트 추가
장애 진단 상위 메뉴의 RVChart(Realtime Visit User chart) 메뉴를 통해서 사용자 별 애플리케이션 사용 현황을 모니터링할 수 있다.
RV 차트
화면상의 하나의 사람 아이콘(man icon)은 시스템을 사용하는 하나의 USER를 표현한다. 그래서 하나의 man-icon은 그 사람이 수행한 트랜잭션을 포함하고 있다. 트랜잭션은 화면상에서 표현되는 시간 범위내(10분)에서 수행된 것들에 한 한다.
Drag에 의해 man-icon을 선택할 수 있는데 하나만 선택하면 man-icon이 포함하고 있는 트랜잭션들을 보여주고 여러개를 선택하면 각 사용자의 마지막 트랜잭션을 보여준다.
화면의 좌측상단의 숫자는 화면상의 man-icon의 수를 의미한다. 따라서 RVChart에서는 지정시간내의 방문자 수를 실시간으로 확인할 수 있다.
- 입력 항목 설명
최대 처리 시간,시간주기.최대큐 크기는 XView의 설명을 참조
WORKING USER : 제니퍼가 부여한 사용자 ID를 가진 사용자만 보여줌 FIRST VISIT USER : 최초 방문자(제니퍼가 부여한 사용자 ID가 없음)만 보여줌 ALL USER : 최초 방문자와 이미 방문한적이 있는 사용자 모두를 보여줌
RA 차트 추가
장애 진단 상위 메뉴의 RAChart(Realtime Application Chart) 메뉴를 통해서 애플리케이션 별 사용 현황을 모니터링할 수 있다.
RA 차트
RAChart(Realtime Application Chart)는 단위 시간 내에서의 어플리케이션 수행 내역을 볼 수 있다.
하나의 A-icon은 하나의 어플리케이션을 표현한다. 그래서 A-icon하나를 선택하면 해당 어플리케이션이 수행된 내역을 볼 수있다.
- 입력 항목 설명
최대 처리 시간,시간주기.최대큐 크기는 XView의 설명을 참조
사용자 정의 화면에서 텍스트, 박스, 선 등의 사용
사용자 정의 화면에서 텍스트, 박스, 선 등을 이용할 수 있도록 하였다.
사용자 정의화면 차트
사용자 정의 화면의 차트 선택 영역 오른쪽 하단에 있는 4개의 아이콘을 통해서 텍스트, 박스, 수평선, 수직선 등을 화면에 추가할 수 있다.
사용자 정의화면
차트와 동일하게 오른쪽 하단에 있는 첫번째 옵션을 통해서 텍스트, 박스, 선 등의 색상, 두께 등을 설정할 수 있다.
차트 설정
Wmond를 이용한 CPU 사용률 차트에서 개별 CPU 순서 설정
Wmond로 CPU 사용률을 보여줄 때 그 순서를 설정할 수 있도록 하였다. 제니퍼 서버의 wmond_view_list 옵션을 통해서 그 순서를 지정할 수 있다.
wmond_view_list=D11,D12,W11,W12,w11,w12
wmond_view_list 옵션으로 지정하지 않은 wmond는 화면에 나타나지 않는다.
애플릿 자바 메모리 사용 현황 표시
애플릿이 사용하는 자바 메모리 현황을 화면 상단 오른쪽에 표시하였다.
애플릿 자바 메모리 사용현황
해당 영역을 클릭하면 자바 메모리에 대한 가비지 컬렉션을 수행한다.
변경 사항
상단 메뉴 조정
사용자 컴퓨터 해상도에 따라서 화면 오른쪽에 있는 메뉴를 클릭할 수 없는 현상을 해결하기 위해서 상단 메뉴 구성을 아래와 같이 조정하였다.
언어 변경 영역을 화면 맨 상단으로 옮겼다. 메뉴 길이가 화면 해상도 크기보다 커지면 메뉴에 대해서 줄 바꿈을 하도록 하였다. 언어로 프랑스어를 선택했을 때 오른쪽에 있는 일부 메뉴가 깨지는 문제를 해결하였다.
상단 메뉴 조정
금일 서버별 시간당 호출건수 차트
실시간 모니터링 상단 메뉴의 업무 처리량 메뉴 하단에 있는 금일 서버별 시간당 호출건수 차트에서 사용자가 모니터링 대상 서버를 변경했을 때 차트의 내용이 실시간으로 변경되도록 하였다.
시간당 호출건수 차트
서블릿 혹은 JSP에 대한 재귀 호출 발생에 대한 로그 기록
서블릿 혹은 JSP에 대한 반복적인 재귀 호출이 일어났을 때 제니퍼 에이전트의 recurrsive_call_trace 옵션을 true로 지정하면 스택 트레이스 정보를 제니퍼 에이전트 로그 파일에 기록하도록 하였다.
제니퍼 에이전트의 recurrsive_call_trace_size 옵셥으로 로그 파일에 기록할 스택 트레이스의 최대 글자 수를 설정할 수 있다. 이 옵션을 설정하지 않으면 최대로 10,000자까지 로그 파일에 기록한다.
래몬에 제니퍼소프트 홈페이지 링크 추가
로그인 화면과 사용자 인터페이스 하단 영역에 제니퍼소프트 홈페이지 링크를 추가하였다.
제니퍼 3.2.0.3 릴리즈 노트
제니퍼 3.2.0.3에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가 기능
RAChart 화면 옵션
RAChart의 출력 방식을 결정하는 화면 옵션을 추가하였다. 좌표상의 하나의 A 아이콘은 동일한 애플리케이션에 대한 모든 호출을 표현한다. 하나의 A 아이콘에 대한 X 좌표는 해당 어플리케이션의 마지막 트랜젝션이 종료된 시간으로 고정되어 있지만 Y 좌표는 마지막 트랜젝션의 응답시간(LAST), 또는 평균 응답시간(AVG) 혹은 최대 응답시간(MAX) 중에서 선택적으로 지정할 수 있다.
RA 차트
REMON Event Handler추가
remon.event2.Save remon.event2.SaveAndSave remon.event2.tux.TuxPQ remon.event2.tux.TuxPSR
래몬 과거 데이터 조회
데이터 분석 상위 메뉴의 래몬 데이터 분석 메뉴에서 래몬을 통해서 수집한 과거 데이터를 조회할 수 있다.
래몬 과거 데이터 조회
검색 조건 - 검색에 필요한 조건을 입력한다. 래몬 목록 버튼을 통해서 Agent 및 스크립트 필드에 적절한 값을 입력할 수 있다. Agent 필드에 값을 입력하지 않으면 모든 래몬 서버에 존재하는 동일한 이름을 갖는 스크립트에 대해서 검색을 수행한다. * 검색 - 검색 버튼을 클릭하면 해당 조건에 맞는 래몬 데이터가 하단에 나타난다.
제니퍼 데이터베이스 테이블 재구성(Reorganize)
아파치 더비를 제니퍼 데이터베이스로 사용하는 경우에는 테이블 재구성을 수행할 수 있다. 데이터 분석 상위 메뉴의 테이블 재구성 메뉴를 클릭하면 각 테이블이 사용하고 있는 파일 사이즈와 재구성을 통해서 축소할 수 있는 파일 사이즈를 확인할 수 있다. 전체 테이블 크기에 따라서 이 정보를 도출하는데 1분 이상이 소요될 수 있다.
데이타베이스 테이블 재구성
확보 가능한 크기 - 재구성을 통해서 축소할 수 있는 파일 사이즈를 의미하며 이 크기가 0 보다 큰 경우에만 옆에 실행 링크가 나타난다.
실행 - 해당 링크를 클릭하면 새로운 팝업 화면이 나타나면서 해당 테이블에 대한 재구성을 수행한다. 테이블 크기에 따라서 재구성에 1분 이상이 소요될 수 있다.
차트에서 팝업 창 열기
URL_LINK 파라미터를 통해서 차트를 클릭했을 때 팝업창을 통해서 특정 URL로 이동할 수 있도록 하였다. 이 때 URL_LINK 파라미터를 설정하는 방법은 제니퍼 3.2 사용자 매뉴얼 [사용자 정의 화면 구성 | 차트 옵션 설정]을 참조한다.
변경 사항
래몬 목록을 이용한 사용자 정의 차트 설정
래몬 목록을 이용해서 사용자 정의 차트를 설정할 수 있도록 하였다.
래몬 목록
래몬 목록 버튼을 클릭하면 아래 그림과 같은 팝업 화면이 나타난다.
래몬 선택
선택 - 체크 박스를 선택한 후에 선택 버튼을 클릭하면 해당 스크립트와 Agent 값이 설정된 후에 팝업 창이 닫힌다.
새로 고침 - 새로 고침 버튼을 클릭하면 래몬 데이터 목록을 초기화한다.
버그 해결
Request Additional Key
AJAX 방식 호출에 대해서 url_additional_request_keys 옵션이 정상적으로 적용되지 않는 문제를 해결하였다.
제니퍼 3.2.1.0 릴리즈 노트
제니퍼 3.2.1.0에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가 기능
ADF 사용자 정의 차트 UI 변경
제니퍼 3.2.1.0에서 가장 큰 변화는 래몬 데이터를 실시간으로 모니터링하는 이퀄라이저, 라인, 리얼타임바 등의 차트에 대한 기능 강화이다. 차트에 대한 색상 지정 및 임계치에 대한 처리, 래몬 서버와 스크립트 정지에 따른 X 표시 등의 기능을 추가하였다.
또한 Dyna 유형의 차트를 deprecate 하였고 이퀄라이저, 라인 차트 등에서 해당 기능을 수용할 수 있도록 하였다. 따라서 제니퍼 3.2.1.0 이후에는 Dyna 유형 차트를 사용하지 않도록 한다.
Line 차트
Line 차트를 제어하기 위한 확장 속성을 추가하였다. 확장 속성에 대한 지정 방법은 제니퍼 3.2 사용자 매뉴얼 [사용자 정의 화면 구성 | 차트 옵션 설정]을 참조한다.
COLORS=#FF0000,#0000FF WARNING_VALUE_OVER_THAN=100 WARNING_VALUE_LOWER_THAN=100 WARNING_COLOR=#FF0000 LINE_WIDTH=2 URL_LINK=/xxx.jsp OMIT_BG_LINE=true OMIT_TITLE=true OMIT_BORDER=true
특정 데이타 선택하기
차트 하단에 있는 라벨(num1, num2, num3, num4) 앞의 사각형 부분을 클릭하면 해당 데이타만 화면에 보인다.
현재 값 보여주기
일반 차트와 동일하게 사용자 정의 차트에 대해서도 차트 오른쪽에 바를 통해서 현재 값을 표기할 수 있도록 하였다.
선 색상 변경하기
COLORS 옵션을 이용하여 각 라인의 색상을 지정할 수 있다. 콤마(,)를 구분자로 여러 개의 색상을 지정할 수 있으며 지정된 색상을 반복적으로 사용하여 각 라인의 색상을 결정한다. 따라서 하나의 색상만을 지정하면 모든 라인의 색상이 동일하게 된다.
색상변경하기
경고(임계치) 설정하기
간단한 경고 조건을 지정하고 해당 조건을 만족하는 경우에 사용할 색상을 지정할 수 있다. 예를 들어서 아래와 같이 지정하면 값이 100 이상이거나 5 이하인 경우에 해당 선 색상이 #FF0000으로 변경된다.
링크 설정하기
차트를 마우스로 더블클릭하는 경우에 특정 페이지가 새로운 파업창에 나타나게 할 수 있다.
ENABLE_POPUP=true URL_LINK=http://www.jennifersoft.com
ENABLE_POPUP 옵션만을 true로 지정하면 차트를 더블 클릭했을때 아래와 같이 pop_remon_detail.jsp를 새로운 팝업창에서 연다.
http://127.0.0.1:7900/pop_remon_detail.jsp?agent=AG01&script=S02&isPopup=true
각각의 데이타를 구별하여 팝업창을 열 수는 없다.
만약 URL_LINK 옵션을 지정하면 해당 URL이 새로운 팝업창에서 열린다. 제니퍼 서버에 있는 JSP 파일뿐만 아니라 외부 URL도 지정할 수 있는데 이 때는 http://로 시작해야 한다.
기타 차트 제어
차트 제목을 제거하려면 OMIT_TITLE 옵션을 true로 지정한다. 차트 배경에 있는 구획선을 제거하려면 OMIT_BG_LINE 옵션을 true로 지정한다. 차트 외곽선을 제거하려면 OMIT_BORDER 옵션을 true로 지정한다. 아래와 같이 차트 제목도 변경할 수 있다.
이퀄라이저 차트
이퀄라이저 차트를 제어하기 위한 확장 속성을 추가하였다. 확장 속성에 대한 지정 방법은 제니퍼 3.2 사용자 매뉴얼 [사용자 정의 화면 구성 | 차트 옵션 설정]을 참조한다.
COLORS=#FF0000,#0000FF
WARNING_VALUE_OVER_THAN=100
WARNING_VALUE_LOWER_THAN=100
WARNING_COLOR=#FF0000
URL_LINK=/xxx.jsp
OMIT_TITLE=true
OMIT_BORDER=true
위 옵션의 동작 방식은 라인 차트와 동일하다.
런타임바 차트
런타임바 차트는 하나의 값에 대한 변화를 막대와 평균 선을 이용하여 보여준다.
런타임바 차트를 제어하기 위한 확장 속성을 추가하였다. 확장 속성에 대한 지정 방법은 제니퍼 3.2 사용자 매뉴얼 [사용자 정의 화면 구성 | 차트 옵션 설정]을 참조한다.
BAR_VALUE_DISPLAY_FACTOR=3
WARNING_VALUE_OVER_THAN=190
LINE_WIDTH=2
COLORS=#FF0000,#0000FF
WARNING_VALUE_OVER_THAN=100
WARNING_VALUE_LOWER_THAN=100
WARNING_COLOR=#FF0000
BAR_VALUE_DISPLAY_FACTOR 옵션은 해당 영역의 값을 보여주는 간격을 설정한다. 위 그림에서는 3개당 하나씩 값을 보여주고 있다. 기타 다른 옵션의 동작 방식은 라인 차트와 동일하다.
Number 차트
Number 차트에서 글자 크기를 지정하는 옵션을 추가하었다.
NUMBER_HEIGHT=12
ADF 차트 동시 초기화
제니퍼 클라이언트는 한번 이상 화면에 보여진 사용자 정의 차트에 대한 데이타만을 제니퍼 서버로부터 전송받는다. 그런데 만약 로그인 후에 자동으로 모든 사용자 정의 차트와 관련한 데이터를 제니퍼 서버로부터 전송받으려면 제니퍼 서버의 enable_adf_view_sync_start 옵션을 true로 설정한다.
단 enable_adf_view_sync_start 옵션을 true로 설정하도라도 최소한 1개의 사용자 정의 차트가 화면에 보여진 이후부터 데이터 전송을 시작한다.
래몬 스크립트 속성에 필드 지정 옵션 추가
래몬 스크립트에서 직접 차트에 보여질 필드 값을 지정할 수 있도록 하였다. 아래와 같이 fieldname 속성에 콤마(,)를 구분자로 필드 이름을 지정할 수 있다.
//############################################## //# REMON Script Header //#$ id = SCR01 //#$ agent = RA11 //#$ type = number //#$ js-object(1) = remon.js.Counter //#$ js-object(2) = remon.js.Random //#$ fieldname = num1,num2,num3,num4 //#$ autostart = false //#$ save = false //#$ transfer = true function main(a, b) { var f = new Random(200); return f.num + "," + f.num + "," + f.num + "," + f.num; }
이 경우에는 사용자 정의 차트를 만들 때 데이터와 표시 필드에 값을 입력하지 않아도 차트에 표시가 된다.
데이터와 표시 필드를 값을 입력하지 않아도 자동으로 그래프의 라벨을 표시해 준다.
단 숫자형 데이타에 대해서만 필드를 지정할 수 있다.
래몬 기본 Handler 정리
래몬에서는 데이타를 가공하기 위해서 Handler를 사용할 수 있다. 이 Handler 중에서 제니퍼가 기본으로 제공해 주는 Handler는 다음과 같다.
제니퍼가 제공하는 Handler는 지속적으로 업데이트 될 것이기 때문에 사용시 반드시 확인이 필요하며, 사용자 고지 없이 임의로 수정될 수 있다.
handler.basic.ByPass handler.basic.Save handler.basic.SaveAndPass handler.basic.ByPass handler.basic.Stream handler.tux.TuxPQ handler.tux.TuxPSR handler.tux.TuxXView
ADF 데이타 저장 방식 변경
제니퍼 서버가 래몬을 통해 수집하는 데이타를 ADF 데이타라고 한다. 제니퍼 서버는 ADF 데이타를 데이터베이스 테이블에 저장하고 이것을 향후에 보고서 작성에 사용할 수 있다.
제니퍼 3.2.1.0에서는 이러한 ADF 데이타를 데이터베이스 테이블에 모두 저장하지 않도록 하는 옵션을 추가하였다.
enable_remon_data_save = false
제니퍼 서버의 enable_remon_data_save 옵션을 false로 설정하면 제니퍼 서버는 ADF 데이터를 데이터베이스 테이블에 저장하지 않는다.
이전 버전에서는 래몬 스크립트 아이디가 SCR01이면 제니퍼 서버는 ADF_SCR01이라는 테이블에 ADF 데이터를 저장하였다. 그런데 제니퍼 3.2.1.0에서는 아래와 같이 설정하면 제니퍼 서버는 날짜별로 분활하여 ADF_SCR01_01~ ADF_ASCR01_31 테이블에 데이터를 저장한다.
#default: 1.0 remon_save_version = 2.0
또한 위와 같이 설정하면 첫째 ADF 데이타 중 String 타입의 데이타는 저장하지 않는다. 그리고 래몬 스크립트에서 fieldname 속성을 지정하면 테이블 컬럼 이름이 해당 fieldname으로 만들어진다.
//############################################## //# REMON Script Header //#$ id = SCR02 //#$ type = number //#$ fieldname=num1,num2,num3 function main( a, b){ return "10,20,30"; }
fieldname을 설정하면 위 그림처럼 해당 필드명이 테이블의 칼럼명으로 사용된다.
만약 fieldname에서 선언한 field수가 데이터 수보다 적으면 D1, D2, , ,와 같이 Dn을 필드명으로 사용한다.
RemonX
이전 버전의 remonx.c와 tailrmx.c를 통합하여 하나의 remonx_v2.c로 만들었다.
remonx [-multi] [-tcp] -h host_ip -p port -s script_id -a agent_id -N/S/D -d data -f fieldname
- -multi
tail -f a.log | remonx -multi -h 127.0.0.1 -p 7701 -s S01 -a A01 -S
stdin으로 다량의 데이타를 줄 단위로 전달할 때 사용하는 옵션이다. tailrmx와 remonx -multi는 동일한 기능을 한다.
- -tcp
remonx는 기본으로 UDP 방식으로 데이터를 전송한다. 그러나 데이타량이 64k를 초과하는 경우에는 UDP를 사용할 수 없기 때문에, TCP 방식으로도 데이타를 전송할 수 있도록 하였다.
-multi 옵션을 설정하지 않은 상태에서 -tcp 옵션을 설정하면 매번 TCP를 연결하고 데이타를 전송하고 닫는 과정을 반복하기 때문에 TCP 관련 튜닝이 필요할 수 있다. 그렇다고 반드시 -multi 옵션과 -tcp 옵션을 함께 사용해야 한다는 의미는 아니다.
- -fieldname
스크립트에 대한 fieldname을 지정할 수 있다. 그러나 이옵션은 -N,-D를 설정한 경우, 즉 데이타 타입이 숫자인 경우에만 의미가 있다.
다수의 에이전트 모니터링을 위한 차트 롤링
다수의 에이전트를 모니터링 하기 위해서 스피드 미터(부하 분산), 액티브 서비스 이퀄라이저, CPU 이퀄라이저 차트 등에 롤링 기능을 추가하였다. 기본적으로 하나의 제니퍼 서버가 20개 이상의 에이전트를 모니터링하면 관련 차트들이 자동으로 롤링된다.
ADF를 이용해서 만든 차트는 롤링 속도와 갯수 등을 지정할 수 있다.
ROLLING_ID=TOTAL ROLLING_VIEW_COUNT=20 ROLLING_MOVING_COUNT=1 ROLLING_MOVING_TIME=1000
ROLLING_ID 옵션으로 차트 롤링시에 같이 움직여야하는 차트 그룹을 지정할 수 있다. 기본값은 TOTAL이고 동일한 ROLLING_ID 옵션 값을 갖는 차트는 동일하게 동작한다.
ROLLING_VIEW_COUNT 옵션으로 차트가 한번에 보여줄 에이전트 수를 지정할 수 있다. 기본값은 20이고 에이전트의 수가 해당 값보다 작으면 차트가 롤링되지 않는다.
ROLLING_MOVING_TIME 옵션으로 롤링 주기를 지정하고, ROLLING_MOVING_COUNT 옵션으로 롤링 주기마다 이동할 에이전트 숫자를 지정한다. 만약 사용자가 특정 에이전트를 선택하면 롤링이 멈추고, 사용자가 선택을 해제하면 다시 롤링을 시작한다.
선택한 에이전트 이름 표시
라인 차트에서 특정 선을 선택했을 때 제니퍼 서버의 SHOW_SELECTION 옵션을 true로 지정하면 선택된 선에 대한 에이전트 이름을 차트 오른쪽 상단에 보여주도록 하였다.
SHOW_SELECTION=true
jennifer.jar 파일 분리
제니퍼 에이전트는 Servlet 라이브러리와 JDBC 라이브러리가 동일한 클래스 로더에 의해서 로딩되는 환경에서 최적으로 동작한다. 특히 enable_jdbc_oracle_dependency_used 옵션을 true로 설정한 경우에는 해당 라이브러리들이 반드시 같은 클래스 로더에 의해서 로드되어야 한다.
그러나 오라클 ERP 10.1.3과 같이 Servlet 라이브러리와 JDBC 라이브러리가 동일한 클래스로더에 의해서 로드되지 않는 환경에서 제니퍼 에이전트를 설치하려면 jennifer.jar를 jenniferweb.jar와 jenniferjdbc.jar로 분리해서 설치하여야 한다.
java -jar jennifer.sertup.jar -d jennifer.jar
위의 명령어를 JENNIFER_HOME/agent 디렉토리에서 수행하면 jenniferweb.jar와 jenniferjdbc.jar가 생성된다.
기존 jennifer.jar 대신 jenniferweb.jar와 jenniferjdbc.jar를 각 클래스 로더 환경에 맞게 설치한다. 즉 jenniferweb.jar는 servlet.jar 앞에 설치하고, jenniferjdbc.jar는 jdbc.jar가 위치한 곳에 같이 설치하면 된다.
제니퍼 3.2.1.0 이후 버전의 jennifer.jar를 분리 설치해야 한다.
제니퍼 에이전트 그룹핑 지원
제니퍼 3.2.1.0에서 새롭게 제공하는 그룹핑은 에이전트 그룹핑을 의미한다. 즉 애플리케이션이나 클라이언트 아이피단위의 그룹핑이 아닌 여러 에이전트를 하나의 그룹으로 묶는 방식이다.
그룹 설정 방법
그룹핑은 제니퍼 서버의 agent_group 옵션을 통해서 아래와 같이 지정한다.
agent_group = @01:W11,W12; @02:W13,W14
하나의 그룹 지정은 그룹명과 에이전트 목록으로 이루어지는데 그룹 지정은 세미콜론(;)으로 구분하고 에이전트 간에는 콤마(,)로 구분한다.
그룹명으로는 @01 ~ @99까지만 사용할 수 있고, 에이전트와 동일하게 agent_alias_list 옵션을 통해서 별명을 부여할 수 있다.
한 에이전트가 두개 이상의 그룹에 속할 수는 없다.
따라서 위의 설정으로 인해서 W11, W12 에이전트는 @01 그룹에 W13, W14 에이전트는 @02 그룹에 할당되였다.
그룹핑의 동작 원리
그룹핑은 지정한 에이전트들로부터 정보를 수집하지만 그외의 동작 방식이나 저장 방식은 일반 에이전트와 동일하다. 그러나 그룹 에이전트에 대한 통계 데이타는 제니퍼 서버에 의해 수집되며 제니퍼 에이전트와는 독립적으로 동작한다. 따라서 운영시에 필요에 따라 그룹을 설정할 수는 있지만 이미 설정된 그룹을 변경하거나 제거할 때는 반드시 설정 후 제니퍼 서버를 재시작하여야 한다.
그룹AGENT에 대한 통계 데이타는 제니퍼 서버에 의해 수집되며 제니퍼 에이전트와는 독립적으로 동작한다. 따라서 운영시에 필요에 따라 그룹을 설정할 수있으나 만약 기존 설정된 그룹을 변경하거나 제거할 때는 반드시 설정후 제니퍼 서버를 재기동해야 한다.
그룹 에이전트의 활용 범위
기본 대시보드에서는 그룹을 사용할 수 없다. 그룹 에이전트에 대한 정보는 ADF로 구성한 사용자 대시보도에서만 볼 수 있다. 그룹을 사용할 수 있는 실시간 차트는 스피드 바, 스피드 미터, 액티브 서비스, 동시단말 사용자, 평균 응답시간, 대기 시간 등이다. 그리고 실시간 차트 외에도 하루를 표현하는 일자별 차트에서는 그룹 에이전트를 지정하여 사용할 수 있다.
그리고 자바힙 메모리, 혹은 전체 처리량, 전체 응답시간 등과 같이 전체를 의미하는 차트에서는 그룹 에이전트를 사용할 수 없다.
그룹핑 vs 제니퍼 서버 분활
제니퍼 3.2.1.0 이전 버전에서는 그룹핑을 지원하지 않아서 작은 업무라도 별도 통계가 필요할 경우에는 제니퍼 서버를 분리해야 했다. 이러한 문제는 모니터링 대상 서버가 많지 않은 경우에는 문제가 되지 않지만 모니터링 대상 서버가 많아지면 관리가 어려워지는 문제가 있었다. 제니퍼 3.2.1.0 이후 부터는 그룹핑을 통해서 이 문제를 쉽게 해결할 수 있게 되었다.
그러나 제니퍼 서버의 성능 등의 이슈로 인해서 모든 경우를 그룹핑으로 해결하려고 해서는 안된다. 예를 들어 모니터링 대상 서버가 수십개 이상이거나 TPS가 200 TPS를 넘는 경우에는 하나의 제니퍼서버로 모두 처리하기 보다는 여러 개의 제니퍼 서버를 사용하는 것을 권장한다.
액티브 프로파일 내용 보기
액티브 서비스에 대한 상세 정보에서 현재까지 수집된 프로파일 정보를 보여주는 기능을 추가하였다.
수집된 프로파일 내용이 많으면 화면에서 보여주는 속도가 느려지기 때문에 기본적으로는 프로파일 내용 중에서 마지막 50라인만을 보여준다. 제니퍼 서버의 active_profile_max_line 옵션을 통해서 이를 조정할 수 있다.
active_profile_max_line=50
ADF 차트 좌표 조정 ADF로 구성한 화면에서 개별 차트의 위치를 명시적으로 조정할 수 있는 기능을 추가하였다. ADF로 구성한 화면 하단에 있는 변경 버튼을 누르면 새로운 팝업 창에서 차트들의 위치를 보여준다. 이 때 ADF로 구성한 화면에는 좌표 영역이 나타난다.
좌표 표시 영역의 상단 왼쪽을 기준으로 Top은 0, Left는 0이다. 차트를 왼쪽으로 이동하려면 Left 값을 감소시키고 오른쪽으로 이동하려면 Left 값을 증가시킨다. 그리고 차트를 위로 이동하려면 Top 값을 감소시키고 아래로 이동하려면 Top 값을 증가시킨다. 해당 필드에서 값을 수정한 후에 Enter 키를 누르거나 수정 버튼을 클릭하면 값이 변경된다. 변경한 내용은 자동으로 ADF 화면에도 반영된다.
Top, Left, Width, Height 등에 입력하는 값은 절대 값이 아니라 1024 pixel을 기준으로 사용자 웹 브라우저의 넓이에 맞추어지는 상대적인 개념이다.
ADF Import/Export 기능
ADF로 구성한 화면 정보를 XML 파일로 Import하고 Export할 수 있는 기능을 추가하였다. ADF 편집 화면 오른쪽 하단에 있는 Import와 Export 버튼을 이용해서 해당 작업을 수행한다.
Import 버튼을 누르면 XML 파일을 업로드할 수 있는 폼이 하단에 나타난다. 초기화 체크 박스를 선택하면 기존 ADF 화면에 있는 차트를 모두 삭제하고 XML 파일에 설정된 차트를 신규로 생성한다. 초기화 체크 박스를 선택하지 않으면 기존 ADF 화면에 있는 차트를 삭제하지 않고 XML 파일에 설정된 차트를 신규로 생성한다.
Import하는 차트 중에 사용자 정의 차트에 기반한 차트가 있음에도 불구하고 해당 사용자 정의 차트가 없는 경우에는 XML 파일에 지정된 정보를 바탕으로 사용자 정의 차트를 자동으로 생성한다.
Export 버튼을 누르면 ADF로 구성한 화면 정보를 XML 파일로 저장할 수 있다. 이 XML 파일을 다른 곳에서 사용할 수 있으며 좌표 등을 수정하여 다시 Import할 수도 있다. XML 파일의 양식은 아래와 같다.
최상위 태그는 charts 이며 제니퍼 서버 버전을 나타내는 version 속성과 Export를 한 날을 나타내는 exportDate 속성을 가지고 있다.
<?xml version="1.0" encoding="UTF-8"?> <charts version='3.2.0.3' exportDate='20071116/214809'> </charts>
해당 XML 파일은 UTF-8 인코딩 형식으로 저장된다.
charts 태그는 개별 차트를 의미하는 여려 개의 하위 chart 태그를 가지고 있다.
<chart isUserDefined='false' chartId='memory.java.day' left='358' top='9' width='300' height='80'> </chart>
isUserDefined - 사용자 정의 차트 여부로 true인 경우에는 하단에 remon 태그가 존재하여야 한다.
chartId - 차트 유형
left - 좌우 위치
top - 상하 위치
width - 넓이
height - 높이
chart 태그는 하위 config 태그를 통해서 개별 차트에 대해서 지정한 옵션을 표시한다. 이 때 |을 구분자로 여러 개의 옵션을 구분한다.
<chart> <config>SERVER=ALL_EXCEPT_TOT|MARGIN_LEFT=32|TITLE=자바 프로세스 메모리 사용량</config> </chart>
chart 태그에 있는 isUserDefined 속성이 true인 경우에는 하위 remon 태그를 통해서 사용자 정의 차트 정보를 표시한다.
<chart isUserDefined='true'> <remon name='SPACE' agent='WAS' script='DB01' type='LINE' data='2' label='data_hit' maxValue='0' buffer='50'> </remon> </chart>
remon 태그의 각 속성은 사용자 정의 차트를 생성할 때 입력하는 필드에 매핑된다. XML 파일을 Import 할 때 해당 사용자 정의 차트가 존재하지 않으면 이 정보를 기반으로 사용자 정의 차트를 자동으로 생성한다.
ADF 유형 추가
테이블과 ON_OFF_SIMPLE
동일 사용자 로그인 방지
제니퍼 서버에서 prevent_duplicated_login 옵션을 true로 지정하면 동일한 아이디로 중복 로그인을 하는 것을 방지할 수 있다.
팝업 메뉴 추가
특정 메뉴를 누르면 새로운 웹 브라우저 창에서 해당 페이지를 표시할 수 있도록 하였다. 메뉴 관리 화면에서 유형으로 O:URL Popup Menu를 선택하면 된다.
디버그 용 화면 추가
debug로 시작하는 디버그 용 JSP 파일을 추가하였다.
debug_5m.jsp
debug_chart.jsp
debug_domain.jsp
debug_remon_stream.jsp
debug_reorg_30.jsp
debug_stat_xvw.jsp
변경 사항
제니퍼 데이터베이스 외부키 제약 조건 제거
제니퍼 데이터베이스에서 외부키 제약 조건을 제거하였다.
Wmond를 이용한 CPU 사용률 차트에서 2개 이상의 필터 적용
JSP 파일을 직접적으로 수정하는 경우에 Wmond를 이용한 CPU 사용률 차트에 대해서 2개 이상의 필터를 사용할 수 있도록 하였다. 아래와 같이 filter 속성에 콤마(,)를 구분자로 2개 이상을 지정하면 된다.
<jennifer:wmondChart title="Some Servers" filter="A,B,CD" width="995" height="120" unitWidth="12"/>
w, W, D, other 등의 필터는 기존과 동일하게 동작한다.
ADF 화면에서 차트 여백 제거
ADF 화면으로 구성한 차트의 CSS margin과 padding 속성 값을 0으로 변경하여 불필요한 여백을 제거하였다.
숫자 입력 필드 필터링 조건 수정
숫자 만을 입력할 수 있는 필드에 대해서 왼쪽/오른쪽 방향키와 백스페이스 버튼을 입력할 수 있도록 하였다.
enable_including_standalone_statistics 옵션 설정시 사용자 관련 차트 숨기기
enable_including_standalone_statistics 옵션을 true 설정하면 통계분석 상위 메뉴에서 방문자 수, 대기 시간과 관련한 차트들을 숨기도록 하였다.
액티브 서비스 목록 디자인 변경
액티브 서비스 목록 디자인을 변경하였다.
IP 칼럼 넓이 증가 - IP 칼럼의 넓이를 크게하였다.
애플리케이션 정보 보여주기 - 제니퍼 3.0에 있던 app_alias.conf 파일을 이용한 애플리케이션 정보 설정 기능을 다시 추가하였다.
액티브 서비스 경과 구간 별 색상 변경 - 액티브 서비스 경과 구간 별 색상을 달리하였다
Server Control Center 정보 추가
아래 그림과 같이 number_of_udp_callstack_workers, number_of_udp_runtime_queue, number_of_udp_summary_queue, number_of_udp_callstack_queue 등의 정보를 Server Control Center 팝업 창에 추가하였다.
사용자 정의 차트에 입력 가능한 에이전트 값 길이 변경
사용자 정의 차트를 생성할 때 입력 가능한 에이전트 값 길이를 50자에서 100자로 수정하였다.
하위 버전에서 업그레이드를 하는 경우에는 데이터분석 상위 메뉴의 쿼리수행기 메뉴에서 관리자 데이터베이스 REMON 테이블을 아래와 같이 수정한다.
ALTER TABLE REMON ALTER AGENT SET DATA TYPE VARCHAR(100);
버그 해결
XView 차트 깜빡임 문제 해결
트랜잭션 uuid가 0인 TX가 호출되면 XView 차트가 깜빡이는 문제를 해결하였다.
IBM JVM 1.5에서 LWST가 실행되지 않는 문제 해결
IBM JVM1.5에서 LWST가 실행되지 않는 문제를 해결하였다.
JDK 1.3에서 LWST 빌드와 관련한 문제 해결
JDK 1.3에서 LWST 빌드를 수행할 때 발생하는 아래와 같은 문제를 해결하였다.
build classes… [/usr/java131/jre/lib/rt.jar] Exception in thread "main" java.lang.NoSuchFieldError: org.apache.bcel.generic.PUSH: field INSTRUCTIONS not found at org.apache.bcel.generic.PUSH.(Unknown Source) at com.javaservice.lwst.setup.g.d.a.a(Unknown Source) at com.javaservice.lwst.setup.g.d.c.a(Unknown Source) at com.javaservice.lwst.setup.g.c.a(Unknown Source) at com.javaservice.lwst.setup.e.a.a(Unknown Source) at com.javaservice.lwst.setup.e.a.a(Unknown Source) at com.javaservice.lwst.setup.Main.main(Unknown Source)
tx_server enable 문제 해결
tx_server로 설치한 제니퍼 에이전트에서 enable 옵션을 false로 설정해도 트랜잭션 수행정보를 전송하는 문제를 해결하였다.
enable_including_standalone_statistics 옵션 설정시 시스템엔지니어용 대시보드가 깨지는 문제 해결
enable_including_standalone_statistics 옵션을 true로 지정하면 MS IE 6.0에서 대시보드 상위 메뉴의 시스템엔지니어용 화면이 깨지는 문제를 해결하였다.
프린트 옵션 조정 창이 깨지는 문제 해결
화면 상단 오른쪽의 프린트 옵션 조정 창이 깨지는 문제를 해결하였다.
userlogin_count_limit 옵션 문제 해결
userlogin_count_limit 옵션을 지정하면 제니퍼 서버에 로그인을 할 수 없는 문제를 해결하였다.
파일/소켓 화면에서 검색 조건을 유지하지 못하는 문제 해결
장애진단 상위 메뉴의 파일/소켓 메뉴에서 검색 조건을 유지하지 않는 문제를 해결하였다.
제니퍼 3.2.1.1 릴리즈 노트
제니퍼 3.2.1.1에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다. 제니퍼 에이전트를 업그레이드 하려면 lwst30.jar 파일과 jennifer.jar 파일을 함께 반영해야 한다. 그러나 제니퍼 서버는 제니퍼 에이전트와 별개로 업그레이드 할 수 있다.
추가 기능
재시작 없이 수정할 수 있는 lwst 옵션
모니터링 대상 애플리케이션을 재시작하지 않고 제니퍼 에이전트 설정 파일에서 아래 옵션들을 수정할 수 있다.
lwst_enable
lwst_trace_local_port
lwst_trace_remote_port
socket_simple_trace
lwst_debug
메모리 릭 의심 에이전트에 대한 경고 기능
메모리 릭 의심 에이전트에 대한 경고 기능을 추가하였다. 제니퍼 서버 설정 파일에서 아래 옵션을 설정한다.
jvm_heap_warning_limit : 95 (단위는 %) jvm_heap_check_time : 3600 (단위는 초) jvm_heap_warning_interval : 3600 (단위는 초)
기본 설정에 따르면 모니터링 대상 애플리케이션의 자바 힙 메모리 사용량이 95%를 초과한 상태로 1시간 이상 지속되면 1시간에 한번씩 메모리릭이 의심된다는 경고를 발생시킨다.
통계 화면 UI 개선
차트 구성 변경
통계 화면에서 동일 정보에 대해서 왼쪽에 있는 차트에서는 TOT 정보를 보여주고 오른쪽에 있는 차트에서는 에이전트 별 정보를 보여주도록 하였다. 그리고 오른쪽 차트에서는 드랍다운 박스를 통해서 특정 에이전트만을 선택할 수 있도록 하였다. 그리고 메모리 화면에서 일일 시스템 메모리 사용량 차트와 일일 자바프로세스 메모리 사용량 차트의 위치를 변경하였다.
라인 차트에서 에이전트 선택 기능
실시간 화면에 있는 라인 차트와 동일하게 통계 화면에 있는 라인 차트에서도 특정 에이전트를 선택할 수 있도록 하였다.
날짜 선택에 따른 차트 변경 속도
상단에 있는 일자별 호출건수를 선택했을 때 하단에 있는 차트들이 해당 일 정보를 보여주는 속도를 개선하였다.
리스트 유형 리포트에 대한 엑셀 다운로드 기능
리스트 유형 리포트 아이템에 대해서 엑셀로 다운로드할 수 있는 기능을 추가하였다.
변경 사항
LWST 옵션 수정
lwst_enable
lwst_enable 옵션을 추가하였다. 기본 값은 true이고 이 옵션을 false로 설정하면 프로파일 추적, 소켓 추적, 자바 컬렉션 객체에 대한 추적 등을 하지 않는다.
lwst_debug
디버깅을 상세하게 하기위한 lwst_debug 옵션을 추가하였다. 기본 값은 false이고 이 옵션을 true로 설정하면 에이전트에 부하가 유발되지만 아래 항목에 대해서 상세한 정보를 로깅한다. 따라서 제니퍼 에이전트를 설치시에 제한적으로 유용하게 활용할 수 있다.
로딩되는 모든 클래스에 대한 로깅
소켓 추적시 스택 정보 로깅
자바 컬렉션 객체 추적시 스택 정보 로깅
활성 자바 객체 추적시 스택 정보 로깅
파일 오픈 정보 로깅
제니퍼 데이터베이스 ADF 관련 테이블에 대한 PK 제약 조건 제거
연속 데이터 저장을 가능하게 하기 위해서 ADF 테이블에서 PK 제약 조건을 제거하였다.
Local Derby(inprocess)에 외부 접근 가능하도록 설정(NET SERVER)
JENNIFER_HOME/server/bin /jennifer.properties에서 아래의 속성을 설정하면 inprocess로 동작하는 더비데이터베이스를 외부에서 네트웍으로 접근할 수있게 된다. 자세한 사항은 http://db.apache.org/derby/ 참조
system.derby.drda.startNetworkServer=true system.derby.drda.portNumber=1527
ENABLE_INCLUDING_STANDALONE_STATISTICS 옵션 설정에 따른 UI 변경
제니퍼 서버의 설정파일에서 ENABLE_INCLUDING_STANDALONE_STATISTICS 옵션을 true로 설정하면 사용자와 관련한 정보가 보이지 않도록 하였다. 우선 실시간 경고내역창에서 금일방문자수와 동시단말사용자수 정보가 나타나지 않는다.
그리고 방문자수, 대기시간, 동시단말사용자수와 관련한 차트들도 보이지 않는다.
버그 해결
마이크로소프트 윈도우 환경에서 2GB 이상의 메모리에 대한 모니터링
2GB 이상의 메모리를 사용하는 마이크로소프트 윈도우 환경에서 메모리를 정확하게 모니터링하지 못하는 문제를 해결하였다. 따라서 이 경우에는 JENNIFER_HOME/agent/jni/windows/jennifer20_over2G.dll를 사용하면 문제를 해결할 수 있다.
통계 화면에서 일자별 서비스 요청률 차트 버그 해결
통계 화면에서 일자별 서비스 요청률 차트가 오늘 날짜의 데이터만을 보여주는 버그를 해결하였다.
리포트에 바 그래프 유형 추가
리포트 아이템 유형으로 바 그래프를 추가하였다.
제니퍼 3.2.1.2 릴리즈 노트
제니퍼 3.2.1.2에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가기능
에이전트 CharacterSet 인코딩 설정
제니퍼에이전트(WAS)의 Character셋이 제니퍼서버와 다른 경우 에이전트쪽에 -Djennifer.encoding=KSC5601 이라는 옵션을 추가한다.
일본어의 경우에는 -Djennifer.encoding=Shift_JIS 를 설정한다.
에이전트 현재 디렉토리 설정
제니퍼에이전트는 현재 디렉토리에 ./.data/라는 디렉토리를 만들고 필요한 상태정보를 저장하고 있다. 그런데 현재 디렉토리에 쓰기 권한이 없는 경우를 위하여 새로운 경로를 정의하도록 옵션을 추가하였다.
-Djennifer.fileroot=/tmp 이라고 설정하면 /tmp디렉토리 아래에 .data디렉토리를 생성하고 에이전트 상태정보를 저장한다.
버그 해결
일본어 메시지 데이터 바인딩
일본어 메시지에서 데이터가 올바르게 바인딩되지 않는 버그를 해결하였다.
액티브 서비스 상세 화면에 좌우 스크롤바가 나타나는 현상
액티브 서비스 상세 화면에 좌우 스크롤바가 나타나는 버그를 해결하였다.
제니퍼 3.2.1.3 릴리즈 노트
제니퍼 3.2.1.3에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가 기능
애플리케이션 이름(주로 URL)이 너무 많아서 제니퍼 서버에서 OOM이 발생하는 현상을 해결하기 위한 옵션 추가
아쿠아 로직 등의 솔루션은 애플리케이션 이름(URL)에 사용자 정보 등이 포함되어서 애플리케이션 이름이 감당할 수 없는 정도로 크게 증가한다. 예를 들어, 3일을 운영했는데 130만개의 애플리케이션 이름이 생긴다. 이 결과로 제니퍼 서버에서 OOM이 발생한다.
아쿠아 로직의 경우는 애플리케이션 이름 앞단에 사용자 정보가 추가된다.
/x/gate/user_123_01_21/http;//ap1/xx
이 경우에는 제니퍼 에이전트에 추가한 uri_starter 옵션으로 특정 패턴 이후부터 애플리케이션 이름을 사용할 수 있도록 하였다. 예를 들어, 제니퍼 에이전트의 uri_starte 옵션을 /http로 설정하면 애플리케이션 이름은 다음과 같이 된다.
/http;//ap1/xx
변경 사항
CPU 모니터링 통계 화면
사용자가 콤보박스로 특정 에이전트를 선택했을 때 관련된 모든 차트를 함께 변경되도록 하였다.
JNI 라이브러리 정리
JENNIFER_HOME/agent/jni 디렉토리에 있는 JNI 라이브러리를 정리하였다.
버그 해결
실시간 애플리케이션 목록이 올바르게 정렬되지 않는 문제
실시간 애플리케이션 목록이 올바르게 정렬되지 않는 문제를 해결하였다.
제니퍼 3.2.1.4 릴리즈 노트
제니퍼 3.2.1.4에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가 기능
제니퍼 에이전트 ignore_rollback_uncommited_error 옵션 추가
java.sql.Statement 객체의 execute 메소드로 SELECT 쿼리를 수행하는 경우에 제니퍼가 WARNING_JDBC_UN_COMMIT_ROLLBACK 예외를 감지하는 것을 방지하는 옵션을 추가하였다.
제니퍼 에이전트 uri_separator 옵션 추가
URI와 쿼리 파라미터 사이의 구분자가 ? 아닌 경우에 특정 구분자를 지정하는 옵션을 추가하였다.
변경 사항
하위 메뉴에 대한 접근 권한이 없는 경우에 대한 처리
사용자가 A 메뉴에 대한 접근 권한은 가지고 있지만 A 메뉴에 지정된 기본 하위 B 메뉴는 접근할 수 없는 경우에 3.2.1.3에서는 B 메뉴에 연결된 화면에 접근할 수 있었다. 3.2.1.4에서부터는 B 메뉴가 아닌 접근 가능한 A 메뉴의 하위 메뉴로 연결되도록 변경하였다.
버그 해결
X-View 일자별에서 23시 55분부터 24시 00분까지를 검색하지 못하는 문제
X-View 일자별에서 23시 55분부터 24시 00분까지를 검색하지 못하는 문제를 해결하였다.
제니퍼 3.2.2.0 릴리즈 노트
제니퍼 3.2.2.0에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가 기능
웹로직 + 오라클 의존적인 JDBC 코드에 대한 모니터링 기능
웹로직 WAS에서 다음과 같은 코드로 개발된 애플리케이션에 제니퍼 에이전트를 설치하고, 유형 1로 JDBC 모니터링을 하면 java.lang.ClassCastException 예외가 발생한다.
Connection con = ... PraparedStatment stmt = ... ... ((OraclePreparedStatement) stmt).setBLOB(1, xx); .... rs = stmt.getResultSet(); BLOB blob = null; if (rs.next()) { blob = ((OracleResultSet) rs).getBLOB(1); }
이런 경우에 JDBC 모니터링을 하려면 제니퍼 에이전트의 옵션을 다음과 같이 설정한다.
enable_jdbc_oracle_dependency_used = true jdbc_unwrap_method = getVendorConnection
jdbc_unwrap_method 옵션은 WAS를 재시작하지 않고 설정할 수 있다.
단, 이 경우에는 제니퍼에 의한 java.sql.PreparedStatement 객체와 java.sql.Statement 객체의 자동 Close 기능이 동작하지 않는다.
변경 사항
제니퍼 에이전트 Alias 적용에 따른 정렬
제니퍼 에이전트에 Alias를 적용하면 관련 부분이 모두 Alias로 나오도록 하였다. 그리고 정렬 기준도 Alias를 따르도록 하였다.
한글 설정 파일 제거
ko로 끝나는 한글로 되어 있는 설정 파일을 제거하였다.
제니퍼 3.2.2.1 릴리즈 노트
제니퍼 3.2.2.1에서 추가한 기능, 변경 사항 그리고 해결한 버그를 설명한다.
추가 기능
ERROR_SERVICE_QUEUING 경보에 대해서 별도의 경보음 사용하기
ERROR_SERVICE_QUEUING 경보에 대해서 다른 경보음을 사용할 수 있도록 하였다. 이를 설정하는 방법은 다음과 같다.
경보음으로 사용할 파일을 105_1.au라는 이름으로 JENNIFER_HOME/server/webapps/ROOT/sound 디렉토리에 추가한다.
JENNIFER_HOME/server/webapps/ROOT/chart.xml 파일을 다음과 같이 수정한다.
<chart id="etc.activeService.real" name="T201"> ... ... <param name="ALERT_ACTIVE_MAX_VALUE" value="100"/> </chart>
버그 해결
제니퍼 서버에서 500 에러가 발생하는 현상
특정 플랫폼에 설치한 제니퍼 서버에서 500 에러가 발생하는 문제를 해결하였다.
제니퍼 3.2.2.2 릴리즈 노트
제니퍼 3.2.2.2에서 해결한 버그를 설명한다.
버그 해결
JRockit 1.5.0_06에서 DriverManager 클래스의 getCallerClassLoader 메소드를 호출할 때 에러가 발생하는 현상
JRockit 1.5.0_06 버전에서 DriverManager 클래스의 getCallerClassLoader 메소드를 호출할 때 에러가 발생한다.(JRockit 1.5.0_10 이후 버전에서는 발생하지 않는다.) 이 문제를 해결하기 위한 패치 파일을 제공한다. 제니퍼 에이전트를 설치할 때 -Xbootclasspath/p:…;lwst.jrockit150_06.jar;lwst.jdk.jar 형태로 패치한다.
웹로직 + 오라클 데이터베이스 환경에서 java.lang.CastException 발생하는 현상
웹로직 + 오라클 데이터베이스 환경에서 getCLOB(int)나 getCursor(int)를 호출하는 경우에 java.lang.CastException이 발생하는 문제를 해결하였다.
제니퍼 3.2.2.3 릴리즈 노트
제니퍼 3.2.2.3에서 해결한 버그를 설명한다
버그 해결
자바 힙 메모리릭 의심 경보가 올바르게 발령되지 않는 현상
자바 힙 메모리릭 의심 경보가 올바르게 발령되지 않는 문제를 해결하였다. 자바 힙 메모리릭 의심 경보와 관련한 옵션은 다음과 같다.
jvm_heap_warning_limit = 95 jvm_heap_check_time = 3600 jvm_heap_warning_interval = 3600
그런데 jvm_heap_check_time과 jvm_heap_warning_interval의 단위가 초인데, 너무 큰 값이 설정되어 있어서 올바르게 동작하지 않았다. 따라서 이에 대한 기본 값을 다음과 같이 수정하였다.
jvm_heap_check_time = 5 jvm_heap_warning_interval = 60