- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- Administrator's Guide
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
쿼리 필터는 용어와 연산자로 구성되어 있습니다.
용어에는 다음과 같은 두 가지 유형이 있습니다.
단일 용어는 test
또는 hello
과 같은 하나의 단어입니다.
시퀀스는 "hello dolly"
와 같이 큰 따옴표로 묶인 단어의 그룹입니다.
복잡한 쿼리로 여러 용어를 결합하려면, 대소문자를 구분해 다음 부울 연산자를 사용할 수 있습니다.
연산자 | 설명 | 예시 |
AND | Intersection: 모든 용어가 선택한 이벤트에 존재합니다(추가된 것이 없으면 AND가 기본적으로 적용됨). | 인증 AND 실패 |
OR | Union 용어 중 하나가 선택한 이벤트에 포함되어 있습니다. | 인증 OR 비밀번호 |
- | 예외: 다음 용어가 이벤트에 존재하지 않습니다(개별 원본 텍스트 검색에 적용됨). | 인증 AND -비밀번호 |
*:search_term
구문을 사용하여 로그 메시지를 포함하는 모든 로그 속성에서 전체 텍스트 검색을 실행할 수 있습니다.
검색 구문 | 검색 유형 | 설명 |
---|---|---|
*:hello | 전체 텍스트 | 모든 로그 속성에서 정확히 hello 문자열을 검색합니다. |
hello | 무료 텍스트 | 로그 메시지에서 정확히 hello 문자열만 검색합니다. |
검색 구문 | 검색 유형 | 설명 |
---|---|---|
*:hello | 전체 텍스트 | 모든 로그 속성에서 정확히 hello 문자열을 검색합니다. |
*:hello* | 전체 텍스트 | 전체 로그 속성에서 hello 로 시작하는 문자열을 검색합니다. 예를 들어 hello_world 가 있을 수 있습니다. |
검색 구문 | 검색 유형 | 설명 |
---|---|---|
*:"hello world" | 전체 텍스트 | 모든 로그 속성에서 정확히 hello world 문자열을 검색합니다. |
hello world | 프리 텍스트 | 로그 메시지에서만 hello 및 world 단어를 검색합니다. 예로 hello beautiful world 가 있습니다. |
+
, -
, =
, &&
, ||
, >
, <
, !
, (
, )
, {
, }
, [
, ]
, ^
, "
, “
, ”
, ~
, *
, ?
, :
, \
, #
와 같은 특수 문자와 공백은 \
문자로 이스케이프 처리해야 합니다.
/
는 특수 문자로 간주되지 않으므로 이스케이프 처리할 필요가 없습니다.
로그 메시지에서는 특수 문자를 검색할 수 없습니다. 특수 문자가 속성 내에 있는 경우에만 검색할 수 있습니다.
특수 문자를 검색하려면, Grok 파서가 포함된 속성으로 파싱한 다음 해당 속성을 포함하는 로그를 검색합니다.
특정 속성의 검색 에 @
를 추가하여 검색 중인 속성을 지정합니다.
예를 들어, 속성 이름이 URL이고 URL 값을 필터링하려면 www.datadoghq.com
을 입력합니다:
@url:www.datadoghq.com
참고:
속성의 검색 및 태그 에 패싯을 정의할 필요는 없습니다.
속성 검색은 대소문자를 구분합니다. 대소문자를 구분하지 않는 결과를 얻으려면 [전체 텍스트 검색](#전체 텍스트-검색)를 사용하세요. 또 다른 옵션은 대소문자를 구분하지 않는 결과를 얻으려면 lowercase
필터를 Grok 파서와 함께 사용하고 파싱 동안 대소문자를 구분하지 않는 결과를 얻으려면 검색 을 사용하는 것입니다.
특수 문자가 포함된 속성 값을 검색하려면 이스케이프 또는 큰따옴표를 사용해야 합니다.
hello:world
값을 포함하는 my_attribute
속성의 경우 @my_attribute:hello\:world
또는 @my_attribute:"hello:world"
를 사용하여 검색합니다.?
와일드카드를 사용합니다. 예를 들어 hello world
값이 포함된 my_attribute
속성의 경우 @my_attribute:hello?world
를 사용해 검색합니다.예:
검색 쿼리 | 설명 |
---|---|
@http.url_details.path:"/api/v1/test" | http.url_details.path 속성에서 /api/v1/test 와 일치하는 모든 로그를 검색합니다. |
@http.url:/api\-v1/* | /api-v1/ 로 시작하는 http.url 속성의 값을 포함하는 모든 로그를 검색합니다. |
@http.status_code:[200 TO 299] @http.url_details.path:/api\-v1/* | http.status_code 값이 200에서 299 사이이고 /api-v1/ 로 시작하는 http.url_details.path 속성 값을 포함하는 모든 로그를 검색합니다. |
-@http.status_code:* | http.status_code 속성이 포함되지 않은 모든 로그 검색 |
클래스 없는 도메인 간 라우팅(CIDR)은 사용자가 다양한 IP 주소(CIDR 블록으로도 명명)를 간결하게 정의할 수 있는 표기법입니다. CIDR은 네트워크 (예: VPC) 또는 서브네트워크(예: VPC 내의 공용/비공용 서브넷)를 정의하는 데 가장 일반적으로 사용됩니다.
사용자는 CIDR 표기법을 통해 로그에서 속성을 쿼리하는 데 CIDR()
함수를 사용할 수 있습니다. CIDR()
함수는 로그을 필터링할 파라미터로 로그 속성에 전달되어야 하며 이후 하나 이상의 CIDR 블록을 사용해야 합니다.
CIDR(@network.client.ip,13.0.0.0/8)
은 13.0.0.0/8 CIDR 블록에 속하는 network.client.ip
필드의 IP 주소를 포함하는 로그를 검색하고 필터링합니다.CIDR(@network.ip.list,13.0.0.0/8, 15.0.0.0/8)
은 배열 속성 network.ip.list
에 13.0.0.0/8 또는 15.0.0.0/8 CIDR 블록에 속하는 IP 주소가 있는 로그를 검색하고 필터링합니다.source:pan.firewall evt.name:reject CIDR(@network.client.ip, 13.0.0.0/8)
은 출발지가 13.0.0.0/8 서브넷인 팔로 알토 방화벽의 거부 이벤트를 검색하고 필터링합니다.source:vpc NOT(CIDR(@network.client.ip, 13.0.0.0/8)) CIDR(@network.destination.ip, 15.0.0.0/8)
은 출발지 서브넷이 13.0.0.0/8이 아니며 목적지 서브넷이 15.0.0.0/8로 지정된 모든 VPC 로그를 표시합니다. 이는 서브넷 간 환경의 네트워크 트래픽을 분석하는 데 사용할 수 있습니다.CIDR()
함수는 IPv4 및 IPv6 CIDR 표기법을 모두 지원하며 대시보드, 로그 모니터 및 로그 설정의 로그 탐색기, 라이브 테일, 로그 위젯에서 작동합니다.
와일드카드를 프리 텍스트 검색과 함께 사용할 수 있습니다. 그러나 로그 탐색기의 content
열에 있는 텍스트인 로그 메시지에 있는 용어만 검색합니다. 로그 속성에서 값을 검색하려면 전체 텍스트 검색을 참조하세요.
로그 메시지(로그 탐색기의 content
열)에서 복수 문자에 대한 와일드카드 검색을 수행하려면 다음과 같이 *
기호를 사용합니다.
service:web*
은 web
으로 시작하는 서비스가 포함된 모든 로그 메시지를 찾습니다.web*
은 web
으로 시작되는 모든 로그 메시지를 찾습니다.*web
은 web
으로 끝나는 모든 로그 메시지를 찾습니다.참고: 와일드카드는 큰따옴표 밖에서만 와일드카드로 작동합니다. 예를 들어 "*test*"
는 메시지에 *test*
문자열이 있는 로그를 찾습니다. *test*
는 메시지 내에서 그 위치와 관계없이 test 문자열이 있는 로그를 찾습니다.
와일드카드 검색은 이 구문을 포함하는 태그 및 속성(패싯 처리/처리 안 됨) 내에서 작동합니다. 이 쿼리는 mongo
문자열로 끝나는 모든 서비스를 반환합니다.
service:*mongo
와일드카드는 로그 속성의 일부가 아닌 로그의 일반 텍스트를 검색하는 데에도 사용할 수 있습니다. 예를 들어 이 쿼리는 NETWORK
문자열을 포함하는 콘텐츠(메시지)가 있는 모든 로그를 반환합니다.
*NETWORK*
그러나 이 검색어는 로그 메시지의 일부가 아니거나 로그 속성에 포함되지 않은 경우 NETWORK
문자열을 포함하는 로그를 반환하지 않습니다.
특수 문자를 포함하거나 이스케이핑 또는 따옴표를 필요로 하는 속성 또는 태그 값을 검색하는 경우, ?
와일드카드를 사용해 단일 특수 문자나 공백을 찾습니다. 예를 들어 hello world
값이 포함된 my_attribute
속성을 검색하려면 @my_attribute:hello?world
를 사용합니다.
숫자 속성을 검색하려면 먼저 패싯으로 추가합니다. 그런 다음 숫자 연산자(<
,>
, <=
, 또는 >=
)를 사용하여 숫자 패싯을 검색합니다.
예를 들어 다음을 사용해 응답 시간이 100ms 이상인 로그 을 모두 검색합니다.
@http.response_time:>100
특정 범위 내의 숫자 속성을 검색할 수 있습니다. 예를 들어 다음을 사용하여 4xx 오류 모두를 검색합니다.
@http.status_code:[400 TO 499]
로그는 호스트 및 통합에서 태그를 상속합니다. 검색에서 패싯으로도 사용할 수 있습니다.
test
는 문자열 “test"를 검색합니다.env:(prod OR test)
는 env:prod
태그 또는 env:test
태그를 포함하는 모든 로그와 일치합니다.(env:prod AND -version:beta)
는 env:prod
태그를 포함하고 version:beta
태그를 포함하지 않는 모든 로그와 일치합니다.태그가 태그 모범 사례를 따르지 않고 key:value
구문을 사용하지 않는 경우 이 검색 쿼리를 사용하세요.
tags:<MY_TAG>
아래 예제에서 패싯의 Peter
값을 클릭하면 users.names
속성이 포함된 로그가 모두 반환되며, 그 값은 Peter
또는 Peter
가 포함된 배열입니다.
참고: 검색은 동등한 구문을 통해 패싯이 아닌 배열 속성에서도 사용할 수 있습니다.
다음 예시에서 윈도우즈(Windows)에 대한 클라우드와치(CloudWatch) 로그는 @Event.EventData.Data
아래에 JSON 객체 배열을 포함합니다. JSON 객체 배열에서는 패싯을 만들 수 없지만 다음 구문을 사용하여 검색할 수 있습니다.
@Event.EventData.Data.Name:ObjectServer
는 Name
키와 ObjectServer
값을 포함하는 모든 로그와 일치합니다.계산된 필드는 로그 속성과 같이 기능하며, 검색, 집계, 시각화 및 기타 계산된 필드 정의에 사용할 수 있습니다. #
접두사를 사용하여 계산된 필드 이름을 참조합니다.
저장된 보기에는 검색 쿼리 , 열, 시간대 및 패싯이 포함됩니다.
추가 유용한 문서, 링크 및 기사: