목차

요소기술 - 파일시스템모니터링

개요

파일시스템모니터링은 파일시스템 상태를 주기적으로 모니터링하는 기능을 제공한다.

모니터링하고자 하는 파일시스템는 파일시스템대상목록으로 시스템에 등록되어 있어야 한다.

설명

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

관련소스

유형대상소스명비고
Controlleregovframework.com.utl.sys.fsm.web.EgovFileSysMntrngController.java파일시스템모니터링을 위한 컨트롤러 클래스
Serviceegovframework.com.utl.sys.fsm.service.EgovFileSysMntrngService.java파일시스템모니터링을 위한 서비스 인터페이스
ServiceImplegovframework.com.utl.sys.fsm.service.impl.EgovFileSysMntrngServiceImpl.java파일시스템모니터링을 위한 서비스 구현 클래스
DAOegovframework.com.utl.sys.fsm.service.impl.FileSysMntrngDAO.java파일시스템모니터링을 위한 데이터처리 클래스
Modelegovframework.com.utl.sys.fsm.service.FileSysMntrng.java파일시스템모니터링을 위한 Model 클래스
Modelegovframework.com.utl.sys.fsm.service.FileSysMntrngLog.java파일시스템모니터링로그정보를 위한 Model 클래스
VOegovframework.com.utl.sys.fsm.service.FileSysMntrngVO.java파일시스템모니터링을 위한 VO 클래스
VOegovframework.com.utl.sys.fsm.service.FileSysMntrngLogVO.java파일시스템모니터링로그정보를 위한 VO 클래스
스케쥴링egovframework/com/utl/sys/fsm/service/EgovFileSystemMntrngScheduling.java파일시스템모니터링을 위한 스케쥴링 클래스
스케쥴링egovframework/com/utl/sys/fsm/service/FileSystemChecker.java파일시스템모니터링을 위한 스케쥴링 클래스
스케쥴링egovframework/com/utl/sys/fsm/service/FileSystemUtils.java파일시스템모니터링을 위한 스케쥴링 클래스
JSP/WEB-INF/jsp/egovframework/utl/sys/fsm/EgovFileSysMntrngList.jsp파일시스템모니터링목록조회를 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/fsm/EgovFileSysMntrngRegist.jsp파일시스템모니터링 등록을 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/fsm/EgovFileSysMntrngUpdt.jsp파일시스템모니터링 수정을 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/fsm/EgovFileSysMntrngDetail.jsp등록된 파일시스템모니터링을 조회하기 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/fsm/EgovFileSysMntrngLogList.jsp파일시스템모니터링 로그조회를 위한 jsp페이지
JSP/WEB-INF/jsp/egovframework/utl/sys/fsm/EgovFileSysMntrngLogDetail.jsp등록된 파일시스템모니터링로그을 조회하기 위한 jsp페이지
Query XMLresources/egovframework/mapper/com/utl/sys/fsm/EgovFileSysMntrng_SQL_altibase.xml파일시스템모니터링을 위한 Altibase용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/fsm/EgovFileSysMntrng_SQL_cubrid.xml파일시스템모니터링을 위한 Cubrid용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/fsm/EgovFileSysMntrng_SQL_maria.xml파일시스템모니터링을 위한 MariaDB용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/fsm/EgovFileSysMntrng_SQL_mysql.xml파일시스템모니터링을 위한 MySQL용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/fsm/EgovFileSysMntrng_SQL_oracle.xml파일시스템모니터링을 위한 Oracle용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/fsm/EgovFileSysMntrng_SQL_postgres.xml파일시스템모니터링을 위한 PostgreSQL용 Query XML
Query XMLresources/egovframework/mapper/com/utl/sys/fsm/EgovFileSysMntrng_SQL_tibero.xml파일시스템모니터링을 위한 Tibero용 Query XML
Validator Rule XMLresources/egovframework/validator/validator-rules.xmlValidator Rule을 정의한 XML
Validator XMLresources/egovframework/validator/com/utl/sys/fsm/EgovFileSysMntrng.xml파일시스템모니터링을 위한 Validator XML
Message propertiesresources/egovframework/message/com/utl/sys/fsm/message_en.properties파일시스템모니터링을 위한 Message properties(영문)
Message propertiesresources/egovframework/message/com/utl/sys/fsm/message_ko.properties파일시스템모니터링을 위한 Message properties(한글)
Idgen XMLresources/egovframework/spring/com/idgn/context-idgn-FileSysMntrng.xml파일시스템모니터링을 위한 Id생성 Idgen XML

