logStatus 개체는 상태 포인트의 이력 데이터 및 이력 데이터 그룹의 이력 데이터를 읽어 올 때 사용합니다. 취득 가능한 값은 On/Off횟수와 On/Off 값이 유지된 기간을 누적 및 시간, 일간, 월간, 연간 별로 값을 취득할 수 있습니다.

Methods


리턴 값

함 수

설 명

  list[StatusLogData]

readData( model, name, start, end )

이력 데이터 그룹에서 입력한 시작 날짜와 마지막 날짜 사이에 저장된 상태 포인트의 이력 정보 목록을 읽어옵니다.

  StatusLogData

readDataOnTime( model, name, date )

이력 데이터 그룹에서 입력한 날짜에 저장된 상태 포인트의 이력 정보를 읽어옵니다.

  list[StatusLogData]

readStatusLog( name, start, end, type )

입력한 시작 날짜와 마지막 날짜 사이에 저장된 상태 포인트의 이력 정보 목록을 읽어옵니다.

  StatusLogData

readStatusLogOnTime( name, date, type )

입력한 날짜에 저장된 상태 포인트의 이력 정보를 읽어옵니다.

StatusLogData

readPastData ( pointName , kwargs )

현재 시점을 기준으로 지정한 '년/월/일/시' 이전의 상태 포인트 이력 데이터를 읽어 옵니다



 

 list[StatusLogData] readData( setname:이력 데이터 그룹명, name:포인트 이름, start:시작 날짜, end:마지막 날짜 )

 

 readData는 데이터 익스플로러에서 이력 데이터 그룹으로 등록된 포인트 중 상태 포인트의 검색기간 동안의 이력정보를 리스트로 가져옵니다.


  • setname에는 데이터 익스플로러에 등록된 그룹명을 문자열로 입력합니다.
  • name에는 그룹안에 속한 상태 포인트 명을 문자열로 입력합니다.
  • start에는 검색기간의 시작 시간을 파이썬 datetime 이용하여 입력합니다.
  • end에는 검색기간의 마지막 시간을 파이썬 datetime 이용하여 입력합니다.


파이썬 스크립트 datetime 개체 사용방법을 참고하세요.


반환값인 포인트 이력정보의 활용은 StatusLogData에서 자세히 설명합니다.


 예)

import datetime

start = datetime.datetime.now().replace(hour=0,minute=0,second=0,microsecond=0)

end = start + datetime.timedelta(days=1)


# data_list에는 이력 데이터 그룹1에 속한 상태 포인트 스테이션1.전원 포인트의 현재일 0:00:00부터 1일 후 0:00:00 까지의 이력정보가 저장됩니다.

data_list = logStatus.readData('이력 데이터 그룹1', '스테이션1.전원', st, et )



 

 StatusLogData readDataOnTime( setname:이력 데이터 그룹명, name:포인트 이름, time:검색 날짜 )

 

 readDataOnTime는 데이터 익스플로러에서 이력 데이터 그룹으로 등록된 포인트 중 상태 포인트의 특정 시간의 정보를 취득합니다.


  • setname에는 데이터 익스플로러에 등록된 그룹명을 문자열로 입력합니다.
  • name에는 그룹안에 속한 상태 포인트 명을 문자열로 입력합니다.
  • time에는 검색 날짜을 파이썬 datetime 이용하여 입력합니다.
  • time에 시간을 입력할 때 주의 사항
    • 이력 데이터 그룹이 등록된 데이터 익스플로러에서 수집 수기에 맞추어 검색시간을 설정하여야합니다.
    • 예를 들어 수집주기가 15분 단위 이라면 분단위 입력시 0, 15, 30, 45분을 입력하고 초에는 0을 입력하여야 합니다.
    • 10초단위라면 초입력 시 0, 10, 20, 30, 40, 50 을 입력하여야 합니다.
    • 반환값인 포인트 이력정보의 활용은 9.2.12에서 설명합니다.


파이썬 스크립트 datetime 개체 사용방법을 참고하세요.


반환값인 포인트 이력정보의 활용은 StatusLogData에서 자세히 설명합니다.


 예)

import datetime

# 파이선 datetime 형식의 2014-1-1 1:02:01

tm = datetime.datetime(2014, 1, 1, 1, 2, 1)  

# 이력 데이터 그룹1은 1초단위로 저장 주기 설정되어있다고 가정합니다.


# datat에는 이력 데이터 그룹1에 속한 상태 포인트 스테이션1.전원 포인트의 2014-1-1 1:02:01 시간의 저장된 이력 정보가 저장됩니다.

