- 필수 기능
- 시작하기
- Glossary
- 표준 속성
- Guides
- Agent
- 통합
- 개방형텔레메트리
- 개발자
- API
- Datadog Mobile App
- CoScreen
- Cloudcraft
- 앱 내
- 서비스 관리
- 인프라스트럭처
- 애플리케이션 성능
- APM
- Continuous Profiler
- 스팬 시각화
- 데이터 스트림 모니터링
- 데이터 작업 모니터링
- 디지털 경험
- 소프트웨어 제공
- 보안
- AI Observability
- 로그 관리
- 관리
Supported OS
이 점검에서는 Datadog 에이전트를 통해 IBM Webshpere Application Server(WAS)를 모니터링합니다. 이 점검은 IBM WAS 버전 >= 8.5.5를 지원합니다.
아래 지침을 따라 호스트에서 실행되는 에이전트에 대해 이 점검을 설치하고 설정하세요. 컨테이너화된 환경의 경우 이러한 지침을 적용하는 데 가이드가 필요하면 오토파일럿 통합 템플릿을 참조하세요.
IBM WAS Datadog 통합에서는 WebSphere Application Server에서 활성화된 PMI 카운터를 가져옵니다. 설정하려면 Datdog가 WAS에서 성능 데이터를 가져올 수 있도록 PerfServlet을 활성화해야 합니다.
기본적으로 이 점검에서는 JDBC, JVM, 스레드 풀, Servlet Session Manager 메트릭을 수집합니다. “custom_queries” 섹션에서 더 수집하고 싶은 메트릭을 추가할 수 있습니다. 예시를 보려면 샘플 점검 구성을 참고하세요.
IBM WAS 점검은 Datadog 에이전트 패키지에 포함되어 있습니다.
PerfServlet
을 활성화하세요.WebSphere Application Server 설치 경로가 <WAS_HOME>
인 경우 <WAS_HOME>/installableApps
디렉터리에서 servlet’s .ear file(PerfServletApp.ear)을 찾을 수 있습니다.
성능 servlet은 다른 servlet과 동일한 방법으로 배포됩니다. 도메인 내 단일 애플리케이션 서버 인스턴스에 servlet을 배포하세요.
참고: 버전 6.1부터는 PerfServlet을 작동할 때 애플리케이션 보안을 활성화해야 합니다.
기본적으로 애플리케이션 서버는 “Basic” 모니터링만 하도록 구성되어 있습니다. 내 JVM, JDBC, servlet 연결을 가시화하려면 내 애플리케이션 서버의 모니터링 중인 통계 세트를 “Basic"에서 “All"로 변경하세요.
Websphere Administration Console에서 Application servers > <YOUR_APP_SERVER> > Performance Monitoring Infrastructure (PMI)
으로 이동해 설정을 찾을 수 있습니다.
변경한 후 “Apply"를 클릭해 구성을 저장하고 애플리케이션 서버를 재시작하세요. 변경 몇 분 후에 JDBC, JVM, servlet 메트릭이 Datadog에 추가로 나타나기 시작합니다.
호스트에서 실행 중인 에이전트에 이 점검을 구성하는 방법:
에이전트 구성 디렉터리 루트에 있는 conf.d/
폴더에서 ibm_was.d/conf.yaml
파일을 편집하여 IBM WAS 성능 데이터를 수집하세요. 사용 가능한 모든 구성 옵션은 샘플 ibm_was.d/conf.yaml을 참고하세요.
에이전트 버전 > 6.0에서 사용 가능
Datadog 에이전트에서 로그 수집은 기본적으로 사용하지 않도록 설정되어 있습니다. datadog.yaml
파일에서 로그 수집을 사용하도록 설하세요.
logs_enabled: true
그 후 하단에 있는 logs
줄의 주석 처리를 제거하여 ibm_was.d/conf.yaml
을 편집하세요. WAS 로그 파일의 올바른 경로로 로그 path
를 업데이트합니다.
logs:
- type: file
path: /opt/IBM/WebSphere/AppServer/profiles/InfoSphere/logs/server1/*.log
source: ibm_was
service: websphere
컨테이너화된 환경의 경우 자동탐지 통합 템플릿에 다음 파라미터를 적용하는 방법이 안내되어 있습니다.
파라미터 | 값 |
---|---|
<INTEGRATION_NAME> | ibm_was |
<INIT_CONFIG> | 비어 있음 또는 {} |
<INSTANCE_CONFIG> | {"servlet_url": "http://%%host%%:%%port%%/wasPerfTool/servlet/perfservlet"} |
에이전트 버전 > 6.0에서 사용 가능
Datadog 에이전트에서 로그 수집은 기본값으로 비활성화되어 있습니다. 이를 활성화하려면 쿠버네티스 로그 수집을 참고하세요.
파라미터 | 값 |
---|---|
<LOG_CONFIG> | {"source": "ibm_was", "service": "<SERVICE_NAME>"} |
에이전트 상태 하위 명령을 실행하고 점검 섹션 아래에서 ibm_was
을 찾으세요.
ibm_was.can_connect (gauge) | The ability of the integration to connect to the Perf Servlet to collect metrics |
ibm_was.jdbc.allocate_count (gauge) | The total number of managed connections that were allocated since pool creation. Shown as connection |
ibm_was.jdbc.close_count (gauge) | The total number of managed connections that were destroyed since pool creation. Shown as connection |
ibm_was.jdbc.connection_handle_count (gauge) | The number of connections that are in use. Can include multiple connections that are shared from a single managed connection. Shown as connection |
ibm_was.jdbc.create_count (gauge) | The total number of managed connections that were created since pool creation. Shown as connection |
ibm_was.jdbc.fault_count (gauge) | The total number of faults, such as timeouts, in the connection pool. |
ibm_was.jdbc.free_pool_size (gauge) | The number of managed connections that are in the free pool. Shown as connection |
ibm_was.jdbc.jdbc_time (gauge) | The average time in milliseconds spent running in the JDBC driver that includes time that is spent in the JDBC driver, network, and database. Shown as millisecond |
ibm_was.jdbc.managed_connection_count (gauge) | The total number of managed connections in the free, shared, and unshared pools. Shown as connection |
ibm_was.jdbc.percent_maxed (gauge) | The percent of the time that all connections are in use. |
ibm_was.jdbc.percent_used (gauge) | The percent of the pool that is in use. |
ibm_was.jdbc.pool_size (gauge) | The size of the connection pool. |
ibm_was.jdbc.prep_stmt_cache_discard_count (gauge) | The total number of statements that are discarded by the least recently used (LRU) algorithm of the statement cache. |
ibm_was.jdbc.return_count (gauge) | The total number of managed connections that were returned since pool creation. Shown as connection |
ibm_was.jdbc.use_time (gauge) | The average time in milliseconds that a connection is in use. Shown as millisecond |
ibm_was.jdbc.wait_time (gauge) | The average waiting time in milliseconds until a connection is granted if a connection is not currently available. Shown as millisecond |
ibm_was.jdbc.waiting_thread_count (gauge) | The number of threads that are currently waiting for a connection. Shown as thread |
ibm_was.jvm.free_memory (gauge) | Deprecated, use ibmwas.jvm.freememory_gauge instead Shown as kibibyte |
ibm_was.jvm.free_memory_gauge (gauge) | The free memory in the JVM run time Shown as kibibyte |
ibm_was.jvm.heap_size (gauge) | Deprecated, use ibmwas.jvm.heapsize_gauge instead Shown as kibibyte |
ibm_was.jvm.heap_size_gauge (gauge) | The total memory in the JVM run time Shown as kibibyte |
ibm_was.jvm.process_cpu_usage (gauge) | Deprecated, use ibmwas.jvm.processcpuusagegauge instead Shown as percent |
ibm_was.jvm.process_cpu_usage_gauge (gauge) | The CPU Usage (in percent) of the Java virtual machine. Shown as percent |
ibm_was.jvm.up_time (gauge) | Deprecated, use ibmwas.jvm.uptime_gauge instead Shown as second |
ibm_was.jvm.up_time_gauge (gauge) | The amount of time that the JVM is running Shown as second |
ibm_was.jvm.used_memory (gauge) | Deprecated, use ibmwas.jvm.usedmemory_gauge instead Shown as kibibyte |
ibm_was.jvm.used_memory_gauge (gauge) | The used memory in the JVM run time Shown as kibibyte |
ibm_was.servlet_session.activate_non_exist_session_count (gauge) | The number of requests for a session that no longer exists, presumably because the session timed out. Use this counter to help determine if the timeout is too short. Shown as request |
ibm_was.servlet_session.active_count (gauge) | The number of concurrently active sessions. A session is active if the WebSphere Application Server is currently processing a request that uses that session. Shown as session |
ibm_was.servlet_session.affinity_break_count (gauge) | The number of requests that are received for sessions that were last accessed from another web application. This value can indicate failover processing or a corrupt plug-in configuration. Shown as request |
ibm_was.servlet_session.cache_discard_count (gauge) | The number of session objects that have been forced out of the cache. A least recently used (LRU) algorithm removes old entries to make room for new sessions and cache misses. Applicable only for persistent sessions. Shown as session |
ibm_was.servlet_session.create_count (gauge) | The number of sessions that were created Shown as session |
ibm_was.servlet_session.external_read_size (gauge) | Size of the session data read from persistent store. Applicable only for (serialized) persistent sessions; similar to external Read Time. |
ibm_was.servlet_session.external_read_time (gauge) | The time (ms) taken in reading the session data from the persistent store. For multirow sessions, the metrics are for the attribute; for single row sessions, the metrics are for the entire session. Applicable only for persistent sessions. When using a JMS persistent store, only available if replicated data is serialized. Shown as millisecond |
ibm_was.servlet_session.external_write_size (gauge) | The size of the session data written to persistent store. Applicable only for (serialized) persistent sessions. Similar to external Read Time. Shown as request |
ibm_was.servlet_session.external_write_time (gauge) | The time (milliseconds) taken to write the session data from the persistent store. Applicable only for (serialized) persistent sessions. Similar to external Read Time. Shown as millisecond |
ibm_was.servlet_session.invalidate_count (gauge) | The number of sessions that were invalidated Shown as session |
ibm_was.servlet_session.life_time (gauge) | The average session life time in milliseconds (time invalidated - time created) Shown as millisecond |
ibm_was.servlet_session.live_count (gauge) | The number of local sessions that are currently cached in memory from the time at which this metric is enabled. Shown as session |
ibm_was.servlet_session.no_room_for_new_session_count (gauge) | Applies only to session in memory with AllowOverflow=false. The number of times that a request for a new session cannot be handled because it exceeds the maximum session count. |
ibm_was.servlet_session.session_object_size (gauge) | The size in bytes of (the serializable attributes of ) in-memory sessions. Only session objects that contain at least one serializable attribute object is counted. A session can contain some attributes that are serializable and some that are not. The size in bytes is at a session level. |
ibm_was.servlet_session.time_since_last_activated (gauge) | The time difference in milliseconds between previous and current access time stamps. Does not include session time out. Shown as millisecond |
ibm_was.servlet_session.timeout_invalidation_count (gauge) | The number of sessions that are invalidated by timeout. Shown as session |
ibm_was.thread_pools.active_count (gauge) | The number of concurrently active threads Shown as thread |
ibm_was.thread_pools.active_time (gauge) | The average time in milliseconds the threads are in active state Shown as millisecond |
ibm_was.thread_pools.cleared_thread_hang_count (gauge) | The number of thread hangs cleared Shown as thread |
ibm_was.thread_pools.concurrent_hung_thread_count (gauge) | The number of concurrently hung threads Shown as thread |
ibm_was.thread_pools.create_count (gauge) | The total number of threads created Shown as thread |
ibm_was.thread_pools.declaredthread_hung_count (gauge) | The number of threads declared hung Shown as thread |
ibm_was.thread_pools.destroy_count (gauge) | The total number of threads destroyed Shown as thread |
ibm_was.thread_pools.percent_maxed (gauge) | The average percent of the time that all threads are in use Shown as percent |
ibm_was.thread_pools.percent_used (gauge) | The average percent of the pool that is in use. The value is based on the total number of configured threads in the ThreadPool and not the current pool size. Shown as percent |
ibm_was.thread_pools.pool_size (gauge) | The average number of threads in pool Shown as thread |
IBM WAS는 이벤트를 포함하지 않습니다.
ibm_was.can_connect
Returns CRITICAL
if the Agent cannot connect to the PerfServlet for any reason. Returns OK
otherwise.
Statuses: ok, critical
도움이 필요하신가요? Datadog 지원팀에 문의하세요.