背景
あるログを検索しようとしてNRQLを書いていたが、合っているはずの比較がうまく動作しなかった。
NRQL
-- timestampがJanuary 1, 2025 0:00:00だが、以下はfalseになった
WHERE hourOf(timestamp) = 15
原因
NRQLでは、hourOf
にtimestamp
を渡しただけでは 15:00
のような文字列の出力になり、数値と比較することができない。
対応
第二引数に numeric
を渡したところ、数値と比較ができるようになった。
NRQL
AND hourOf(timestamp, numeric) = 15
解説
NRQLのhourOf
やminuteOf
は、第二引数にformat (string
or numeric
) を渡すことができる。ここにnumeric
を渡すことで、数値として出力されるようになり、数値との比較が可能になる。
参考記事
NRQL: 時間ごとのファセット結果
https://docs.newrelic.com/jp/docs/nrql/nrql-references/nrql-group-results-across-time/