커스텀 위젯을 사용하면 자체 NRQL 쿼리로 구축된 맞춤형 차트 시각화로 미디어 스트리밍 대시보드를 확장할 수 있습니다. 커스텀 위젯은 사전 정의된 메트릭과 함께 Quality Metrics 드롭다운 메뉴의 별도 Custom Metrics 카테고리 아래에 표시됩니다. 세션 전반에 걸쳐 유지되며 기존 대시보드 내에서 확장됩니다.
중요
각 계정은 50개의 커스텀 위젯이라는 소프트 제한을 지원합니다. 이 제한은 NerdStorage 용량을 기준으로 합니다. 이 제한에 도달하면 새 위젯을 추가하기 전에 기존 커스텀 위젯을 삭제하세요.
시작하기 전에
사용자 지정 위젯은 Media Streaming nerdpack 내에서 생성됩니다. Streaming Video & Ads 에이전트가 설치된 뉴렐릭 계정에 대한 액세스 권한이 필요합니다. 아직 설정하지 않은 경우 Streaming Video & Ads 에이전트 설치 를 참조하십시오.
커스텀 위젯 생성
- 미디어 스트리밍 대시보드를 열고 Quality Metrics 섹션으로 이동합니다.
- + Add Custom Widget 을(를) 클릭합니다.
- 위젯의 제목을 입력합니다.
- NRQL 편집기에서 NRQL 쿼리를 작성합니다. 구문, 필터 플레이스홀더 및 예제에 대한 지침은 쿼리 작성 을 참조하세요.
- 저장하기 전에 결과를 미리 보려면 Run Query 을(를) 클릭합니다.
- Save을 클릭합니다. 위젯이 Quality Metrics 드롭다운 메뉴의 Custom Metrics 섹션에 추가되고 대시보드에 렌더링됩니다.
쿼리 작성
NRQL 편집기는 유효한 NRQL SELECT 또는 FROM 쿼리를 허용합니다. 편집기에 전체 쿼리를 직접 작성합니다 ― 구문 강조 표시, 자동 완성 및 실시간 유효성 검사가 편집기에서 제공됩니다.
쿼리 요구 사항
- 쿼리는
SELECT또는FROM(으)로 시작해야 하며 두 절을 모두 포함해야 합니다. - 하드코딩된
SINCE또는UNTIL절을 포함하지 마십시오. 대시보드의 타임 피커는 실행 시 시간 범위를 자동으로 주입합니다. - 대시보드 수준의 필터 표시줄 선택에 응답하려면 쿼리에 필터 플레이스홀더 를 포함하세요.
필터 플레이스홀더
필터 플레이스홀더는 런타임 시 대시보드 필터 표시줄에 적용된 필터 조건으로 대체되는 NRQL 주석 토큰입니다. 쿼리에 수동으로 추가하세요.
| 플레이스홀더 | 사용 시기 |
|---|---|
/* {whereClause} */ | 쿼리에 기존 WHERE 절이 없습니다. 플레이스홀더는 완전한 WHERE ... 조건으로 대체됩니다. |
/* {andWhereClause} */ | 쿼리에 이미 WHERE 절이 있습니다. 플레이스홀더가 추가 AND ... 조건으로 추가됩니다. |
/* {aggregatorWhereClause} */ | 이미 WHERE 절이 포함된 filter() 함수 내부입니다. 집계자 범위 내에 추가 AND ... 조건을 추가합니다. |
예시 ― 기존 WHERE 절 없음:
SELECT uniqueCount(viewId) AS 'Total Views'FROM VideoAction /* {whereClause} */TIMESERIESasn = '14618' 에 대한 필터가 활성화된 경우:
SELECT uniqueCount(viewId) AS 'Total Views'FROM VideoAction WHERE asn = '14618'TIMESERIES SINCE 30 minutes ago UNTIL now예시 ― 기존 WHERE 절 있음:
SELECT count(*) AS 'Error Count'FROM VideoErrorAction, VideoActionWHERE actionName = 'CONTENT_ERROR' /* {andWhereClause} */TIMESERIES예시 ― 집계자 함수 내부의 필터:
FROM VideoActionSELECT ( filter(sum(timeSinceBufferBegin), WHERE actionName = 'CONTENT_BUFFER_END' AND bufferType = 'connection' /* {aggregatorWhereClause} */ ) / filter(sum(elapsedTime) OR 1, WHERE actionName = 'CONTENT_HEARTBEAT' /* {aggregatorWhereClause} */ )) AS 'Connection-induced rebuffering ratio'TIMESERIES팁
대시보드 필터 표시줄에서 필터가 활성화되면 세 가지 플레이스홀더 유형이 모두 동일한 기본 필터 조건으로 확인됩니다 ― 쿼리 구조에 따라 유효한 NRQL을 생성하기 위한 구문상의 차이만 있습니다.
차단된 키워드 및 문자
우발적이거나 악의적인 데이터 수정을 방지하기 위해 NRQL 편집기에서 다음 항목이 차단됩니다:
차단된 키워드:
DROPDELETEINSERTUPDATECREATEALTER
차단된 문자:
- 세미콜론(
;) ― 쿼리 체인 또는 인젝션 공격을 방지하기 위해 차단됩니다.
이 중 하나라도 포함된 쿼리는 유효성 검사에 실패하며 저장하거나 미리 볼 수 없습니다.
쿼리 예시
기본 시계열 — 총 비디오 시작:
SELECT count(*) AS 'Video Starts'FROM VideoActionWHERE actionName = 'CONTENT_START' /* {andWhereClause} */TIMESERIES필터 통합이 포함된 고유 시청자 수:
SELECT uniqueCount(viewId) AS 'Unique Viewers'FROM VideoAction /* {whereClause} */TIMESERIES이벤트 유형 전반의 오류율:
SELECT count(*) AS 'Error Count'FROM VideoErrorAction, VideoActionWHERE actionName = 'CONTENT_ERROR' /* {andWhereClause} */TIMESERIES연결로 인한 리버퍼링 비율(고급):
FROM VideoActionSELECT ( filter(sum(timeSinceBufferBegin), WHERE actionName = 'CONTENT_BUFFER_END' AND bufferType = 'connection' /* {aggregatorWhereClause} */ ) / filter(sum(elapsedTime) OR 1, WHERE actionName = 'CONTENT_HEARTBEAT' /* {aggregatorWhereClause} */ )) AS 'Connection-induced rebuffering ratio'TIMESERIES더 많은 쿼리에 대한 영감을 얻으려면 VideoAction 및 VideoErrorAction을(를) 사용하는 사전 구축된 NRQL 예시에 대한 비트레이트 메트릭 데이터 사전 을 참조하십시오.
위젯 미리보기
저장하기 전에 Run Query 을(를) 클릭하여 라이브 데이터에 대해 쿼리를 실행하고 렌더링된 차트를 확인하세요. 이렇게 해도 위젯은 저장되지 않습니다.
미리보기를 사용하여 다음을 수행합니다.
- 차트가 예상한 데이터를 렌더링하는지 확인하세요.
- 필터 표시줄에서 필터가 활성화되어 있을 때 필터 플레이스홀더가 올바르게 처리되는지 확인하세요.
- 위젯이 대시보드에 커밋되기 전에 구문 또는 논리 오류를 포착합니다.
커스텀 위젯 수정
- Quality Metrics 섹션에서 변경하려는 사용자 지정 위젯을 찾습니다.
- 위젯 카드에서 연필 아이콘을 클릭합니다.
- 편집기가 모든 필드가 미리 채워진 편집 모드로 열립니다 ― 제목 및 기존 NRQL 쿼리.
- 변경 사항을 적용하고 Run Query 을(를) 클릭하여 확인한 다음 Save을(를) 클릭합니다.
저장 시:
updatedAt타임스탬프가 업데이트되며, 원래createdAt및 위젯id는 보존됩니다.- 위젯이 업데이트된 쿼리로 즉시 다시 렌더링됩니다.
- 제목을 변경한 경우 품질 메트릭 드롭다운 메뉴에서 업데이트됩니다.
커스텀 위젯 삭제
- Quality Metrics 섹션에서 위젯 카드의 아이콘을 클릭합니다.
- Delete 선택합니다.
- 프롬프트에서 다음을 확인합니다: "'[위젯 제목]'을(를) 삭제하시겠습니까? 이 작업은 실행 취소할 수 없습니다."
삭제된 경우:
- 위젯이 NerdStorage에서 제거되며 영구적으로 사라집니다.
- 위젯 카드가 대시보드에서 즉시 제거됩니다.
- 품질 메트릭 드롭다운 메뉴에서 제목이 제거됩니다.
- 위젯이 선택된 경우 자동으로 선택 취소됩니다.
주의
삭제는 영구적입니다. 나중에 필요할 수 있으므로 위젯을 삭제하기 전에 NRQL 쿼리를 복사하세요.
위젯 제한
계정당 50개 위젯의 소프트 제한은 NerdStorage 문서 용량을 기준으로 합니다. 50개 위젯의 경우 스토리지 사용량은 약 21KB입니다 ― 문서당 제한인 64KB의 약 33%에 해당하여 안전한 여유 공간을 제공합니다.
제한에 도달하면 기존 커스텀 위젯이 삭제될 때까지 위젯 생성이 차단됩니다. 기존 위젯은 계속 정상적으로 작동합니다.