- 重要な情報
- はじめに
- 用語集
- ガイド
- エージェント
- インテグレーション
- OpenTelemetry
- 開発者
- API
- CoScreen
- アプリ内
- Service Management
- インフラストラクチャー
- アプリケーションパフォーマンス
- 継続的インテグレーション
- ログ管理
- セキュリティ
- UX モニタリング
- 管理
Supported OS
このチェックは、Datadog Agent を通じて IBM Websphere Application Server (WAS) を監視します。このチェックは IBM WAS バージョン >= 8.5.5 をサポートします。
ホストで実行されている Agent 用にこのチェックをインストールおよび構成する場合は、以下の手順に従ってください。コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照してこの手順を行ってください。
IBM WAS Datadog インテグレーションは、有効になっている PMI カウンターを WebSphere Application Server 環境から収集します。セットアップでは PerfServlet を有効にする必要があります。PerfServlet は、Datadog が WAS からパフォーマンスデータを取得する方法を提供します。
このチェックはデフォルトで、JDBC、JVM、スレッドプール、および Servlet Session Manager のメトリクスを収集します。オプションで追加のメトリクスを指定して、“custom_queries” セクションに収集することができます。例については、サンプルチェック構成を参照してください。
IBM WAS チェックは Datadog Agent パッケージに含まれています。
PerfServlet
の有効化サーブレットの .ear ファイル (PerfServletApp.ear) は、<WAS_HOME>/installableApps
ディレクトリにあります。ここで、<WAS_HOME>
は WebSphere Application Server のインストールパスです。
パフォーマンスサーブレットは、他のサーブレットとまったく同様にデプロイされます。ドメイン内の単一のアプリケーションサーバーインスタンスに、サーブレットをデプロイします。
注: バージョン 6.1 から PerfServlet を動作させるには、アプリケーションセキュリティを有効にする必要があります。
デフォルトでは、アプリケーションサーバーは “基本” 監視用に構成されています。JVM、JDBC 接続、およびサーブレット接続を可視化するには、モニターされているアプリケーションサーバーの統計セットを “基本” から “すべて” に変更します。
この設定は、Websphere 管理コンソールの Application servers > <YOUR_APP_SERVER> > Performance Monitoring Infrastructure (PMI)
にあります。
この変更を行ったら、“適用” をクリックしてコンフィギュレーションを保存し、アプリケーションサーバーを再起動します。この変更を行ってからしばらくすると、追加した JDBC、JVM、およびサーブレットのメトリクスが Datadog に表示されます。
ホストで実行中の Agent に対してこのチェックを構成するには:
IBM WAS のパフォーマンスデータの収集を開始するには、Agent のコンフィギュレーションディレクトリのルートにある conf.d/
フォルダーの ibm_was.d/conf.yaml
ファイルを編集します。使用可能なすべてのコンフィギュレーションオプションの詳細については、サンプル ibm_was.d/conf.yaml を参照してください。
Agent バージョン 6.0 以降で利用可能
Datadog Agent で、ログの収集はデフォルトで無効になっています。以下のように、datadog.yaml
ファイルでこれを有効にします。
logs_enabled: true
次に、下部にある logs
行のコメントを解除して、ibm_was.d/conf.yaml
を編集します。ログの path
を WAS ログファイルの正しいパスで更新してください。
logs:
- type: file
path: /opt/IBM/WebSphere/AppServer/profiles/InfoSphere/logs/server1/*.log
source: ibm_was
service: websphere
コンテナ環境の場合は、オートディスカバリーのインテグレーションテンプレートのガイドを参照して、次のパラメーターを適用してください。
パラメーター | 値 |
---|---|
<インテグレーション名> | ibm_was |
<初期コンフィギュレーション> | 空白または {} |
<インスタンスコンフィギュレーション> | {"servlet_url": "http://%%host%%:%%port%%/wasPerfTool/servlet/perfservlet"} |
Agent バージョン 6.0 以降で利用可能
Datadog Agent で、ログの収集はデフォルトで無効になっています。有効にする方法については、Kubernetes ログ収集を参照してください。
パラメーター | 値 |
---|---|
<LOG_CONFIG> | {"source": "ibm_was", "service": "<SERVICE_NAME>"} |
Agent の status サブコマンドを実行し、Checks セクションの ibm_was
を探します。
ibm_was.can_connect (gauge) | The ability of the integration to connect to the Perf Servlet to collect metrics |
ibm_was.jdbc.create_count (gauge) | The total number of managed connections that were created 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.allocate_count (gauge) | The total number of managed connections that were allocated since pool creation. Shown as connection |
ibm_was.jdbc.return_count (gauge) | The total number of managed connections that were returned since pool creation. Shown as connection |
ibm_was.jdbc.pool_size (gauge) | The size of 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.waiting_thread_count (gauge) | The number of threads that are currently waiting for a connection. Shown as thread |
ibm_was.jdbc.fault_count (gauge) | The total number of faults, such as timeouts, in the connection pool. |
ibm_was.jdbc.percent_used (gauge) | The percent of the pool that is in use. |
ibm_was.jdbc.percent_maxed (gauge) | The percent of the time that all connections are in use. |
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.managed_connection_count (gauge) | The total number of managed connections in the free, shared, and unshared pools. 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.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.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.jvm.heap_size (gauge) | Deprecated, use ibmwas.jvm.heapsize_gauge instead Shown as kibibyte |
ibm_was.jvm.free_memory (gauge) | Deprecated, use ibmwas.jvm.freememory_gauge instead Shown as kibibyte |
ibm_was.jvm.used_memory (gauge) | Deprecated, use ibmwas.jvm.usedmemory_gauge instead Shown as kibibyte |
ibm_was.jvm.up_time (gauge) | Deprecated, use ibmwas.jvm.uptime_gauge instead Shown as second |
ibm_was.jvm.process_cpu_usage (gauge) | Deprecated, use ibmwas.jvm.processcpuusagegauge instead Shown as percent |
ibm_was.jvm.heap_size_gauge (gauge) | The total memory in the JVM run time Shown as kibibyte |
ibm_was.jvm.free_memory_gauge (gauge) | The free memory in the JVM run time Shown as kibibyte |
ibm_was.jvm.used_memory_gauge (gauge) | The used memory in the JVM run time Shown as kibibyte |
ibm_was.jvm.up_time_gauge (gauge) | The amount of time that the JVM is running Shown as second |
ibm_was.jvm.process_cpu_usage_gauge (gauge) | The CPU Usage (in percent) of the Java virtual machine. Shown as percent |
ibm_was.thread_pools.create_count (gauge) | The total number of threads created Shown as thread |
ibm_was.thread_pools.destroy_count (gauge) | The total number of threads destroyed Shown as thread |
ibm_was.thread_pools.active_count (gauge) | The number of concurrently active threads Shown as thread |
ibm_was.thread_pools.pool_size (gauge) | The average number of threads in pool 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.declaredthread_hung_count (gauge) | The number of threads declared hung Shown as thread |
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.active_time (gauge) | The average time in milliseconds the threads are in active state Shown as millisecond |
ibm_was.servlet_session.create_count (gauge) | The number of sessions that were created Shown as session |
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.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.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.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.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_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_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.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.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.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.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.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 には、イベントは含まれません。
ibm_was.can_connect
Returns CRITICAL
if the Agent cannot connect to the PerfServlet for any reason. Returns OK
otherwise.
Statuses: ok, critical
ご不明な点は、Datadog のサポートチームまでお問合せください。