KubePodInventory テーブルのクエリ
Azure portal でこれらのクエリを使用する方法については、 Log Analytics のチュートリアルを参照してください。 REST API については、「 Query」を参照してください。
クラッシュ ループ内のポッド
ポッド/コンテナーにクラッシュ ループ フェーズがあるかどうかを判断します。
//Determines whether Pods/Containers has Crash-Loop phase
KubePodInventory
| where ContainerStatus == 'waiting'
| where ContainerStatusReason == 'CrashLoopBackOff' or ContainerStatusReason == 'Error'
| extend ContainerLastStatus=todynamic(ContainerLastStatus)
| summarize RestartCount = arg_max(ContainerRestartCount, Computer, Namespace, ContainerLastStatus.reason) by Name
保留中の状態のポッド
起動できないポッドとその保留中の時間を確認します。
//Check Pods that cannot be started and its pending time
KubePodInventory
| where PodStatus == 'Pending'
| project PodCreationTimeStamp, Namespace, PodStartTime, PodStatus, Name, ContainerStatus
| summarize Start = any(PodCreationTimeStamp), arg_max(PodStartTime, Namespace) by Name
| extend PodStartTime = iff(isnull(PodStartTime), now(), PodStartTime)
| extend PendingTime = PodStartTime - Start
| project Name, Namespace ,PendingTime
KubePodInventory で検索する
KubePodInventory で検索し、KubePodInventory テーブル内の特定の値を検索します。/nNote では、このクエリで結果を生成するために <SeachValue> パラメーターを更新する必要があります
// This query requires a parameter to run. Enter value in SearchValue to find in table.
let SearchValue = "<SearchValue>";//Please update term you would like to find in the table.
KubePodInventory
| where * contains tostring(SearchValue)
| take 1000