本文へスキップ

Kubernetes Agent Release Notes

2026-10-26

v1.9.32

Java Agent v2.2.68 を含む

Feature ノードごとの対象プロセス数を収集

  • ノードごとの対象プロセス数をkube_process_countのcountフィールドとして収集します。
  • 対象プロセスが終了してもcount=0を送信し続けるため、メトリクスイベントでプロセスの停止を検知できます。
  • 収集対象はnode helperのcollect_kube_node_process_metric_target_listで指定し、/proc/PID/statusのNameと完全に一致する必要があります。Linuxが提供する最大15バイトの名前を使用します(例: kube-controller)。
  • collect_kube_node_process_metric_enabledと既存の収集・送信周期の設定に従い、既定の周期は5秒です。
  • 収集の失敗や古いデータは、0で代替して送信しません。
  • 既存のkube_processのデータ形式は変更しません。
  • node helperを含むnode agentとmaster agentのイメージを、一緒に1.9.32へ更新してください。別途OperatorのアップグレードやRBACの変更は必要ありません。
  • ノート

    1.9.32のnode agentと旧バージョンのnode helperを一緒に使用すると、プロセス数のメトリクスは収集されません。

Changed APMコンテナへのコンテナIDの書き込みに失敗した場合、node helperが再試行

  • 従来は、コンテナがRunning状態になった直後に一度だけコンテナID(container.conf)の書き込みを実行していました。
  • アプリケーションの起動が遅くエージェントファイル(例: Pythonの/whatap-agent/whatap_python)がまだ存在しない場合や、一時的な実行エラーが発生した場合に、同じDeployment内でも該当Podのみコンテナ連携情報が欠落する問題を改善しました。
  • 失敗すると、10秒から間隔を2倍ずつ延ばしながら(最大5分)、最大6回まで再試行します。
  • 各実行は30秒以内に終了しない場合、中断します。
  • アップデートによってnode agentのPodが再起動すると、以前のバージョンで連携が欠落したPodにもcontainer.confが作成されます。それでも連携が表示されない場合は、該当アプリケーションのPodを再起動してください。

2026-10-06

v1.9.31

Java Agent v2.2.68 を含む

Changed ConfigMapで指定したWHATAP_JAVA_AGENT_PATHでもJava APMとコンテナIDを連携

  • アプリケーションコンテナのWHATAP_JAVA_AGENT_PATHをenv[].valueFrom.configMapKeyRefで指定した場合も、node helperがJava APMとコンテナIDを連携します。
  • コンテナの起動時に解決された環境変数を使用するため、起動後に変更されたConfigMapの値と混同しません。
  • valueの直接指定やパスの自動検出など、従来の代替経路はそのまま維持します。
  • ConfigMapやSecretの参照権限は追加しません。
  • ConfigMapの値を変更した場合は、該当アプリケーションのPodを再作成すると環境変数に反映されます。
  • node helperを含むnode agentとmaster agentのイメージを、一緒に1.9.31へ更新してください。別途OperatorのアップグレードやRBACの変更は必要ありません。
  • ノート

    サポート範囲は個別のenv[].valueFrom.configMapKeyRefです。envFrom.configMapRefによる一括取得やその他のvalueFrom形式は含まれず、Java APMの自動インストール機能とは別です。

2026-10-02

v1.9.30

Java Agent v2.2.68 を含む

Changed Podのコンテナ集計を実際の収集対象と同じ集合に統一

  • コンテナの識別子、名前、個数、状態を、実際のコンテナ収集対象と同じ集合で集計します。
  • 通常のコンテナとNative Sidecar、コンテナがないPodを含みます。

Changed 収集サーバーへの接続時にYardバージョンの確認を追加

  • Yard 3.1.9以降が確認されたプロジェクトでのみ、新しいPodコンテナ集計形式を使用します。
  • 旧バージョンのYardの場合や、バージョン照会が未対応・失敗・タイムアウトした場合は、従来の送信形式を維持します。
  • 再接続時には、待機中のデータも現在の接続のサーバーバージョンに合わせた形式で送信します。
  • バージョン照会は、node agentとmaster agentそれぞれの接続ごとに1回実行し、定期的に再試行はしません。
  • Yard 3.1.8系以下ではバージョン照会要求に対応していないため、Yardのログに[Y106]エラーとスタックトレースが残る場合があります。既存のデータ収集には影響せず、Yard 3.1.9以降に更新すると解消されます。
  • 注意

    [Y106]は他の例外にも使用されます。すべての[Y106]ログを無視せず、併せて記録された例外の内容がバージョン照会の未対応に該当するかを確認してください。

Fixed 異常なバージョン応答の処理と、通信障害時の接続復旧の安定性を改善

  • エージェントPodの再起動・再デプロイ、Proxyの再起動、ネットワーク切断後の再接続などで新しい接続が作成されると、バージョンを再照会します。

2026-09-30

v1.9.29

Java Agent v2.2.68 を含む

Feature Native Sidecarコンテナの収集に対応

  • spec.initContainersにあるrestartPolicy: Alwaysのコンテナを継続実行されるNative Sidecarとして認識し、コンテナ一覧とCPU・メモリの収集対象に含めます。
  • node agentの収集キャッシュとPod集計、master agentのコンテナメタデータ・統計に同じ判別基準を適用します。
  • 再起動回数、準備状態、OOM情報、ボリュームマウントのメタデータも反映します。
  • リソースのrequest/limitの合計は、継続実行されるコンテナの宣言値を基準とします。
  • ノート

    通常のinitコンテナとephemeralコンテナは、従来どおり常時収集には含めません。通常のinitの起動順序を考慮したscheduler-effectiveなリソース計算や、Envoy L7・APMの計測を変更する機能ではありません。

