노트북 변수를 사용하면 쿼리 블록 전체의 여러 쿼리에 계단식으로 적용되는 동적 파라미터를 설정할 수 있습니다. 정적 뷰를 필터링하는 대시보드 템플릿 변수와 달리, 노트북 변수는 전체 문서의 기본 로직을 구동하는 주입된 파라미터 역할을 합니다.
one.newrelic.com > All capabilities > Notebooks 으로 이동합니다.
노트북에서 변수를 사용하는 이유는 무엇인가요?
노트북 변수를 사용하면 다음과 같은 대화형 환경을 구축할 수 있습니다:
- 엔지니어가 특정
hostName또는transactionId을(를) 입력하여 타겟 시스템 상태 보고서를 즉시 생성할 수 있는 파라미터화된 런북. - 인시던트를 분석하기 위해 특정 타임스탬프, 리전 또는 애플리케이션 이름으로 업데이트할 수 있는 포스트모템 템플릿
- 사용자가
errorThreshold또는latencyTarget과(와) 같은 변수를 조정하여 다양한 파라미터가 시각화된 데이터에 어떤 영향을 미치는지 확인할 수 있는 대화형 임계값.
주요 이점은 다음과 같습니다.
- 실행 가능한 런북 만들기: 변수는 노트북을 정적 페이지에서 대화형 도구로 바꿔줍니다. 공지 이벤트 조사, 성능 분석 및 팀 협업을 위한 적응형 워크플로우를 구축할 수 있습니다.
- 지식 공유 표준화: 저장된 문서로서 분석 워크플로우를 동료와 공유할 수 있습니다. 사용자는 복잡한 NRQL 쿼리를 다시 작성할 필요가 없습니다 ― 사전 정의된 변수에서 새 변수 값으로 변경하고 워크플로우를 실행하기만 하면 됩니다.
노트북 변수 정의
데이터 검색 및 시각화를 매개변수화하기 위해 NRQL 쿼리 블록에 주입할 변수를 정의합니다.
변수를 정의하려면:
- 열려 있는 노트북에서 인터페이스 상단에 있는 변수 표시줄을 찾습니다.
- + Add variable 을(를) 클릭합니다.
- 변수 유형(예: 텍스트 입력, 드롭다운 메뉴 또는 숫자)을 구성하고 기본값을 제공합니다.
변수 명명 규칙
변수 이름을 지정할 때 다음 사항을 염두에 두십시오:
- 이름은 노트북 블록에서 사용할 정확한 문자열이며,
{{...}}(으)로 둘러싸여 있습니다. 예를 들어 변수 이름을targetApp(으)로 지정하면 쿼리 블록에서{{targetApp}}(으)로 참조합니다. - 변수 이름은 대소문자를 구분하며 노트북 내에서 고유해야 합니다.
- 다른 사용자가 런북을 쉽게 이해할 수 있도록 기술적인 이름을 선택하십시오(예:
var1대신failingHost).
쿼리 블록에서 변수 사용
정의한 후에는 {{variableName}} 구문을 사용하여 NRQL 쿼리의 어느 곳에서나 변수를 참조하십시오:
SELECT average(cpuPercent) FROM SystemSample WHERE hostname = {{failingHost}} TIMESERIESSELECT latest(cpuPercent) FROM ProcessSample WHERE hostname = {{failingHost}} FACET processDisplayName쿼리를 실행하면 변수 표시줄에 설정한 변수 값이 런타임에 쿼리에 치환됩니다. 변수 값을 변경하고 쿼리를 다시 실행하면 해당 변수를 참조하는 모든 블록이 즉시 업데이트됩니다.
런북으로 인시던트 대응 자동화
노트북 변수를 위한 가장 강력한 애플리케이션은 인시던트 대응을 위한 실행 가능한 런북을 만드는 것입니다. 노트북 변수를 New Relic 워크플로우와 결합하면 공지 트리거와 조사 시작 사이의 핸드오프를 자동화할 수 있습니다.
런북 구성
잘 구성된 매개변수화된 런북은 일반적으로 다음 패턴을 따릅니다:
블록 | 유형 | 목적 |
|---|---|---|
1 | 가격 인하 | 런북 사용 방법 및 서비스의 아키텍처 컨텍스트에 대한 지침 |
2 | NRQL | 주입된 변수를 사용한 상위 수준 시스템 확인 ― 예:
|
삼 | 가격 인하 | 조건부 안내 — 예를 들어: "위 차트에서 CPU>90%인 경우 다음 쿼리를 실행하여 상위 프로세스를 식별하세요." |
4 | NRQL | 더 심층적인 조사 쿼리 ― 예를 들어:
|
다음은 뭐지?
- 노트북 기능에 대한 개요는 노트북 시작하기 를 참조하세요.
- 쿼리 및 텍스트 블록에 대해 자세히 알아보려면 노트북의 블록 을 참조하세요.
- 프로그래밍 방식으로 노트북을 관리하기 위한 노트북용 Blob Storage API
- 동일한 대시보드 기능에 대한 템플릿 변수: 동적으로 대시보드 필터링