정렬
sort
를 사용하여 지정된 필드에 로그 이벤트를 오름차순(asc
) 또는 내림차순(desc
)으로 표시합니다. 이를 limit
명령과 함께 사용하여 '상위 N개' 또는 '하위 N개' 쿼리를 생성할 수 있습니다.
이 정렬 알고리즘은 자연 정렬의 업데이트된 버전입니다. 오름차순으로 정렬하면 다음 로직이 사용됩니다.
숫자가 아닌 모든 값은 모든 숫자 값 앞에 옵니다. 숫자 값은 숫자와 다른 문자의 혼합이 아니라 숫자만 포함하는 값입니다.
숫자가 아닌 값의 경우 알고리즘은 비교를 위해 연속된 숫자와 연속된 영문자를 별도의 청크로 그룹화합니다. 알고리즘은 숫자가 아닌 부분을 유니코드 값으로 정렬하고 숫자 부분은 먼저 길이로 정렬한 다음 숫자 값으로 정렬합니다.
유니코드 순서에 대한 자세한 내용은 유니코드 문자 목록
예를 들어 다음은 오름차순 정렬 결과입니다.
!: >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> sorted by unicode order # *%04 0# >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Alphanumeric starting with numbers 5A 111A >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Starts with more digits than 5A, so it sorted to be later than 5A 2345_ @ >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> 2345 is compared with @ in the unicode order, @_ A >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Values starting with letters A9876fghj a12345hfh 0 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Number values 01 1 2 3
내림차순으로 정렬하면 정렬 결과가 반대가 됩니다.
예를 들어 Amazon VPC 흐름 로그에 대한 다음 쿼리는 호스트 전반의 상위 15개 패킷 전송을 찾습니다.
stats sum(packets) as packetsTransferred by srcAddr, dstAddr | sort packetsTransferred desc | limit 15