백엔드 경로 그룹 구성
경로 그룹은 백엔드 URL 경로 접두사를 사용하여 정의한 웹 서비스 HTTP 클라이언트 요청의 명명된 그룹입니다.
apmdevops104kr
경로 그룹
은 백엔드 URL 경로 접두사를 사용하여 정의한 웹 서비스 HTTP 클라이언트 요청의 명명된 그룹입니다.3
2
백엔드 경로 그룹 사용
각 경로 그룹에 대한 메트릭은 Investigator 메트릭 브라우저 트리에서
Backends|WebService at <
노드 아래에 집계됩니다. 기본적으로 모든 백엔드 URL 경로는 프로토콜
>_//<호스트
>_<포트
>|PathsDefault
라는 그룹에 할당됩니다. 경로 그룹을 사용하면 백엔드에서 호출되는 요청 수를 확인하고 성능 문제를 진단할 수 있습니다.다음 예에서는 메트릭 브라우저 트리에 표시되는 세 개의 백엔드 URL 경로를 보여 줍니다.
Backends|WebService at http_//host_port|Paths|alphaHTTPClientPostBackends|WebService at http_//host_port|Paths|betaHTTPClientGetBackends|WebService at http_//host_port|Paths|Default
다음 예에서는 에이전트 프로필에서 이 세 개의 경로 그룹이 정의된 방식을 보여 줍니다.
introscope.agent.backendpathgroup.keys=alphaHTTPClientPost,betaHTTPClientGet,defaultintroscope.agent.backendpathgroup.group.alphaHTTPClientPost.pathprefix=/testWar/helloWorld/alphaHTTPClientPostintroscope.agent.backendpathgroup.group.alphaHTTPClientPost.format=alphaHTTPClientPostintroscope.agent.backendpathgroup.group.betaHTTPClientGet.pathprefix=/testWar/helloWorld/betaHTTPClientGetintroscope.agent.backendpathgroup.group.betaHTTPClientGet.format=betaHTTPClientGetintroscope.agent.backendpathgroup.group.default.pathprefix=*introscope.agent.backendpathgroup.group.default.format=Default
경로 그룹에 대한 키 정의
에이전트 프로필의
introscope.agent.backendpathgroup.keys
구분 기호 문자는 모든 경로 그룹의 키 목록을 정의합니다. 경로 그룹의 키는 해당 경로 그룹의 특성을 선언하는 다른 속성 정의에서 참조됩니다.introscope.agent.backendpathgroup.keys=alpha,beta,default
각 항목에는 경로를 정의하고 출력 결과를 매칭하는 데 사용되는 다음과 같은 두 개의 속성이 있습니다.
introscope.agent.backendpathgroup.group.[Key].pathprefixintroscope.agent.backendpathgroup.group.[Key].format
[
Key
] 항목은 명명된 속성을 찾는 데 사용됩니다. [
값은 다음과 같이 keys 속성과 일치합니다.Key
]introscope.agent.backendpathgroup.keys=key_one,key_two,key_threeintroscope.agent.backendpathgroup.group.key_one.pathprefixintroscope.agent.backendpathgroup.group.key_one.formatintroscope.agent.backendpathgroup.group.key_two.pathprefixintroscope.agent.backendpathgroup.group.key_two.formatintroscope.agent.backendpathgroup.group.key_three.pathprefixintroscope.agent.backendpathgroup.group.key_three.format
일부 경로가 여러 그룹에 속하도록 경로 그룹을 정의하는 경우 속성에서 경로 그룹의 키를 나열하는 순서는 중요합니다. 그룹 구성원이 더 적은 경로 그룹은 그룹 구성원이 더 많은 경로 그룹보다 앞에 와야 합니다.
각 경로 그룹의 구성원 자격 정의
introscope.agent.backendpathgroup.group.default.pathprefix
속성은 경로의 경로 접두사를 매칭할 패턴을 지정하여 경로 그룹에 속하는 요청을 정의합니다.예: 그룹 키를 경로 접두사에 매핑
다음 속성 정의는 전체 URL 경로의 경로 부분이
/testWar
로 시작하는 모든 요청을 키가 alphaHTTPClientPost
인 경로 그룹에 할당합니다.introscope.agent.backendpathgroup.group.alphaHTTPClientPost.pathprefix=/testWar
지정된
pathprefix
와 일치하는 요청은 다음을 포함합니다.http://backend.ca.com:1234/testWar/example/post.htm
pathprefix
속성에서 별표 기호(*)를 와일드카드로 사용할 수 있습니다.경로 그룹의 이름 정의
introscope.agent.backendpathgroup.group.<키>.format
속성은 경로 그룹에 대한 응답 시간 메트릭이 생성될 때 사용되는 이름을 결정합니다.일반적으로
introscope.agent.backendpathgroup.group.<키>.format
속성은 경로의 이름으로 텍스트 문자열을 할당하는 데 사용됩니다. 다음 예는 키가 alpha
인 경로 그룹에 대한 메트릭이 메트릭 브라우저 트리에서 Alpha Group
이라는 이름 아래에 표시되도록 합니다.introscope.agent.backendpathgroup.group.alpha.format=Alpha Group
(선택 사항) 경로 그룹에 대한 고급 명명 기술
프로토콜과 같은 요청 요소나 요청 경로의 부분 문자열에서 경로 그룹 이름을 파생시킬 수 있습니다. 이 섹션에서는 i
ntroscope.agent.backendpathgroup.group.
<키>.format
속성의 고급 형식에 대해 설명합니다.요청 경로의 부분 문자열을 경로 그룹 이름으로 사용
경로 그룹에 대한 통계를 요청 경로 중 경로 부분의 부분 문자열을 반영하는 이름 아래에 구성할 수 있습니다. 다음과 같이
introscope.agent.backendpathgroup.group.<키>
을 정의하십시오..format
introscope.agent.backendpathgroup.group.alpha.format={path_substring:m:n}
여기서
m
은 첫 번째 문자의 인덱스이고 n
은 마지막 문자의 인덱스보다 1만큼 더 큽니다. 문자열 선택은 java.lang.String.substring()
메서드와 같이 동작합니다. 예를 들어 다음과 같이 설정할 수 있습니다.introscope.agent.backendpathgroup.group.alpha.format={path_substring:0:3}
다음 URL이 사용됩니다.
http://www.buyitall.com/userid,sessionid/pageid
통계는
/us
아래에 표시됩니다.경로 그룹화는 URL의 경로 부분에 대해서만 작동합니다. 앞의 예에서는
/testWar/helloWorld/alphaHTTPClientPost
에 해당합니다.요청 경로의 구분된 부분을 경로 그룹 이름으로 사용
경로 그룹에 대한 통계를 문자로 구분된 부분의 요청 경로를 반영하는 이름 아래에 구성하려면 다음과 같이
format
매개 변수를 정의하십시오.introscope.agent.backendpathgroup.group.alpha.format={path_delimited:delim_char:m:n}
여기서
delim_char
는 경로의 세그먼트를 구분하는 문자이고, m
은 선택할 첫 번째 세그먼트의 인덱스이며, n
은 선택할 마지막 세그먼트의 인덱스보다 1만큼 더 큰 값입니다. 예를 들어 다음과 같이 설정되었다고 가정해 보겠습니다.introscope.agent.backendpathgroup.group.alpha.format={path_delimited:/:2:4}
또한 다음 형식의 요청에 대한 통계가 있다고 가정해 보겠습니다.
http://www.buyitall.com/userid,sessionid/pageid
이 통계는 메트릭 이름
/pageid
아래에 나타납니다.다음 규칙을 따르십시오.
- 구분 기호 문자는 한 세그먼트로 간주됩니다. 앞의 예에서 구분 기호 문자는 슬래시(/)입니다.
- 세그먼트 번호는 0부터 시작합니다.
- 경로 그룹화는 URL의 경로 부분에 대해서만 작동합니다. 앞의 예에서 URL의 경로 부분은/userid,sessionid/pageid입니다.
이 경로 예에서 슬래시 문자로 구분된 세그먼트는 다음과 같습니다.
0=
/
, 1=userid,sessionid
, 2=/
, 3=pageid
여러 구분자를 필요한 대로 지정할 수 있습니다. 예를 들어 다음과 같이 설정되었다고 가정해 보겠습니다.
introscope.agent.backendpathgroup.group.alpha.format={path_delimited:/,:3:4}
앞의 예에 표시된 것과 같은 형식의 요청에 대한 통계는 메트릭 이름
sessionid
아래에 나타납니다. 이 경로 예에서 슬래시와 쉼표로 구분된 세그먼트는 다음과 같습니다.0=
/
, 1=userid
, 2=„,
3=sessionid
, 4=/
, 5=pageid
고유 백엔드 경로 URL 그룹 메트릭의 수 제한
introscope.agent.backendpathgroup.group.backend.url.clamp
속성을 사용하여 Java 에이전트가 생성하는 고유 백엔드 경로 그룹 URL 메트릭의 수를 제한할 수 있습니다. 새 백엔드 경로 그룹의 수가 설정된 값에 도달하면 새 백엔드 경로 그룹 URL에 대한 메트릭은 메트릭 브라우저의 Backends|WebService at {프로토콜}_//{호스트}_{포트}|Paths|
Default
노드 아래에 표시됩니다. 이 속성은 메트릭 급증을 방지하는 데 유용합니다.Backends|WebService at {프로토콜}_//{호스트}_{포트}|Paths
노드에서 의미 있는 메트릭을 수집하려면 배포 환경과 관련된 백엔드 경로 그룹을 설정하십시오.다음 단계를 따르십시오.
- <에이전트 홈>/core/config 디렉터리에 있는 IntroscopeAgent.profile을 텍스트 편집기에서 엽니다.
- "URL Grouping Configuration" 섹션으로 이동합니다.
- introscope.agent.backendpathgroup.group.backend.url.clamp속성을 구성합니다.기본 백엔드 경로 그룹 URL 수는 5개입니다.
- 파일을 저장하고 닫습니다.관리되는 응용 프로그램을 다시 시작할 필요가 없습니다.
백엔드 경로 그룹 이름 지정
다음 백엔드 경로 그룹 속성은 모두가 introscopeAgent.profile의 기본 설정 값으로 설정된 경우에 함께 작동합니다.
introscope.agent.backendpathgroup.group.keys=default introscope.agent.backendpathgroup.group.group.default.pathprefix=* introscope.agent.backendpathgroup.group.default.format={path_delimited:/:0:5} introscope.agent.backendpathgroup.group.backend.url.clamp=5
이 구성을 사용할 경우 기본 백엔드 경로는 백엔드 경로 그룹에 표시됩니다. 해당 그룹은 백엔드 경로 중 프로토콜 뒷부분에 두 개의 세그먼트로 명명되고 배치됩니다.
예를 들어 백엔드 경로는 일반적으로
Backends|WebService at {프로토콜}_//{호스트}_{포트}|Paths
노드 아래에 나열됩니다. 모든 Java 응용 프로그램에서 생성된 백엔드 경로 그룹의 수가 introscope.agent.backendpathgroup.group.backend.url.clamp
설정에 도달하면 새 백엔드 경로는 Backends|WebService at {프로토콜}_//{호스트}_{포트}|Paths|
Default
노드 아래에 표시됩니다.