Changed node agentの収集周期の設定範囲を拡張

  • count_intervalとcollect_intervalの最小設定値を5000msから1000msに拡張しました。既定値は両オプションとも5000msのまま維持します。
  • 1000~30000msの範囲で1000ms単位に設定します。両オプションを2000に指定すると2秒、1000に指定すると1秒の収集・送信周期を要求できます。
  • 注意

    1秒と2秒は要求する周期です。元データの読み取り遅延や非同期処理により、すべてのメトリクスが毎周期で新しい値として完了することは保証されません。また、サーバーへの保存や画面集計の解像度は別です。周期を短くする前に、ノード・コンテナの規模に合わせてCPU、throttling、送信量を確認してください。

Changed node helperの収集負荷を最適化

  • cgroup v1のblkioファイルの読み取りをプロセス内で直列化し、コンテナ間のカーネルロック競合を緩和しました。
  • cgroupの性能収集で/proc/statのCPU合計のみを解析し、CPU別・割り込みの行は変換しません。
  • containerd statsのネットワークの重複読み取りと追加のJSONシリアライズを削除しました。
  • プロセス収集で明確な非対象を先に除外し、読み取りに失敗した場合や名前が曖昧な場合は従来の経路で再確認します。
  • メトリクスの読み取り回数や収集範囲を減らしたり、以前の性能値を再利用したりはしません。

2026-09-29

v1.9.28

Java Agent v2.2.68 を含む

