요소기술 - DB서비스모니터링

개요

DB서비스모니터링은 DB서버의 서비스 상태를 주기적으로 모니터링하는 기능을 제공한다.

모니터링하고자 하는 DB서버는 DataSource가 전자정부 프레임웍에 Bean으로 등록되어 있어야 한다.

설명

  • DB서비스모니터링은 DB서비스모니터링을 등록하기 위한 목적으로 DB서비스모니터링의 등록, 수정, 삭제, 조회, 목록조회의 기능을 수반한다.
  ① DB서비스모니터링목록조회 : DB서비스모니터링으로 정의된 정보를 최근 등록 순서대로 조회하고, 그 결과 목록을 화면에 반영한다.
  ② DB서비스모니터링등록 : DB서비스모니터링정보를 등록하고, 등록 결과를 조회한다.
  ③ DB서비스모니터링수정 : 기 등록된 DB서비스모니터링정보의 항목들을 수정한다.
  ④ DB서비스모니터링삭제 : 기 등록된 DB서비스모니터링정보를 삭제한다.
  ⑤ DB서비스모니터링조회 : 등록된 DB서비스모니터링정보를 조회한다. 
  ⑥ DB서비스모니터링로그목록조회 : DB서비스모니터링로그로 정의된 정보를 최근 등록 순서대로 조회하고, 그 결과 목록을 화면에 반영한다.
  ⑦ DB서비스모니터링조회 : 등록된 DB서비스모니터링로그정보를 조회한다. 

관련소스

유형대상소스명비고
Controlleregovframework.com.utl.sys.dbm.web.EgovDbMntrngController.javaDB서비스모니터링을 위한 컨트롤러 클래스
Serviceegovframework.com.utl.sys.dbm.service.EgovDbMntrngService.javaDB서비스모니터링을 위한 서비스 인터페이스
ServiceImplegovframework.com.utl.sys.dbm.service.impl.EgovDbMntrngServiceImpl.javaDB서비스모니터링을 위한 서비스 구현 클래스
DAOegovframework.com.utl.sys.dbm.service.impl.DbMntrngDAO.javaDB서비스모니터링을 위한 데이터처리 클래스
Modelegovframework.com.utl.sys.dbm.service.DbMntrng.javaDB서비스모니터링을 위한 Model 클래스
Modelegovframework.com.utl.sys.dbm.service.DbMntrngLog.javaDB서비스모니터링로그정보를 위한 Model 클래스
스케쥴링egovframework.com.utl.sys.dbm.service.EgovDbMntrngScheduling.javaDB서비스모니터링로그정보를 위한 스케쥴링 클래스
스케쥴링egovframework.com.utl.sys.dbm.service.DbMntrngChecker.javaDB서비스모니터링로그정보를 위한 스케쥴링 클래스
기타egovframework.com.utl.sys.dbm.service.DbMntrngResult.javaDB서비스모니터링로그정보에 대한 결과를 처리하기 위한 클래스
JSP/WEB-INF/jsp/egovframework/utl/sys/dbm/EgovDbMntrngList.jspDB서비스모니터링목록조회를 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/dbm/EgovDbMntrngRegist.jspDB서비스모니터링 등록을 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/dbm/EgovDbMntrngUpdt.jspDB서비스모니터링 수정을 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/dbm/EgovDbMntrngDetail.jsp등록된 DB서비스모니터링을 조회하기 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/dbm/EgovDbMntrngLogList.jspDB서비스모니터링로그목록조회를 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/dbm/EgovDbMntrngLogDetail.jsp등록된 DB서비스모니터링로그을 조회하기 위한 jsp페이지
Query XMLresources/egovframework/mapper/com/utl/sys/dbm/EgovDbMntrng_SQL_altibase.xmlDB서비스모니터링을 위한 Altibase용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/dbm/EgovDbMntrng_SQL_cubrid.xmlDB서비스모니터링을 위한 Cubrid용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/dbm/EgovDbMntrng_SQL_maria.xmlDB서비스모니터링을 위한 MariaDB용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/dbm/EgovDbMntrng_SQL_mysql.xmlDB서비스모니터링을 위한 MySQL용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/dbm/EgovDbMntrng_SQL_oracle.xmlDB서비스모니터링을 위한 Oracle용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/dbm/EgovDbMntrng_SQL_postgres.xmlDB서비스모니터링을 위한 PostgreSQL용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/dbm/EgovDbMntrng_SQL_tibero.xmlDB서비스모니터링을 위한 Tibero용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/dbm/EgovDbMntrng_SQL_goldilocks.xmlDB서비스모니터링을 위한 Goldilocks용 Query XML
Validator Rule XMLresources/egovframework/validator/validator-rules.xmlValidator Rule을 정의한 XML
Validator XMLresources/egovframework/validator/com/utl/sys/dbm/EgovDbMntrng.xmlDB서비스모니터링을 위한 Validator XML
Message propertiesresources/egovframework/message/com/utl/sys/dbm/message_en.propertiesDB서비스모니터링을 위한 Message properties(한글)
Message propertiesresources/egovframework/message/com/utl/sys/dbm/message_en.propertiesDB서비스모니터링을 위한 Message properties(영문)
Idgen XMLresources/egovframework/spring/com/idgn/context-idgn-DbMntrngLog.xmlDB서비스모니터링을 위한 Id생성 Idgen XML