data = logStatus.readDataOntime('이력 데이터 그룹1', '스테이션1.전원', time )



 

 list[StatusLogData] readStatusLog( name:포인트 이름, start:시작 날짜, end:마지막 날짜, type:종류 구분 )

 

 readStatusLog는 상태 포인트의 검색기간 동안의 type에 따른 이력정보를 리스트로 가져옵니다.


  • name에는 그룹안에 속한 상태 포인트 명을 문자열로 입력합니다.
  • start에는 검색기간의 시작 시간을 파이썬 datetime 이용하여 입력합니다.
  • end에는 검색기간의 마지막 시간을 파이썬 datetime 이용하여 입력합니다.
  • type의 종류는 시간, 일, 월, 년, 누적의 5가지입니다.
    • logAnalog.Time : 시간
    • logAnalog.Day : 일
    • logAnalog.Month : 월
    • logStatus.Year : 년
    • logAnalog.Total : 누적


파이썬 스크립트 datetime 개체 사용방법을 참고하세요.


반환값인 포인트 이력정보의 활용은 StatusLogData에서 자세히 설명합니다.


 예)

import datetime

start = datetime.datetime.now().replace(hour=0,minute=0,second=0,microsecond=0)

end = start + datetime.timedelta(days=1)


# data_list에는 상태 포인트 스테이션1.전원 포인트의 현재일 0:00:00부터 1일 후 0:00:00까지의 시간대별 이력정보 리스트가 저장됩니다.

data_list = logStatus.readStatusLog('스테이션1.전원', st, et, logStatus.Time)



 

 StatusLogData readStatusLogOnTime( name:포인트 이름, time:검색 날짜, type:종류 구분 )

 

 readStatusLogOnTime은 상태 포인트의 검색기간 동안의 이력 정보를 취득 합니다.


  • setname에는 데이터 익스플로러에 등록된 그룹명을 문자열로 입력합니다.
  • name에는 그룹안에 속한 상태 포인트 명을 문자열로 입력합니다.
  • time에는 검색 날짜을 파이썬 datetime 이용하여 입력합니다.
  • type의 종류는 시간, 일, 월, 년, 누적의 5가지입니다.
    • logAnalog.Time : 시간
    • logAnalog.Day : 일
    • logAnalog.Month : 월
    • logStatus.Year : 년
    • logAnalog.Total : 누적


파이썬 스크립트 datetime 개체 사용방법을 참고하세요.


반환값인 포인트 이력정보의 활용은 StatusLogData에서 자세히 설명합니다.


 예)

import datetime

# 파이선 datetime 형식의 2014-1-1 1:00:00

tm = datetime.datetime(2014, 1, 1, 1, 0, 0)  

# data에는 상태 포인트 스테이션1.전원 포인트의 2014-1-1 1:00:00 시간의 시간 이력 정보가 저장됩니다.

data = logStatus.readStatusLogOnTime('스테이션1.전원', time, logStatus.Time )



 

  StatusLogData readPastData ( pointName : 포인트 이름 , kwargs : 불러올 시점)

 

현재 시점을 기준으로 지정한 년/월/일/시 이전의 이력 데이터를 읽어 옵니다. datetime과 timedelta 연산을 직접 사용하지 않고도 전일, 전월, 전년, 전시간과 같은 과거 시점의 로그 데이터를 간편하게 불러 올 수 있습니다.


 • pointName : 포인트 이름 입니다

 • kwrags : 불러올 시점을 지정하는 가변 키워드 인자 입니다.  years , months , days, hours 값을 조합하여 현재 시점에서 상대적인 과저 기점을 지정할 수 있습니다.


 예)


# SH6.OPEN_CLOSE 포인트의 작년 년 데이터를 불러 옵니다

logData = logStatus.readPastData('SH6.OPEN_CLOSE', years=-1)


# SH6.OPEN_CLOSE 포인트의 지난달 월 데이터를 불러 옵니다

logData = logStatus.readPastData('SH6.OPEN_CLOSE', months=-1)


# SH6.OPEN_CLOSE 포인트의 지난달 15일 일 데이터를 불러 옵니다

logData = logStatus.readPastData('SH6.OPEN_CLOSE', months=-1,days=15)


# SH6.OPEN_CLOSE 포인트의 어제 일 데이터를 불러 옵니다

logData = logStatus.readPastData('SH6.OPEN_CLOSE', days=-1)


# SH6.OPEN_CLOSE 포인트의 어제 3시의 시 데이터를 불러 옵니다

logData = logStatus.readPastData('SH6.OPEN_CLOSE', days=-1 , hours=3)


# SH6.OPEN_CLOSE 포인트의 2시간전 시 데이터를 불러 옵니다,

logData = logStatus.readPastData('SH6.OPEN_CLOSE', hours=-2)