클래스 다이어그램

관련테이블

테이블명테이블명(영문)비고
파일시스템모니터링COMTNFILESYSMNTRNG파일시스템모니터링정보를 관리하기 위한 속성정보를 정의하고, 관리한다.
파일시스템모니터링로그정보COMTNFILESYSMNTRNGLOGINFO파일시스템모니터링로그정보를 관리하기 위한 속성정보를 정의하고, 관리한다.

ID Generation 관련 DDL 및 DML

    CREATE TABLE COMTECOPSEQ ( table_name varchar(16) NOT NULL, 
                               next_id DECIMAL(30) NOT NULL,
                               PRIMARY KEY (table_name)
    );
 
    INSERT INTO COMTECOPSEQ VALUES ('FILESYS_MNTRNG','0');
    INSERT INTO COMTECOPSEQ VALUES ('FILESYS_LOGID','0');

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

    <!-- 파일시스템모니터링 ID -->
    <bean name="egovFileSysMntrngIdGnrService" class="egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrServiceImpl" destroy-method="destroy">
        <property name="dataSource" ref="egov.dataSource" />
        <property name="strategy"   ref="fileSysMntrngIdStrategy" />
        <property name="blockSize"  value="10" />
        <property name="table"      value="COMTECOPSEQ" />
        <property name="tableName"  value="FILESYS_MNTRNG" />
    </bean>
    <bean name="fileSysMntrngIdStrategy" class="egovframework.rte.fdl.idgnr.impl.strategy.EgovIdGnrStrategyImpl">
        <property name="prefix"     value="FILESYS_" />
        <property name="cipers"     value="12" />
        <property name="fillChar"   value="0" />
    </bean> 
 
    <!-- 파일시스템모니터링 로그 ID -->
    <bean name="egovFileSysMntrngLogIdGnrService" class="egovframework.rte.fdl.idgnr.impl.EgovTableIdGnrServiceImpl" destroy-method="destroy">
        <property name="dataSource" ref="egov.dataSource" />
        <property name="strategy"   ref="fileSysMntrngLogIdStrategy" />
        <property name="blockSize"  value="10" />
        <property name="table"      value="COMTECOPSEQ" />
        <property name="tableName"  value="FILESYS_LOGID" />
    </bean>
    <bean name="fileSysMntrngLogIdStrategy" class="egovframework.rte.fdl.idgnr.impl.strategy.EgovIdGnrStrategyImpl">
        <property name="prefix"     value="" />
        <property name="cipers"     value="20" />
        <property name="fillChar"   value="0" />
    </bean>

스케줄러 등록

	<!-- 파일시스템모니터링   -->
	<bean id="fileSysMntrng"
		class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
		<property name="targetObject" ref="egovFileSysMntrngScheduling" />
		<property name="targetMethod" value="monitorFileSys" />
		<property name="concurrent" value="false" />
	</bean>
 
	<!-- 파일시스템모니터링  트리거-->
	<bean id="fileSysMntrngTrigger"
		class="org.springframework.scheduling.quartz.SimpleTriggerBean">
		<property name="jobDetail" ref="fileSysMntrng" />
		<!-- 시작하고 1분후에 실행한다. (milisecond) -->
		<property name="startDelay" value="60000" />
		<!-- 매 10분마다 실행한다. (milisecond) -->
		<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="fileSysMntrngTrigger" />
			</list>
		</property>
	</bean>

