NSQuantumExecutionTime(Transact-SQL)
장기간 실행하는 생성자 퀀텀을 식별하는 데 도움이 되는 정보를 반환합니다. 이 정보를 사용하여 퀀텀을 자세히 분석할 수 있습니다.
구문
[ schema_name . ] NSQuantumExecutionTime
[ @MinExecutionTime = ] min_time
[, [ @MaxExecutionTime = ] max_time ]
[, [ @SinceQuantumInitialized = ] since_init ]
인수
[ @MinExecutionTime = ] min_time
보고서에 포함할 퀀텀의 최소 실행 시간을 지정합니다. min_time은 int(초)이며 기본값은 없습니다.
[@MaxExecutionTime = ] max_time
보고서에 포함할 퀀텀의 최대 실행 시간을 지정합니다. max_time은 int(초)이며 기본값은 min_time에 5를 더한 값입니다.
[ @SinceQuantumInitialized = ] since_init
NSSetQuantumClock 또는 NSSetQuantumClockDate 저장 프로시저를 사용하여 마지막으로 퀀텀 시계를 다시 설정하기 전의 퀀텀을 보고서에 포함할 것인지 여부를 지정합니다. since_init는 tinyint이며 0 또는 1일 수 있습니다. 기본값은 마지막으로 다시 설정한 후의 퀀텀 기간만 포함하는 1입니다. 0은 마지막으로 다시 설정한 시점 이전의 퀀텀 기간을 포함합니다.
반환 코드 값
없음
결과 집합
열 이름 | 데이터 형식 | 설명 |
---|---|---|
QuantumId |
int |
퀀텀의 고유 ID입니다. 이 ID를 NSQuantumDetails 저장 프로시저에 제공하면 해당 퀀텀에 대한 추가 정보를 얻을 수 있습니다. |
QuantumStatusDescription |
nvarchar(255) |
퀀텀의 현재 상태를 설명하는 텍스트입니다. |
ExecutionTimeInMS |
bigint |
생성자가 퀀텀을 처리하는 시간(밀리초)입니다. |
QuantumStartTime |
datetime |
퀀텀이 나타내는 기간의 시작 시간(UTC)입니다. |
QuantumEndTime |
datetime |
퀀텀이 나타내는 기간의 종료 시간(UTC)입니다. 종료 시간은 시작 시간에 퀀텀 기간을 합한 시간입니다. |
ExecutionStartTime |
datetime |
생성자가 퀀텀 처리를 시작한 실제 날짜와 시간(UTC)입니다. |
ExecutionEndTime |
datetime |
생성자가 퀀텀 처리를 완료한 실제 날짜와 시간(UTC)입니다. |
QuantumDurationLimit |
nvarchar(20) |
퀀텀 실행 시간이 ADF(응용 프로그램 정의 파일)에 정의된 퀀텀 기간보다 짧은지 또는 긴지를 지정합니다. |
ChronicleQuantumLimit |
nvarchar(20) |
퀀텀 실행 시간이 ADF에 정의된 ChronicleQuantumLimit * QuantumDuration보다 큰지 여부를 지정합니다. 이는 퀀텀을 실행하는 데 걸린 시간으로 인해 응용 프로그램이 기록 퀀텀 제한을 초과하는지 여부를 나타냅니다. |
SubscriptionQuantumLimit |
nvarchar(20) |
퀀텀 실행 시간이 ADF에 정의된 SubscriptionQuantumLimit * QuantumDuration보다 큰지 여부를 지정합니다. 이는 퀀텀을 실행하는 데 걸린 시간으로 인해 응용 프로그램이 구독 퀀텀 제한을 초과하는지 여부를 나타냅니다. |
ChronicleRuleFiringCount |
int |
퀀텀에서 실행되는 이벤트 기록 규칙의 수입니다. |
EventSubscriptionRuleFiringCount |
int |
퀀텀에서 실행되는 이벤트 구독 규칙의 수입니다. |
ScheduledSubscriptionRuleFiringCount |
int |
퀀텀에서 실행되는 예약된 구독 규칙의 수입니다. |
EventNotificationsGenerated |
int |
퀀텀 실행 중 이벤트 트리거 규칙에서 생성된 알림의 개수입니다. |
ScheduledNotificationsGenerated |
int |
퀀텀 실행 중 예약된 구독 규칙에서 생성된 알림의 개수입니다. |
주의
인스턴스를 만들면 Notification Services 에서 응용 프로그램 데이터베이스에 NSQuantumExecutionTime 저장 프로시저가 생성됩니다. 응용 프로그램을 업데이트할 경우 Notification Services 는 저장 프로시저를 다시 컴파일합니다.
저장 프로시저는 ADF(응용 프로그램 정의 파일)의 SchemaName 요소로 지정된 응용 프로그램의 스키마에 있습니다. 제공된 스키마 이름이 없을 경우 기본 스키마는 dbo입니다.
원하는 퀀텀을 식별한 후 상세히 분석해야 할 경우가 있습니다. 퀀텀에 대한 정보를 얻으려면 NSQuantumDetails 저장 프로시저를 사용합니다.
사용 권한
실행 권한은 기본적으로 NSAnalysis 데이터베이스 역할, db_owner 고정 데이터베이스 역할 및 sysadmin 고정 서버 역할의 멤버로 설정됩니다.
예
1. 기본값 사용
다음 예에서는 마지막 초기화 이후 실행하는 데 0초에서 5초 정도가 걸린 모든 퀀텀에 대해 퀀텀 실행 시간 보고서를 만드는 방법을 보여 줍니다.
응용 프로그램은 모든 응용 프로그램 개체를 dbo 스키마에 배치하는 기본 SchemaName 설정을 사용합니다.
EXEC dbo.NSQuantumExecutionTime
@MinExecutionTime = 0;
2. 최소값과 최대값 내에서 모든 퀀텀 반환
다음 예에서는 31초 이상 35초 미만 동안 실행된 모든 생성자 퀀텀에 대한 퀀텀 실행 시간 보고서를 만드는 방법을 보여 줍니다. NULL 값은 min_time + 5와 같습니다.
이 예에서 저장 프로시저는 다른 모든 응용 프로그램 개체와 마찬가지로 ADF의 SchemaName 요소에서 지정된 Stock 스키마에 위치합니다.
EXEC Stock.NSQuantumExecutionTime
@MinExecutionTime = 30,
@MaxExecutionTime = NULL,
@SinceQuantumInitialized = 0;
참고 항목
참조
Notification Services 저장 프로시저(Transact-SQL)
NSQuantumDetails(Transact-SQL)
관련 자료
Notification Services 성능 보고서
SchemaName Element (ADF)