Changed 非対話型環境におけるエージェントログのANSI制御文字を削除

  • コンソールがないKubernetesコンテナやバックグラウンド環境では、node agentとmaster agentのログにANSIカラー制御文字を既定で付加しません。
  • ログ本文だけでなくスレッド名や呼び出し元のプレフィックスにも共通のANSI設定を適用し、ESC[32m、ESC[33m、ESC[0mなどの制御文字がそのまま表示されないようにしました。
  • ターミナルの色が必要な場合は、JVMオプション-Dwhatap.ansi.enabled=trueで有効にできます。falseを指定すると、コンソールの有無に関係なく無効になります。
  • ANSIの既定値の変更以外に、設定・RBAC・ボリュームマウントの変更はありません。
  • ノート

    変更範囲はKube Agent自体のログです。アプリケーションコンテナのstdout/stderrに含まれるANSIコードの表示・検索処理までを解決するものではありません。

2026-09-15

v1.9.27

Java Agent v2.2.68 を含む

Feature 同じPod内のネットワーク観測データを受信するローカル受信機能を追加

  • TCP L4区間の集計データを受信する専用のリスナーを127.0.0.1に追加しました。既存のmicro listenerとポートは共有しません。
  • 設定オプション: network_edge_ingest_enabled(既定値: 無効)、network_edge_ingest_port(1~65535)、network_edge_ingest_node。
  • 有効にする場合は、ポートとノード名を併せて指定します。ノード名は送信データのobserver_nodeと一致する必要があります。
  • 設定したノード名を変更するには再起動が必要です。
  • network.edge.window/v1alpha1の許可フィールドとサイズ・時間・値の範囲を検証し、kube_network_edge_v1alpha1カテゴリに送信します。
  • プロジェクト・エージェント・ノードの識別値は、送信値ではなくnode agentの現在の接続情報を使用します。
  • ACKの成功は、node agentの基本キューまたはオフラインキューがレコードを受け入れたことを意味し、バックエンドへの保存完了を保証するものではありません。
  • 注意

    この機能は既定で無効であり、本リリースで自動的に有効化されたり、RBACが変更されたりすることはありません。loopbackバインディングは別途の認証に代わるものではないため、信頼できる同一Pod内のコンテナのみがこのポートにアクセスできるように構成してください。

Changed エージェントイメージのAlpineランタイムのセキュリティアップデート

  • kube_agentとkube_monの最終Alpineランタイムベースを3.22から3.24に更新しました。
  • イメージのビルド時に、ベースイメージに含まれるパッケージのセキュリティパッチも併せて適用します。

2026-08-13

v1.9.26

Java Agent v2.2.68 を含む

Changed NetworkPolicyのspecをtypedな入れ子構造で送信

  • kube_network_policyからspecJsonフィールドを削除し、podSelector、ingressRules、egressRulesをMapValue/ListValue構造で提供します。
  • 1つのpeer内のnamespaceSelectorとpodSelectorのAND関係、peerリストとruleリストのOR関係、ipBlock、named/numeric port、protocol、endPortを入れ子構造のまま保存します。
  • rule内の空のfrom/toとportsは、Kubernetes APIと同様にそれぞれすべてのpeerとすべてのportを意味します。
  • specSchemaVersionと正規化されたspecHashを追加し、JSONを解析せずにスキーマバージョンと内容の変更有無を判断できるようにしました。
  • policyTypes、selectedPodUids、UID・ネームスペース・resourceVersionなどの既存の識別フィールドは維持します。
  • 注意

    specJsonは1.9.25開発イメージでのみ提供されたフィールドであり、1.9.26での削除は意図的なbreaking changeです。specJsonを読み取っている場合は、typedフィールドに切り替えてください。

2026-08-06

v1.9.24

Java Agent v2.2.68 を含む

Feature HPAの一覧情報を収集するkube_hpaカテゴリを追加

  • 30秒周期でHPAの名前、ネームスペース、作成時刻、スケール対象の情報を収集します。
  • 最小・最大・現在・目標のレプリカ数と、スケール可能・スケール実行中・スケール制限の状態を併せて送信します。
  • CPU・メモリだけでなく、Pods、External、Objectメトリクスの種類・目標値・現在値を並列リストとして収集します。同じインデックスの項目が1つのメトリクスを表します。
  • autoscaling/v2 APIを優先して使用し、サポートされていないクラスターではautoscaling/v1 APIにフォールバックします。
  • 既存のhorizontalpodautoscalers権限を使用するため、RBACの変更は必要ありません。
  • ノート

    メトリクスの値は単一の数値ではなく、50%や100mなどの文字列として渡されます。metrics-serverなど元のメトリクスを利用できない環境では、現在値が<unknown>になる場合があります。

Changed kube_hpa_statにスケール対象と作成時刻のタグを追加

  • 既存のフィールドはそのまま維持します。

2026-07-31

v1.9.23

Java Agent v2.2.68 を含む

Feature emptyDirボリュームの種類・ストレージメディア・容量制限の収集に対応

  • volumeType、emptyDirMedium(MemoryまたはDisk)、emptyDirSpecConfirmedタグを追加しました。
  • emptyDirSpecConfirmedにより、Pod specで確認した値か、ファイルシステム情報から推定した値かを区別できます。
  • emptyDir.sizeLimitが設定されている場合は、sizeLimitとそれを基準に算出したcapacity、available、usedPercentを送信します。
  • 制限がないMemory mediumでは、tmpfsの総量を容量として使用します。
  • 既存のPodキャッシュからspecを読み取るため、Kubernetes APIの呼び出しは増えません。
  • ノート

    sizeLimitがないDisk mediumでは、ノードのルートファイルシステム全体をボリューム容量として表示しません。この場合、使用量はPodのcontainer.ephemeral_storage_limitと合わせて判断してください。

Changed ディスクベースとメモリベースのemptyDirの収集経路を統合

  • mediumに関係なく同じタグとフィールドを適用し、重複収集を防止します。
  • 追加のRBAC権限やボリュームマウントは必要ありません。
  • collect_pod_emptydir_enabled=falseで無効にすると、従来のdfベースの収集経路を使用します。

Fixed コントロールプレーンのメトリクスがない環境でmaster agentの収集周期が停止する現象を修正

  • kube-apiserverやetcdのメトリクスがない場合に空の応答がnullとして渡され、コントロールプレーンの収集が停止する問題を解消しました。

Changed レガシーJava OpenMetricsモジュールをイメージのパッケージングから削除

  • 現在は実行されないモジュールです。OpenMetricsの収集には別途whatap/openagentイメージを使用してください。

Changed node helperへのpprof診断機能の追加とコレクション初期化の安定性の修正

  • debug_pprof_enabled(既定値: 無効)をtrueに設定すると、/debug/pprof/配下のプロファイルを提供します。
  • ノート

    pprofは診断するときのみ有効にし、診断が終わったら再度無効にしてください。

v1.9.22

Java Agent v2.2.68 を含む

Feature emptyDirボリュームの使用量の収集に対応

  • ディスクベースのemptyDirボリュームのディレクトリを確認し、kube_pod_volumeにusedSpace(バイト)とfileCountを送信します。
  • volumePlugin、volumeName、hostMountPathタグでボリュームを区別します。
  • ディレクトリ探索の負荷を抑えるため、60秒の収集周期を適用します。
  • 設定オプション: collect_pod_emptydir_enabled(既定値: 有効)、pod_emptydir_max_files(既定値: 20,000個)、pod_emptydir_max_volumes(既定値: 300個)。
  • 収集上限に達したボリュームはtruncated=1で表示され、使用量は実際より小さく収集されます。
  • 既存の/rootfs読み取り専用マウントを使用するため、追加のRBAC権限やボリュームマウントは必要ありません。
  • PodのnamespaceとpodNameを確認できないボリュームは送信しません。
  • ノート

    このバージョンでは、emptyDirのcapacityとusedPercentは収集しません。ディスクベースのボリュームの使用量は、Podのephemeral-storage制限と合わせて判断してください。

v1.9.21

Java Agent v2.2.68 を含む

Feature ノードがベアメタルか仮想マシンかを区別する情報の収集に対応

  • kube_node_perfにvirtualization(baremetal、vm、unknown)とhypervisorタグを追加しました。
  • ベアメタルの場合やハイパーバイザーを確認できない場合は、hypervisorを-で送信します。
  • DMIベンダー情報を優先して使用し、ベンダーを判別できない場合は/proc/cpuinfoのhypervisorフラグで仮想マシンかどうかを確認します。
  • QEMU/KVM、VMware、Hyper-Vなどの主要な仮想化環境を判別します。
  • ノート

    EC2 .metalなど一部のクラウドベアメタルインスタンスは、DMI情報だけでは通常のインスタンスと区別できないため、vmに分類される場合があります。

2026-07-30

v1.9.20

Java Agent v2.2.68 を含む

Fixed node helperのmountinfo繰り返し読み取りによりload averageが上昇する現象を修正

  • コンテナ統計の収集時にcgroup_versionが設定されている場合は、すでに確認したcgroupモードを再利用し、/proc/1/mountinfoを再度読み取らないように変更しました。
  • cgroupモードがまだ設定されていない初回検出時のみ、従来のmountinfo検出経路を使用します。
  • マウントの作成・削除が頻繁な環境でmountinfoの読み取りが遅延し、helperスレッドのD-stateが蓄積してload averageが上昇する問題を解消しました。

2026-07-28

v1.9.19

Java Agent v2.2.68 を含む

Changed Netty依存関係のセキュリティアップデート

  • Kubernetes Javaエージェントモジュールで使用するNetty依存関係を4.1.133.Finalから4.1.135.Finalに更新しました。
  • Netty handler、transport-sctp、codec-haproxy、codec-redis、resolver-dnsに関連するセキュリティ脆弱性への対応を含みます。
  • Java依存関係のバージョンのみを変更しており、収集機能や設定の動作に変更はありません。
  • Goベースのコンポーネントは1.9.18のGo 1.25.11ビルドを維持します。
  • ノート

    今回のアップデートの範囲は、Kubernetes JavaエージェントのNetty依存関係です。イメージに含まれるすべてのコンポーネントのすべての脆弱性が解消されたという意味ではありません。

v1.9.18

Java Agent v2.2.68 を含む

Feature ノードのconntrackテーブル使用状況の収集に対応

  • kube_node_perfにconntrack_count(現在のエントリ数)、conntrack_max(上限)、conntrack_pct(使用率、%)フィールドを追加しました。
  • nf_conntrackモジュールがないノードは該当フィールドを送信しないため、使用量0と未収集を区別できます。
  • 設定オプション: collect_conntrack_enabled(既定値: 有効)。
  • conntrackの収集に追加のRBAC権限は必要ありません。収集しない場合はcollect_conntrack_enabled=falseに設定してください。

Changed Goベースのコンポーネントのセキュリティアップデート

  • node-helper、control-plane helper、debuggerのビルドツールチェーンをGo 1.25.11に更新しました。
  • 依存関係を更新しました: containerd v1.7.33、Docker v28.5.2、golang.org/x/net v0.56.0、spdystream v0.5.1、SELinux v1.15.1、gRPC v1.82.0。

2026-07-27

v1.9.17

Java Agent v2.2.68 を含む

Feature 収集サーバーとの接続切断時のデータ損失を防ぐメモリバッファを追加

  • 送信キューが満杯の状態で収集サーバーとの接続が切断されると、データを最大15分間メモリバッファに保持し、再接続時に古いデータから再送信します。
  • 設定オプション: net_send_buffer_enabled、net_send_buffer_minutes、net_send_buffer_max_mb(既定値: 有効 / 15分 / 64MB)。
  • バッファを経由して正常に再送信されたパックはpack_droppedに含めず、時間・容量の上限により実際に破棄されたパックのみを損失として集計します。
  • 切断バッファは既定で有効になっており、エージェントプロセスごとに最大64MBのメモリを使用します。メモリ制約がある環境では、net_send_buffer_max_mbの値を下げるか、net_send_buffer_enabled=falseで無効化できます。

Feature Kubernetes ResourceQuotaの収集に対応

  • status.hard/status.usedの値をネームスペース別のkube_statフィールドとして収集します(CPU: millicore、Memory: byte)。
  • ResourceQuotaを収集するには、サービスアカウントのClusterRoleにcore APIのresourcequotasのlist権限を追加する必要があります。
  • 権限がない場合はResourceQuotaの収集のみ省略され、その他の統計は引き続き収集されます。

2026-07-16

v1.9.16

Java Agent v2.2.68 を含む

Feature kube_node_perfにcgroup_versionタグを追加

  • unified(v2) / hybrid / legacy(v1) / unknownの値で区別して提供します(新規JSONフィールドを追加せず、タグのみで提供)。

Fixed cgroup v2環境でCPUスロットル時間が実際より小さく収集される現象を修正

  • cpu.statのthrottled_usec(μs)値をnsに変換していなかったため、v1と比べて約1000倍小さく収集されていた問題を修正しました。
  • 本リリース適用後、cgroup v2ノードでcpu_throttledtime値が以前と比べて大幅(約1000倍)に大きくなったように見える場合があります。これは、これまで1000倍小さく収集されていた値が正常な数値に修正されたものであり、実際のスロットル発生量が増加したわけではありません。

Fixed cgroup v2環境でメモリのMax Usage指標が収集されない現象を修正

  • memory.peakからMax Usage値を収集するように変更しました。

Fixed cgroup v2環境でblkio(ディスクI/O)指標が全く収集されない現象を修正

  • io.statパーサーを置き換えました。
  • 本リリースから、cgroup v2ノードでblkio指標が新たに収集され始めます。これまで全く収集されていなかった値が正常に取り込まれるようになりますので、ご了承ください。

2026-07-06

v1.9.15

Java Agent v2.2.68 を含む

Feature kube_pod_volumeのPVCボリューム使用量およびinode収集に対応

  • podUidフォールバックジョインにより、Pod-ボリュームマッピングの安定性を改善しました。
  • volumeName/volumePluginタグを追加しました。

Changed mountinfo永続キャッシュの既定値をfalseに変更

  • すでにuse_cached_mount_info_enabled=falseを直接設定している環境では、この値が既定値になったため設定を削除できます。

Fixed kube_statのネームスペースパック未収集の問題を修正

  • pcode未設定およびnamespaceタグの欠落によりデータが収集されない問題を修正しました。

Fixed node-helperのキャッシュ蓄積によるメモリ増加の問題を修正

  • podsMap/containerPidLookup/processedContainersキャッシュにeviction(削除)ロジックを追加しました。

2026-06-29

v1.9.14

Java Agent v2.2.68 を含む

Changed GPUスカラーフィールドを削除(デバイスタイプ別リストに一元化)

  • kube_nodeのcapacity_gpu/allocatable_gpu、kube_podのgpu_request/gpu_limit、kube_pending_podのgpu_request_countを削除しました。
  • *_types/*_countsリストフィールドに統合しました。
  • Breaking: v1.9.13のスカラーフィールドを参照していたクエリは、*_countsリストの合算方式に切り替える必要があります。

2026-06-19

v1.9.13

Java Agent v2.2.68 を含む

Feature GPUデバイスタイプ別収集に対応

  • nvidia.com/gpuおよびMIGプロファイル(nvidia.com/mig-*)リソースをデバイスタイプ別に分離して収集します。
  • kube_node、kube_pod、kube_pending_podカテゴリにGPU関連フィールドを追加します。

2026-06-09

v1.9.12

Java Agent v2.2.68 を含む

Changed 外部依存ライブラリのセキュリティパッチを適用しました。

  • Java: io.netty 4.1.124/4.1.115 → 4.1.133.Final(HTTP/2 Rapid Reset 系脆弱性に対応)、jose4j 0.9.4 → 0.9.6
  • kube-build(node-helperビルドベースイメージ): Alpine 3.21 → 3.22、jq 1.7.x → 1.8.1(CVE-2024-23337 解消)
  • コードの動作・設定・APIへの変更はありません。

2026-05-07

v1.9.11

Java Agent v2.2.68 を含む

Feature container_log_pathオプションを追加

  • Huawei Cloud CCE環境で、コンテナログディレクトリが/var/log/podsではない別のパス(soft link対象先)に配置されているケースをサポートします。
  • ホストの絶対パスsymlinkがコンテナの/rootfsプレフィックスとずれて壊れる問題を回避するため、ci.logPathの/var/log/pods部分を設定値で直接置換します。
  • 推奨値(CCE Shared):container_log_path=/mnt/paas/runtime/container_logs
  • 推奨値(CCE Specific / Colocation):container_log_path=/var/lib/containerd/container_logs

2026-05-06

v1.9.10

Java Agent v2.2.68 を含む

Feature kubelet_root_dirオプションを追加

  • Huawei Cloud CCEなど、kubeletがカスタムルートディレクトリを使用する環境でのコンテナログ収集をサポートします。
  • /var/log/podsパスが存在しない場合に、シンボリックリンクをたどるフォールバックログパス解析機能を追加しました。

2026-05-04

v1.9.9

Java Agent v2.2.68 を含む

Changed 安定性向上のためのビルドアップデート。

2026-04-20

v1.9.8

Java Agent v2.2.68 を含む

Feature Pod stat収集制御オプションを追加

  • collect_pod_stat_enabled、collect_pod_stat_cluster_enabledオプションでPod stat収集の有効化を制御します。
  • デフォルト値:true

2026-03-26

v1.9.7

Java Agent v2.2.68 を含む

Fixed Pending状態の収集安定性およびデータ精度の改善

  • ポッドはRunning状態でもコンテナがWaiting状態(ImagePullBackOffなど)の場合に収集が漏れていた問題を修正しました。
  • ポッドのPhaseだけでなく、個別コンテナのWaiting状態まで検知するように収集範囲を拡大しました。
  • 複数のPendingポッドが存在する場合、コンテナ情報が以前のポッド情報と重複して送信されるバグを修正しました。
  • データ送信時のコンテナリスト初期化ロジックを修正し、ポッドごとに正確な情報を送信するように改善しました。

v1.9.6

Java Agent v2.2.68 を含む

Fixed ログ収集ファイルキー照会時のNPEを修正

  • ログ収集過程でgetFileKey()呼び出し時にNullPointerExceptionが発生するバグを修正
  • ファイルオブジェクトがnullであるか、ファイルキー生成に必要な属性が初期化されていない場合のnullチェックを追加
  • 該当エラーによるログ収集中断の現象を解消

2026-03-12

v1.9.5

Java Agent v2.2.68 を含む

Changed コンテナ作成時刻基準の変更

  • 以前は、コンテナの作成時刻(created)をPodの作成時刻(podCreated)として使用していました
  • 変更後は、コンテナ自身のstartedAt時刻を使用するように修正
  • Running状態のコンテナはrunning.startedAt、Terminated状態のコンテナはterminated.startedAt時刻を使用
  • Pod内でコンテナが再起動された場合も、正確なコンテナ起動時刻を表示

2026-02-25

v1.9.4

Java Agent v2.2.68 を含む

Feature SM_BASE_2 パックタイプの追加

  • サーバー監視データ送信のための新しい SM_BASE_2 パックタイプを追加。writev3/readv3 メソッドによる拡張シリアライズをサポート

Changed デバッグロギングの追加

  • NodeCpuMemInfo において SMBasePack の収集データ(CPU、Memory、Extra)をデバッグモードで確認できるようロギングを追加

Fixed メモリ/CPU 指標の NaN/Infinite 値に対する防御処理

  • ノードのメモリ使用率(pused)、空き率(pavailable)、スワップ使用率(swappused)の計算時に NaN または Infinite 値が発生する場合の防御処理を追加
  • CPU 指標(user、nice、system、idle、iowait、irq、softirq、steal、load1、load5、load15)の計算時に NaN/Infinite 値が発生した場合、0 として処理するよう修正
  • ゼロ除算(division by zero)状況で異常な指標が収集される現象を修正

Fixed SReclaimable パースの大文字小文字バグを修正

  • /proc/meminfo で SReclaimable 項目をパースする際、大文字小文字の比較不一致により値を読み取れないバグを修正

2026-02-04

v1.9.1

Java Agent v2.2.68 を含む

Fixed CVE-2025-15467(Critical、CVSS 9.8)への対応完了

  • OpenSSL ライブラリにおけるスタックバッファオーバーフローの脆弱性により、リモートコード実行(RCE)が可能だった問題を遮断
  • 対応内容:コンテナ OS のベースイメージを最新バージョンに置き換え、システムパッケージを強制アップグレードして OpenSSL 3.3.6 以上を適用

2026-01-14

v1.9.0

Java Agent v2.2.68 を含む

New Kubernetes ラベル収集ポリシーの改善

  • ラベル識別性の強化(Prefix 対応)
    • Kubernetes ラベルとエージェント内部タグ(System Tag)を明確に区別
    • ユーザー定義の Kubernetes ラベルに接頭辞(Prefix)を付与して保存できるオプションを追加
  • ラベル収集フィルタリングの導入
    • 無差別なラベル収集を防ぐため、許可リスト(Allowlist)または除外リスト(Blocklist)に基づくフィルタリングを導入

2025-11-07

v1.8.9

Java Agent v2.2.61 を含む

Fixed CPU 統計の改善

  • CPU 統計の負の値を防止:カウンターリセットや競合状態により CPU メトリクスが負の値を示す可能性がある問題を修正。
  • 複数の CPU メトリクスに適用:user、sys、nice、irq、softirq、steal、guest、guest_nice。
  • 計算された値が負の場合は 0 を返し、すべての CPU 統計が負の値にならないよう保証。

Fixed Ingress バックエンドサービスのポート処理を改善

  • バックエンドサービスポート処理を改善:Ingress 構成処理時のエッジケースを修正。
  • バックエンドサービスの数値ポートと名前付きポートを正しく処理。

2025-09-04

v1.8.8

Java Agent v2.2.61 を含む

New Kubernetes 環境で APM をインストールする際のコンテナマップにアプリケーション情報が表示されるよう改善


コンテナマップにアプリケーション情報が表示されない場合、APM がインストールされたコンテナマニフェスト(YAML) の環境変数に、コンテナ内エージェントの絶対パスを指定するオプションを追加します。言語ごとのオプションは以下の通りです。

  • Java
    WHATAP_JAVA_AGENT_PATH
  • ノート

    Java APM を使用していても、最小限のイメージを使用しておりコンテナ内で Java コマンドを実行できない場合があります。その場合、WHATAP_EXECUTABLE_JAVA_PATH キーを使用してコンテナ環境変数に Java 実行ファイルのフルパスを登録してください。

    Java example
    apiVersion: apps/v1
    kind: Deployment
    metadata:
    name: my-java-app
    spec:
    replicas: 1
    selector:
    matchLabels:
    app: my-java-app
    template:
    metadata:
    labels:
    app: my-java-app
    spec:
    containers:
    - name: my-java-container
    image: your-java-app-image:latest
    env:
    # Java APM jar のパス
    - name: WHATAP_JAVA_AGENT_PATH
    value: /whatap/whatap.agent-2.2.35.jar
    # 最小イメージで java 実行ファイルのフルパスを指定
    - name: WHATAP_EXECUTABLE_JAVA_PATH
    value: /layers/paketo-buildpacks_adoptium/jre/bin/java
  • Python
    WHATAP_PYTHON_AGENT_PATH
  • PHP
    WHATAP_PHP_AGENT_PATH
  • Go
    WHATAP_GO_AGENT_PATH
  • Node.js
    WHATAP_NODEJS_AGENT_PATH

2025-03-28

v1.8.6

New containerStdOutログにpodUidタグを追加

New kube_oom_eventタグカウントにcontaineridタグを追加

New MIG環境でcontainer_gpuカテゴリにGPU_I_PROFILE、GPU_I_ID、DCGM_FI_DRIVER_VERSIONメトリクスを追加

2025-02-17

v1.8.5

New 追加機能により、Kubernetesカスタムリソース関連メトリクス収集に対応

  • 基本機能ではなく、追加機能の適用を通じてwhatap-master-agentのコンテナにcollect_custom_resources オプションを追加

    collect_custom_resources bool

    既定値false

    true設定する時にメトリクス照会メニューでkube_cr及びkube_crdカテゴリの確認が可能です。 収集されたデータはObject Manifest及びタグカウントで確認できます。

    ノート
    • kube_crd: CustomResourceDefinition(CRD)メトリクスを収集

    • kube_cr: CRDで定義されたCustom Resource(CR)メトリクスを収集

New container_gpuカテゴリにDCGM_FI_DEV_POWER_USAGEデータを追加してGPUモニタリングを改善

Newログに#whatapSysLogカテゴリを追加してノードエージェントコンテナを実行する時にユーザー環境ランタイム情報を伝達

2025-01-08

v1.8.2

Fixed kube_ingress一覧が出ない現象を修正

2024-12-24

v1.8.1

New新しいタグカウントメトリックを追加

  • kube_scheduler

    サンプリング周期1分

    Kubernetesコントロールプレーンコンポーネントであるスケジューラ関連メトリックを収集します。

  • kube_pv

    サンプリング周期30秒

    KubernetesストレージPersistent Volume(PV)関連メトリックを収集します。

  • kube_pvc

    サンプリング周期30秒

    KubernetesストレージPersistent Volume Claim(PVC)関連メトリックを収集します。

  • kube_pod_volume_list{h1}

    サンプリング周期1時間

    Kubernetes Podのボリュームマウント情報を収集します。

  • kube_container_volume_list{h1}

    サンプリング周期1時間

    Kubernetesコンテナのボリューム情報を収集します。

2024-12-02

v1.8.0

Changedメンテナンスと拡張性を考慮してエージェントコード構造を改善

2024-11-22

v1.7.16

New etcdモニタリングのためのデータ収集の有効化と無効化機能を追加

  • etcdリーダーの存在の有無を収集

  • etcdリーダー変更の推移を収集

  • etcd commit & apply推移を収集

New Foreign Project機能の有効化と無効化機能を追加

  • Kubernetes外部プロジェクトで有効になったモニタリングとの接続データを収集

2024-10-30

v1.7.15

New 管理 > エージェント設定メニューでログフィルタリング機能を追加

特定のコンテナログの収集を制御できるログフィルタリング機能が追加されました。 この機能により、ユーザーはネームスペース、Pod名、コンテナ名などに基づいてログ収集を細分化でき、必要に応じて特定のコンテナのログ収集を許可または遮断できます。

2024-10-29

v1.7.14

Fixedプロセスが死んだ後も継続的にデータが入ってくるカテゴリメトリックのバグを修正

2024-10-21

v1.7.13

New 分析 > メトリクス照会kube_ingressカテゴリを追加

Ingressリソースに関するメタデータと関連情報を収集します。 そのカテゴリは、今後Ingressリストおよびルーティング ポリシーに関連するダッシュボードの実現に活用される予定です。

New 分析 > メトリクス照会kube_oom_eventカテゴリにコンテナ識別関連のメトリクスを追加

タグでnamespace、podUid、containerName値を追加し、OOMKilledイベントの発生時にコンテナの識別が可能です。

New 分析 > メトリクス照会containerカテゴリにポート情報関連のメトリクスを追加

コンテナが使用するcontainerPortに関連するメトリクスを追加しました。 クバネティスサービスは、Pod内のコンテナポートに基づいてルーティングを実行するため、そのメトリクスを通じてサービス、Pod、コンテナ間の関係を表現できます。

2024-09-30

v1.7.12

Newタグカウントkube_processカテゴリを追加

ノード(Node)で実行中のクバネティス関連プロセスを監視できるタグカウントを追加しました。 これにより、特定のノードで動作しているプロセスを追跡し、パフォーマンスメトリクスを収集できます。

Newwhatap-control-plane-helperコンテナにkube_client_tls_verifyオプションを追加

Featureタグカウントkube_statカテゴリにノード(Node) 状態別カウントメトリクスを追加

クラスター内のノード状態に応じたカウントメトリクスを追加しました。 これはノードのConditions(type:Ready)フィールドに基づいて集計されたノードの数を示します。

Featureタグカウントkube_pod_statカテゴリにPod状態(Phase)別のカウントメトリクスを追加

クラスター内のPod 状態(Phase)によるカウントメトリクスを追加しました。 これにより、現在クラスターで実行中のPodの状態(Phase)を素早く把握できます。

2024-09-11

v1.7.11

Feature タグカウントkube_statのカテゴリにPod状態の指標を追加

  • pending_pod:待機中のPod数です。

  • running_pod:実行中のPod数です。

  • succeeded_pod:正常に完了したPod数です。

  • failed_pod:失敗したPod数です。

  • unknown_pod:状態の分からないPod数です。

Feature タグカウントkube_nodeのカテゴリに各ノードの生成時間を示すcreationTimeStamp フィールドを追加

creationTimeStampフィールドを使用して、ノードが作成された時間を追跡できます。

2024-08-29

v1.7.10

Feature タグカウントkube_nodeのカテゴリにノード(Node)capacityとallocatableの関連指標を追加

  • allocatable_ephemeral_storage:ノードで使用できる一時ストレージ(ephemeral storage)を示します。

  • capacityEphemeralStorage:ノードの一時ストレージ(ephemeral storage)の総容量です。

  • capacityPods:ノードにスケジューリングできる最大Pod数です。

Fixedより正確なCPU割り当てデータを提供するため、allocatable_cpu指標でミリコア単位の値が漏れる現象を修正

2024-08-19

v1.7.9

Feature cgroup v2環境でrss関連メトリック指標の追加収集

container::mem_totalrss:cgroup v2環境におけるコンテナのメモリRSS(Resident Set Size)を収集する指標です。 この指標はコンテナが実際に使用している物理メモリの量を示します。

Featureコンテナのrequest、limitの設定有無に対する指標追加

  • Memory関連指標

    • container::memory_limit_contained:コンテナのメモリlimitの設定有無を示す指標です。 値がtrueならlimitが設定されており、falseなら設定されていないことを指します。

    • container::memory_request_contained:コンテナのメモリrequestの設定有無を示す指標です。 値がtrueならrequestが設定されており、falseなら設定されていないことを指します。

  • CPU関連指標

    • container::cpu_limit_contained:コンテナのCPU limitの設定有無を示す指標です。 値がtrueならlimitが設定されており、falseなら設定されていないことを指します。

    • container::cpu_request_contained:コンテナのCPU requestの設定有無を示す指標です。 値がtrueならrequestが設定されており、falseなら設定されていないことを指します。

  • Ephemeral-Storage関連指標

    • container::ephemeral_storage_limit_contained:コンテナのephemeral-storage limitの設定有無を示す指標です。 値がtrueならlimitが設定されており、falseなら設定されていないことを指します。

    • container::ephemeral_storage_request_contained:コンテナのephemeral-storage requestの設定有無を示す指標です。 値がtrueならrequestが設定されており、falseなら設定されていないことを指します。

Featureノードラベル指標をリストの形で追加

  • kube_node::labelKey:Kubernetesノードのラベルキー(Key)を収集する指標です。 ノードに適用されている各ラベルのキーを示します。

  • kube_node::labelValue:Kubernetesノードのラベル値(Value)を収集する指標です。 ノードに適用される各ラベルの値を示します。

2024-07-24

v1.7.8

Feature クラスター > ノードディスクリストメニューの追加

WhaTap Kubernetesモニタリングのノードディスクリストで各ノードにマウントされた個別ディスクの現在の使用量、余裕空間、性能指標をリアルタイムでモニタリングし、ディスクの状態を簡単に確認できます。 これにより、クラスターのディスク リソースを効率的に管理し、潜在的な問題を事前に把握して対応できます。

Feature ワークロード > Service リストメニューの追加

Kubernetesクラスター内で実行中のすべてのサービスの状態と情報を総合的に提供します。 WhaTap Kubernetesモニタリングの Service リストメニューにより、クラスターのネットワーク構成を簡単に把握でき、各サービスの構成と現状を効率的にモニタリングできます。

2024-07-11

v1.7.7

Feature JavaアプリケーションとKubernetesエージェントの連動方式を追加

  • Javaエージェントコンテナの環境変数にWHATAP_JAVA_AGENT_PATH値を追加してコンテナID連動機能を追加

  • エージェントプロセスIDを利用してprocの情報照会、当該情報でアプリケーションコンテナprocess nameからWhaTap Javaホーム($WHATAP_HOME) を抽出

  • 上記のプロセスでWhaTap Javaホーム($WHATAP_HOME)が見つからない場合は、runtimeAPIを使用してエージェントイメージからWhaTap Javaホームを抽出

  • エージェントのバージョンと形式をチェックし、次を基準に満たしてこそvalidバージョンでcontainerID連動機能を遂行

    1. ファイル名がwhatap.agent-X.Y.Z.jarで、バージョンの情報が2.2.33より大きいか同じ場合(X.Y.Z >= 2.2.33)

    2. ファイル名がwhatap.agent.kube.jarである場合

Changedイベント収集方式の変更: エージェント起動時点以降に生成されたイベントに対してのみデータを収集(kube_event)

2024-07-01

v1.7.6

Featureタグカウントを追加

  • kube_service_pod_mapping項目を追加
  • kube_podカテゴリにpodUidタグを追加
  • kube_serviceカテゴリにexternalIpタグ, PORT(portName, nodePort, servicePort, targetPort) フィールドを追加
  • kube_eventカテゴリにwatch_event_type、resource_versionデータを追加
  • kube_event重複通知現象を削除

Feature whatap-node-helperコンテナ環境変数(env)にWHATAP_JAVA_AGENT_PATHを追加

2024-06-18

v1.7.5

Featureファイルシステムが、nfsであるディスクのメトリクス収集オプションを追加

  • collect_nfs_disk_enabled: nfsディスクの収集可否を決定するオプションです。 既定値はtrueです。

2024-06-07

v1.7.4

Changed whatap-node-helperコンテナで、agentの連携失敗時に発生するエラーログをデバッグ処理

Fixedノードディスクの性能データの収集時に発生するエラーを修正

2024-06-04

v1.7.3

Fixed whatap-master-agentで、Podイベントの監視によって発生していたapiserverの過度な監査ログの生成問題を修正

2024-06-02

v1.7.2

Feature server_diskカテゴリに次の指標を追加

  • blksize: ディスクブロックのサイズ。 ディスクのデフォルト読み取り/書き込み単位のサイズを示します。

  • readIops: 1秒あたりに実行される読み込み作業の数、Input/Output Operations Per Secondです。

  • writeIops: 1秒あたりに実行される書き込み作業の数です。

  • queueLength: ディスクI/Oリクエストのキューの長さです。 待機中のI/Oリクエストの数を示します。

  • readBps: 1秒あたりに読み込んだデータ量(Bytes per Second)です。

  • writeBps: 1秒あたりに書き込んだデータ量です。

  • ioPercent: ディスクのI/O作業にかかった時間の割合です。 これは、全体時間に対するI/O作業に使用された時間のパーセンテージを表します。

  • totalInode: ファイルシステムで使用可能なすべてのinodeの数です。

  • usedInode: 使用中のinodeの数です。

  • usedInodePercent: 使用中のinodeのパーセンテージです。

2024-05-17

v1.7.1

Fixed OOMKilledコンテナの収集ロジックを修正

lastStateがOOMKilledのコンテナの場合、コンテナのstateがRunningにもかかわらず、OOMKilledと見られるバグを修正

2024-05-13

v1.7.0

Feature TagCountにデータを追加

  • kube_podカテゴリにreason、messageフィールドを追加

    • reason:ポッドstatusのreason
    • message:ポッドstatusのmessage
  • containerカテゴリにkube_state(コンテナstate) フィールドを追加

  • pendingステータスポッド、コンテナデータ(kube_pending_pod, kube_pending_container)を収集

    関連データは、実験室 > Pending Pod状況メニューで確認できます。

  • サービス(kube_service)に関するデータを収集

  • エージェント起動時、#whatapEventカテゴリでユーザーのインストールRuntime、クラスターのRuntimeを転送

2024-04-17

v1.6.1

FixedKubernetesイベントが一定時間後に欠落するバグを修正

2024-04-05

v1.6.0

Fixed クラスター > Object Manifestメニューのwarningイベントの連携ロジックのバグを修正

2024-04-04

v1.5.9

Fixedノードなどの特定のKubernetesイベントが欠落する現象を修正

2024-03-26

v1.5.8

Fixed apiserverのendpointがIPV6形式の場合、apiserverダッシュボードにデータが出力されない問題を修正

Fixed最初のWarningイベントの発生時に収集するオブジェクトマニフェストの重複収集防止のロジックを追加

2024-03-07

v1.5.7

Feature whatap-node-helperは、ノードディスクおよびコンテナのイメージ、性能データを収集します。 当該コンテナのロギング及び設定機能を追加してデバッグを行い、問題が発生した場合、当該機能に対するオプション処理が可能です。

  • collect_volume_detail_enabled Boolean

    既定値 true

    ノードエージェントですべてのコンテナに対するexec dfコマンドを使用して、コンテナのボリューム情報の照会を活性化します。 ノードに実行中のすべてのコンテナのストレージ使用量およびボリューム情報を収集する機能を活性化できます。

  • inject_container_id_to_apm_agent_enabled Boolean

    既定値 true

    WhaTap APMコンテナにexecを利用したcontainer IDの注入を活性化します。 WhaTap APMと識別されるコンテナのIDを自動的に抽出し、これをAPMツールに注入して性能モニタリングデータとコンテナを連結するのに使用できます。

    ノート

    このオプションは、Javaエージェント2.2.33バージョン 以降から使用できます。

ChangedマスターエージェントからKubernetesイベントを収集する場合、エージェントが再起動されると、イベントの重複収集を中止するロジックを削除しました。 サーバーサイドで重複イベントのドロップロジックを実行するように変更しました。

Fixed watchLog機能を利用するとノードシステムの特定のログファイル(例、/var/log/message)をWhaTapダッシュボードで監視できます。 システムのログ ローテーションロジックによってファイルが変更された場合、ログの追加収集に失敗するバグを修正しました。

2024-02-23

v1.5.6

Feature コンテナ > コンテナボリュームメニューでMountType属性を照会する機能を追加

Fixed IPv6アドレスを使用する場合、コンテナ > コンテナボリュームメニューで照会されない問題を修正

2024-02-14

v1.5.5

Fixed ReplicationController listの権限がない場合、マスターエージェントが30秒間隔でログを生成する問題を修正

2024-02-06

v1.5.4

Fixed kube_podカテゴリでcpu_per_limitフィールド値が100以上になる問題を修正

2024-01-30

v1.5.3

Fixedメトリクス収集時server_disk、server_network、server_baseカテゴリの収集間隔を5秒単位で合わせます。

Changedメトリクス収集時kube_nodeカテゴリにノードのexternal-ip、internal-ipを追加

2024-01-26

v1.5.2

  • Changedマスターエージェントバージョン情報をネームスペースプロジェクトに転送するように修正
  • 2024-01-25

    v1.5.1

    Changed kube workload(ReplicationController)をメトリクス(container、kube_pod、kube_pod_stat), オブジェクトマニフェストに追加

    Changed crioランタイムでoverlay_config_pathオプションをカスタム設定する場合 whatap-node-helperコンテナenvにoverlay_config_pathオプションを追加してパスを設定できるように修正

    Fixedネームスペースプロジェクトバージョンの転送間隔を変更:5分間で5秒転送後timeout → 5分間で5秒転送、以降1分ごとに転送

    2024-01-16

    v1.5.0

    Featureオブジェクトマニフェスト収集機能を追加

    1日に1回、ユーザーが設定したタイムゾーンの午前0時にクラスターのオブジェクト情報を収集して保存する機能を追加しました。 この機能を利用するには、次のようにエージェントオプションを設定してください。 詳細については、次の文書を参照してください。

    Fixedコントロールプレーンモニタリングエージェントの性能を改善。クラスターと通信するクライアントの性能改善を含みます。

    2024-01-08

    v1.4.9

    Changed collect_control_plane_monitoring_enabledオプションを追加。このオプションの値をtrueに設定するとコントロールプレーン(Control Plane) 指標を収集します。