User agent processor
출처: 문서
본문
User agent 프로세서
user_agent 프로세서는 이벤트에 포함된 user agent(UA) 문자열을 파싱한 다음, 파싱 결과를 이벤트 데이터에 기록해요.
사용 방법
다음 예시에서 볼 수 있듯이, user_agent 프로세서는 UA 문자열이 담긴 소스인 ua 필드를 가리키고, 파싱된 문자열이 기록될 키인 user_agent를 지정해요:
processor:
- user_agent:
source: "ua"
target: "user_agent"
다음 예시 이벤트에는 사용자에 대한 정보를 제공하는 문자열이 담긴 ua 필드가 있어요:
{
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1"
}
user_agent 프로세서는 이 문자열을 Elastic Common Schema(ECS)와 호환되는 형식으로 파싱한 다음, 그 결과를 지정된 target에 추가해요. 다음 예시를 보세요:
{
"user_agent": {
"original": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1",
"os": {
"version": "13.5.1",
"full": "iOS 13.5.1",
"name": "iOS"
},
"name": "Mobile Safari",
"version": "13.1.1",
"device": {
"name": "iPhone"
}
},
"ua": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_5_1 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.1.1 Mobile/15E148 Safari/604.1"
}
설정 옵션
user_agent 프로세서와 함께 다음 설정 옵션을 사용할 수 있어요.
| 옵션 | 필수 여부 | 설명 |
|---|---|---|
source |
예 | 이벤트에서 파싱할 필드예요. |
target |
아니요 | 파싱된 이벤트가 기록될 필드예요. 기본값은 user_agent예요. |
exclude_original |
아니요 | 원본 UA 문자열을 파싱 결과에서 제외할지 여부를 결정해요. 기본값은 false예요. |
cache_size |
아니요 | 파서의 캐시 크기로, 단위는 메가바이트예요. 기본값은 1000이에요. |
tags_on_parse_failure |
아니요 | user_agent 프로세서가 UA 문자열 파싱에 실패했을 때 이벤트에 추가할 태그예요. |