• EnglishEspañol日本語한국어Português
  • 로그인지금 시작하기

사용자의 편의를 위해 제공되는 기계 번역입니다.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

문제 신고

자동 애플리케이션 이름 지정

애플리케이션에 부여하는 이름은 New Relic 성능 메트릭을 구성하는 데 도움이 될 수 있습니다.

New Relic의 Java 에이전트는 단일 JVM의 모든 트랜잭션 및 기타 측정항목을 app_name 설정 아래의 newrelic.yml 에 지정된 애플리케이션 이름으로 보고합니다(애플리케이션 이름 지정에 대한 자세한 내용은 Java 애플리케이션 이름 지정 참조). newrelic.ymlenable_auto_app_naming }를 true 로 변경하면 애플리케이션의 이름이 컨텍스트, 필터, 서블릿 또는 요청 속성에 따라 지정됩니다.

이 설정을 사용하면 New Relic 사용자 인터페이스에서 다른 적절한 애플리케이션에 트랜잭션, 오류 및 메트릭을 보고하는 동안 단일 JVM에서 여러 웹 애플리케이션을 실행할 수 있습니다. 백그라운드 작업은 newrelic.yml 의 기본 애플리케이션 이름을 계속 사용합니다.

중요

이러한 구성 변경 사항을 적용하려면 JVM을 다시 시작해야 합니다.

이 구성은 무한 추적이 활성화된 상태에서 작동하지 않습니다.

주의

자동 앱 이름 지정을 활성화하면 에이전트가 수집하는 데이터 양이 증가합니다. 데이터 수집에 대해 경고하고 모니터링하는 다양한 방법이 있습니다.

애플리케이션 이름 소스

enable_auto_app_namingtrue 로 설정하면 New Relic은 다음 정보 소스를 사용하여 애플리케이션의 이름을 지정합니다.

앱 유형

네이밍 소스

백그라운드 작업

의 기본 애플리케이션 이름 newrelic.yml

웹 트랜잭션

우선순위에 따라:

  • 요청 속성(가장 높은 우선순위)
  • 서블릿 초기화 매개변수
  • 필터 초기화 매개변수
  • 웹 앱 컨텍스트 매개변수
  • 웹 앱 컨텍스트 이름(표시 이름)
  • 웹 앱 컨텍스트 경로(최저 우선 순위)

요청 속성

APPLICATION_NAME 요청 속성은 XML의 모든 설정보다 우선합니다. 웹 트랜잭션에서 가능한 한 빨리 이 속성을 설정하십시오. 여러 번 호출되는 경우 마지막 호출에 따라 애플리케이션 이름이 결정됩니다.

APPLICATION_NAME ServletRequests에서만 작동합니다.

요청 URI를 기반으로 세분화된 애플리케이션 이름 지정을 위해 요청 속성을 사용하려면:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
...
String requestUri = httpServletRequest.getRequestURI();
if (requestUri.startsWith("/my-special-request/")) {
request.setAttribute("com.newrelic.agent.APPLICATION_NAME", "MySpecialWebApp");
}
...

서블릿 초기화 매개변수

초기화 매개변수 를 사용하여 web.xml 의 개별 서블릿에 대한 애플리케이션 이름을 설정하려면 다음을 수행합니다.

<servlet>
<servlet-name>SqlServlet</servlet-name>
<servlet-class>test.SqlServlet</servlet-class>
<init-param>
<param-name>com.newrelic.agent.APPLICATION_NAME</param-name>
<param-value>MyServletApp</param-value>
</init-param>
</servlet>

에이전트는 다음을 호출하여 init-param 의 값을 얻습니다.

javax.servlet.ServletConfig#getInitParameter(String)

인수 com.newrelic.agent.APPLICATION_NAME 사용.

웹 요청이 여러 서블릿을 호출하는 경우 완료되는 첫 번째 서블릿의 init-param 이 우선합니다. init-param 이 없는 서블릿은 웹 앱의 기본 애플리케이션 이름을 사용합니다.

애플리케이션 이름을 XML로 선언하는 것 외에도 javax.servlet.ServletRequest에 속성을 저장하여 애플리케이션 코드에서 설정할 수 있습니다.

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
...
request.setAttribute("com.newrelic.agent.APPLICATION_NAME", "MyWebApp");
...

필터 초기화 매개변수

웹 앱에 서블릿이 없으면 필터에 init 매개변수를 사용할 수 있습니다.

<filter>
<filter-name>SqlFilter</filter-name>
<filter-class>test.SqlFilter</filter-class>
<init-param>
<param-name>com.newrelic.agent.APPLICATION_NAME</param-name>
<param-value>MyFilterApp</param-value>
</init-param>
</filter>

에이전트는 com.newrelic.agent.APPLICATION_NAME 인수로 javax.servlet.FilterConfig#getInitParameter(String) 를 호출하여 init-param 값을 얻습니다. 서블릿은 애플리케이션 이름 지정을 위한 필터보다 우선하므로 필터의 초기화 매개변수는 서블릿이 호출되지 않은 경우에만 사용됩니다. 완료할 첫 번째 필터의 init-param 이 우선합니다.

컨텍스트 매개변수

컨텍스트 매개변수를 사용하여 애플리케이션 이름을 설정하려면:

<context-param>
<param-name>com.newrelic.agent.APPLICATION_NAME</param-name>
<param-value>MyWebApp</param-value>
</context-param>

에이전트는 com.newrelic.agent.APPLICATION_NAME 인수로 javax.servlet.ServletContext#getInitParameter(String) 를 호출하여 컨텍스트 매개변수의 값을 얻습니다. 컨텍스트 매개변수는 display-name 요소보다 우선합니다.

이름 표시하기

web.xml 에서 display-name 요소를 사용하여 애플리케이션 이름을 확인하려면 다음을 수행합니다.

<display-name>MyWebApp</display-name>

에이전트는 javax.servlet.ServletContext#getServletContextName() 을 호출하여 display-name 요소의 값을 얻습니다.

컨텍스트 경로

display-name 요소가 없고 앱 이름을 설정하는 데 다른 상위 계층 방법이 사용되지 않는 경우 애플리케이션 이름은 웹 앱의 컨텍스트 경로에서 가져옵니다. 에이전트는 javax.servlet.ServletContext#getContextPath() 을 호출하여 컨텍스트 경로를 얻습니다.

컨텍스트 경로는 요청 컨텍스트를 선택하는 데 사용되는 요청 URI 부분입니다. 컨텍스트 경로는 요청 URI에서 항상 첫 번째에 옵니다. 예를 들어:

다음 URL을 고려하십시오.

http://example.com/newrelic-axis2-ws/getWeather

이 URL에서:

  • 요청 URI는 /newrelic-axis2-ws/getWeather 입니다.
  • 컨텍스트 경로는 /newrelic-axis2-ws 입니다.
  • 애플리케이션의 이름은 newrelic-axis2-ws 입니다.
Copyright © 2024 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.