클래스 다이어그램

관련테이블

테이블명테이블명(영문)비고
DB서비스모니터링COMTNDBMNTRNGDB서비스모니터링정보를 관리하기 위한 속성정보를 정의하고, 관리한다.
DB서비스모니터링로그정보COMTHDBMNTRNGLOGINFODB서비스모니터링로그정보를 관리하기 위한 속성정보를 정의하고, 관리한다.

ID Generation 관련 DDL 및 DML

  • ID Generation Service를 활용하기 위해서 Sequence 저장테이블인 COMTECOPSEQ에 DB_MNTRNG_LOG_ID 항목을 추가해야 한다.
    CREATE TABLE COMTECOPSEQ ( table_name varchar(16) NOT NULL, 
                               next_id DECIMAL(30) NOT NULL,
                               PRIMARY KEY (table_name)
    );
 
    INSERT INTO COMTECOPSEQ VALUES ('DB_MNTRNG_LOG_ID','0');

ID Generation 환경설정(context-idgn-DbMntrngLog.xml)

    <bean name="egovDbMntrngLogIdGnrService"  class="egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrServiceImpl" destroy-method="destroy">
        <property name="dataSource" ref="egov.dataSource" />
        <property name="strategy"   ref="dbMntrngLogIdStrategy" />
        <property name="blockSize"  value="10" />
        <property name="table"      value="COMTECOPSEQ" />
        <property name="tableName"  value="DB_MNTRNG_LOG_ID" />
    </bean>
    <bean name="dbMntrngLogIdStrategy" class="egovframework.rte.fdl.idgnr.impl.strategy.EgovIdGnrStrategyImpl">
        <property name="prefix"     value="" />
        <property name="cipers"     value="20" />
        <property name="fillChar"   value="0" />
    </bean>

스케줄러 등록

  • DB서비스모니터링 스케줄러를 등록하기 위해서 context-scheduling.xml 파일에 다음과 같이 등록한다.
  <!-- DB서비스모니터링   -->
  <bean id="dbMntrng"
    class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="egovDbMntrngScheduling" />
    <property name="targetMethod" value="monitorDb" />
    <property name="concurrent" value="false" />
  </bean>
 
  <!-- DB서비스모니터링  트리거-->
  <bean id="dbMntrngTrigger"
    class="org.springframework.scheduling.quartz.SimpleTriggerBean">
    <property name="jobDetail" ref="dbMntrng" />
    <property name="startDelay" value="60000" />
    <property name="repeatInterval" value="600000" />
  </bean>
  startDelay는 서버 시작후 몇초 뒤에 시작할지를 설정한다.(ms 단위 : 현재 1분)
  repeatInterval는 몇 초에 한번씩 실행될지를 설정한다.(ms 단위 : 현재 10분)
  <!-- 모니터링 스케줄러 -->
  <bean id="mntrngScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
      <list>
        <ref bean="dbMntrngTrigger" />
      </list>
    </property>
  </bean>

관련화면 및 수행메뉴얼

DB서비스모니터링 목록조회

ActionURLController methodQueryID
조회/utl/sys/dbm/selectDbMntrngList.doselectDbMntrngList“DbMntrngDAO.selectDbMntrngList”
조회/utl/sys/dbm/selectDbMntrngList.doselectDbMntrngList“DbMntrngDAO.selectDbMntrngListCnt”

