- はじめに
- エージェント
- インテグレーション
- Watchdog
- イベント
- ダッシュボード
- モバイルアプリケーション
- インフラストラクチャー
- サーバーレス
- メトリクス
- ノートブック
- アラート設定
- APM & Continuous Profiler
- CI Visibility
- RUM & セッションリプレイ
- データベース モニタリング
- ログ管理
- セキュリティプラットフォーム
- Synthetic モニタリング
- ネットワークモニタリング
- 開発者
- API
- アカウントの管理
- データセキュリティ
- ヘルプ
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.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 のサポートチームまでお問合せください。