타임시프트
타임시프트 (Timeshift)
타임시프트 함수는 데이터를 시간 축으로 이동시켜 이전 시점의 값을 그래프에 함께 표시해 주는 함수예요. 단독으로는 큰 가치가 없을 수 있지만, 현재 값과 함께 보면 애플리케이션 성능에 대한 유용한 인사이트를 얻을 수 있습니다.
출처: 문서
본문
다음은 데이터의 시간 이동을 수행하는 함수들의 모음이에요. 이 함수들은 해당 시간 구간의 값을 그래프에 표시합니다. 단독으로는 가치가 높지 않을 수 있지만, 현재 값과 함께 사용하면 애플리케이션 성능에 대한 유용한 인사이트를 얻을 수 있어요.
타임시프트 (Timeshift)
| 함수 | 설명 | 예시 |
|---|---|---|
timeshift() |
메트릭의 현재 타임스탬프보다 <TIME_IN_SECOND>(초) 전의 값을 그래프로 그립니다. |
timeshift(<METRIC_NAME>{*}, -<TIME_IN_SECOND>) |
예를 들어 현재 시스템 로드와 2주 전(606024*14 = 1209600)의 로드를 비교하고 싶다면 쿼리는 다음과 같습니다:
timeshift(avg:system.load.1{*}, -1209600)
캘린더 시프트 (Calendar shift)
| 함수 | 설명 | 예시 |
|---|---|---|
calendar_shift() |
메트릭의 현재 타임스탬프로부터 전날, 전주, 또는 전월의 값을 그래프로 그립니다. | calendar_shift(<METRIC_NAME>{*}, \"<TIME_SHIFT_STRING>\", \"<TIME_ZONE_CODE>\") |
calendar_shift() 함수에 접근하려면 함수 추가 버튼을 클릭하고 Timeshift > Month before를 선택하세요. 캘린더 시프트를 사용하면 동등한 시간 범위에 걸쳐 같은 메트릭을 비교할 수 있어요. 아래는 클라우드 비용 메트릭 aws.cost.net.amortized의 2주 전 calendar_shift() 값을 현재 값과 비교한 예시입니다.
유효한 TIME_SHIFT_STRING 값은 음의 정수 뒤에 일은 "d", 주는 "w", 월은 "mo"를 붙인 형태입니다. 몇 가지 예시는 -1d, -7d, -1mo, -30d, -4w입니다.
유효한 TIME_ZONE_CODE 값은 특정 도시에 대한 IANA 시간대 코드 또는 UTC입니다. 예를 들어 UTC, America/New_York, Europe/Paris, Asia/Tokyo입니다.
1시간 전 (Hour before)
| 함수 | 설명 | 예시 |
|---|---|---|
hour_before() |
메트릭의 현재 타임스탬프보다 1시간 전의 값을 그래프로 그립니다. | hour_before(<METRIC_NAME>{*}) |
hour_before() 값을 점선으로 표시한 system.load.1의 예시입니다. 이 특정 예시에서는 머신이 오전 6:30에 시작되었고 hour_before() 값이 7:30 지점에서 나타나는 것을 볼 수 있어요. 물론 이 예시는 hour_before() 값이 실제 값과 일치하는 것을 보여 주기 위해 특별히 만들어진 것입니다.
1일 전 (Day before)
경고: day before 기능은 더 이상 사용되지 않습니다(deprecated). 대신 값이 "-1d"인 calendar shift를 사용하세요.
| 함수 | 설명 | 예시 |
|---|---|---|
day_before() |
메트릭의 현재 타임스탬프보다 1일 전의 값을 그래프로 그립니다. | day_before(<METRIC_NAME>{*}) |
day_before() 값을 더 밝고 얇은 선으로 표시한 nginx.net.connections의 예시입니다. 이 예시에서는 일주일치 데이터가 표시되어 day_before() 데이터를 더 쉽게 구분할 수 있습니다.
1주 전 (Week before)
경고: week before 기능은 더 이상 사용되지 않습니다(deprecated). 대신 값이 "-7d"인 calendar shift를 사용하세요.
| 함수 | 설명 | 예시 |
|---|---|---|
week_before() |
메트릭의 현재 타임스탬프보다 1주(7일) 전의 값을 그래프로 그립니다. | week_before(<METRIC_NAME>{*}) |
week_before() 값을 점선으로 표시한 cassandra.db.read_count의 예시입니다. 이 예시에서는 약 3주치 데이터가 표시되어 week_before() 데이터를 더 쉽게 구분할 수 있습니다.
1개월 전 (Month before)
경고: month before 기능은 더 이상 사용되지 않습니다(deprecated). 사용 사례에 따라 값이 "-1mo", "-30d" 또는 "-4w"인 calendar shift를 사용하세요.
| 함수 | 설명 | 예시 |
|---|---|---|
month_before() |
메트릭의 현재 타임스탬프보다 1개월(28일 / 4주) 전의 값을 그래프로 그립니다. | month_before(<METRIC_NAME>{*}) |
month_before() 값을 얇고 실선으로 표시한 aws.ec2.cpuutilization의 예시입니다.
기타 함수 (Other functions)
사용할 수 있는 다른 함수들을 확인해 보세요:
- 알고리즘 (Algorithmic): 메트릭에 이상 탐지(Anomaly) 또는 이상치(Outlier) 탐지를 적용합니다.
- 산술 (Arithmetic): 메트릭에 산술 연산을 수행합니다.
- 카운트 (Count): 메트릭 값 중 0이 아니거나 null이 아닌 값을 셉니다.
- 제외 (Exclusion): 메트릭의 특정 값을 제외합니다.
- 보간 (Interpolation): 메트릭의 기본값을 채우거나 설정합니다.
- 랭크 (Rank): 메트릭의 일부 하위 집합만 선택합니다.
- 레이트 (Rate): 메트릭에 대한 사용자 지정 미분값을 계산합니다.
- 회귀 (Regression): 메트릭에 머신러닝 함수를 적용합니다.
- 롤업 (Rollup): 메트릭에 사용되는 원시 데이터 포인트 수를 제어합니다.
- 스무딩 (Smoothing): 메트릭의 변동을 완만하게 다듬습니다.