관련화면 및 수행메뉴얼

파일시스템모니터링 목록조회

ActionURLController methodQueryID
조회/utl/sys/fsm/selectFileSysMntrngList.doselectFileSysMntrngList“FileSysMntrngDAO.selectFileSysMntrngList”
조회/utl/sys/fsm/selectFileSysMntrngList.doselectFileSysMntrngList“FileSysMntrngDAO.selectFileSysMntrngListCnt”

파일시스템모니터링 목록은 페이지당 10건씩 조회되며 페이징은 10페이지씩 이루어진다. 검색조건은 파일시스템명, 파일시스템관리명, 관리자명, 상태에 대해서 수행된다.

조회 : 기 등록된 파일시스템모니터링의 목록을 조회한다.
등록 : 신규 파일시스템모니터링를 등록하기 위해서는 상단의 등록 버튼을 통해서 파일시스템모니터링 등록 화면으로 이동한다.
로그 : 파일시스템모니터링 로그조회화면 으로 이동한다.
파일시스템관리명클릭 : 해당 파일시스템모니터링대상 상세조회 화면으로 이동한다.


파일시스템모니터링 등록

ActionURLController methodQueryID
등록/utl/sys/fsm/addFileSysMntrng.doinsertFileSysMntrng“FileSysMntrngDAO.insertFileSysMntrng”

파일시스템모니터링의 속성정보를 입력한 뒤 등록한다.
임계치 필드는 등록한 파일시스템의 크기에서 위험을 알리는 경계의 수치
등록하신 임계치를 초과할 경우 관리자메일주소로 모니터링 정보를 보냅니다.

파일시스템확인 : 입력한 파일시스템명을 통하여, 파일시스템 크기를 표시한다.
저장 : 신규 파일시스템모니터링를 등록하기 위해서는 파일시스템모니터링 속성을 입력한 뒤 하단의 저장 버튼을 통해서 파일시스템모니터링를 등록한다.
목록 : 파일시스템모니터링 목록조회 화면으로 이동한다.


파일시스템모니터링 수정

ActionURLController methodQueryID
수정/utl/sys/fsm/modifyFileSysMntrng.doupdateFileSysMntrng“FileSysMntrngDAO.updateFileSysMntrng”

파일시스템모니터링의 속성정보를 변경한 후 저장한다.

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


파일시스템모니터링 상세조회

ActionURLController methodQueryID
상세조회/utl/sys/fsm/selectFileSysMntrng.doselectFileSysMntrng“FileSysMntrngDAO.selectFileSysMntrng”
삭제/utl/sys/fsm/deleteFileSysMntrng.dodeleteFileSysMntrng“FileSysMntrngDAO.deleteFileSysMntrng”

파일시스템모니터링의 속성정보를 조회한다.

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


파일시스템모니터링로그 목록조회

ActionURLController methodQueryID
조회/utl/sys/fsm/selectFileSysMntrngLogList.doselectFileSysMntrngLogList“FileSysMntrngDAO.selectFileSysMntrngLogList”
조회/utl/sys/fsm/selectFileSysMntrngLogList.doselectFileSysMntrngLogList“FileSysMntrngDAO.selectFileSysMntrngLogListCnt”

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

조회 : 기 등록된 파일시스템모니터링로그의 목록을 조회한다.
파일시스템관리명클릭 : 해당 파일시스템모니터링로그 상세조회 화면으로 이동한다.


파일시스템모니터링 상세조회

ActionURLController methodQueryID
상세조회/utl/sys/fsm/selectFileSysMntrngLog.doselectFileSysMntrngLog“FileSysMntrngDAO.selectFileSysMntrngLog”

파일시스템모니터링의 속성정보를 조회한다.

목록 : 파일시스템모니터링로그 목록조회 화면으로 이동한다.