DB서비스모니터링 목록은 페이지당 10건씩 조회되며 페이징은 10페이지씩 이루어진다. 검색조건은 연계명,관리자명에 대해서 수행된다.

조회 : 기 등록된 DB서비스모니터링의 목록을 조회한다.
등록 : 신규 DB서비스모니터링를 등록하기 위해서는 상단의 등록 버튼을 통해서 DB서비스모니터링 등록 화면으로 이동한다.


DB서비스모니터링 등록

ActionURLController methodQueryID
등록/utl/sys/dbm/addDbMntrng.doinsertDbMntrng“DbMntrngDAO.insertDbMntrng”

DB서비스모니터링의 속성정보를 입력한 뒤 등록한다.
데이타소스명은 현재 context-datasource.xml에 설정된 데이터소스명을 등록한다.

저장 : 신규 DB서비스모니터링를 등록하기 위해서는 DB서비스모니터링 속성을 입력한 뒤 상단의 저장 버튼을 통해서 DB서비스모니터링를 등록한다.
목록 : DB서비스모니터링 목록조회 화면으로 이동한다.


DB서비스모니터링 수정

ActionURLController methodQueryID
수정/utl/sys/dbm/updateDbMntrngupdateDbMntrng“DbMntrngDAO.updateDbMntrng”

DB서비스모니터링의 속성정보를 변경한 후 저장한다.

저장 : 기 등록된 DB서비스모니터링 속성을 수정한 뒤 상단의 저장 버튼을 통해서 DB서비스모니터링정보를 수정한다.
목록 : DB서비스모니터링 목록조회 화면으로 이동한다.


DB서비스모니터링 상세조회

ActionURLController methodQueryID
상세조회/utl/sys/dbm/getDbMntrng.doselectDbMntrng“DbMntrngDAO.selectDbMntrng”
삭제/utl/sys/dbm/deleteDbMntrng.dodeleteDbMntrng“DbMntrngDAO.deleteDbMntrng”

DB서비스모니터링의 속성정보를 조회한다.

수정 : 기 등록된 DB서비스모니터링 속성을 수정한 뒤 상단의 수정 버튼을 통해서 DB서비스모니터링수정화면으로 이동한다.
삭제 : 기 등록된 DB서비스모니터링정보를 삭제한다.
목록 : DB서비스모니터링 목록조회 화면으로 이동한다.


DB서비스모니터링로그 목록조회

ActionURLController methodQueryID
조회/utl/sys/dbm/selectDbMntrngLogList.doselectDbMntrngLogList“DbMntrngDAO.selectDbMntrngLogList”
조회/utl/sys/dbm/selectDbMntrngLogList.doselectDbMntrngLogList“DbMntrngDAO.selectDbMntrngLogListCnt”

DB서비스모니터링로그 목록은 페이지당 10건씩 조회되며 페이징은 10페이지씩 이루어진다. 검색조건은 연계명,관리자명, 모니터링시각에 대해서 수행된다.

조회 : 기 등록된 DB서비스모니터링로그의 목록을 조회한다.


DB서비스모니터링로그 상세조회

ActionURLController methodQueryID
상세조회/utl/sys/dbm/getDbMntrngLog.doselectDbMntrngLog“DbMntrngDAO.selectDbMntrngLog”

DB서비스모니터링로그의 속성정보를 조회한다.

목록 : DB서비스모니터링로그 목록조회 화면으로 이동한다.


 
egovframework/com/v4.1/utl/sys/dbm/db서비스모니터링.txt · 마지막 수정: 2023/12/21 05:21 (외부 편집기)
 
이 위키의 내용은 다음의 라이센스에 따릅니다 :CC Attribution-Noncommercial-Share Alike 3.0 Unported
전자정부 표준프레임워크 라이센스(바로가기)

전자정부 표준프레임워크 활용의 안정성 보장을 위해 위험성을 지속적으로 모니터링하고 있으나, 오픈소스의 특성상 문제가 발생할 수 있습니다.
전자정부 표준프레임워크는 Apache 2.0 라이선스를 따르고 있는 오픈소스 프로그램입니다. Apache 2.0 라이선스에 따라 표준프레임워크를 활용하여 발생된 업무중단, 컴퓨터 고장 또는 오동작으로 인한 손해 등에 대해서 책임이 없습니다.
Recent changes RSS feed CC Attribution-Noncommercial-Share Alike 3.0 Unported Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki