From d426ca1098b8882f0237861ae1fbd983b91ddd18 Mon Sep 17 00:00:00 2001 From: Tim Wright Date: Mon, 9 Feb 2026 02:43:18 +0000 Subject: [PATCH 1/4] better error --- staging/cse/windows/kubernetesfunc.ps1 | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/staging/cse/windows/kubernetesfunc.ps1 b/staging/cse/windows/kubernetesfunc.ps1 index 0cc784796ea..c921fd4af62 100644 --- a/staging/cse/windows/kubernetesfunc.ps1 +++ b/staging/cse/windows/kubernetesfunc.ps1 @@ -182,6 +182,7 @@ function Check-APIServerConnectivity { ) Logs-To-Event -TaskName "AKS.WindowsCSE.CheckAPIServerConnectivity" -TaskMessage "Start to check API server connectivity." $retryCount=0 + $LastException=$null do { $retryString="${retryCount}/${MaxRetryCount}" @@ -202,16 +203,18 @@ function Check-APIServerConnectivity { $tcpClient.Close() } catch [System.AggregateException] { Write-Log "Retry ${retryString}: Failed to connect to API server $MasterIP. AggregateException: " + $_.Exception.ToString() + $LastException = $_.Exception.ToString() } catch { Write-Log "Retry ${retryString}: Failed to connect to API server $MasterIP. Error: $_" - } + $LastException = $_.ToString() + } $retryCount++ Write-Log "Retry ${retryString}: Sleep $RetryInterval and then retry to connect to API server" Sleep $RetryInterval } while ($retryCount -lt $MaxRetryCount) - Set-ExitCode -ExitCode $global:WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY -ErrorMessage "Failed to connect to API server $MasterIP after $retryCount retries" + Set-ExitCode -ExitCode $global:WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY -ErrorMessage "Failed to connect to API server $MasterIP after $retryCount retries. Last exception: $LastException" } function Get-CACertificates { From c55fcd3a5366937f3dce38fabe7661451ded92d2 Mon Sep 17 00:00:00 2001 From: Tim Wright Date: Mon, 9 Feb 2026 03:44:58 +0000 Subject: [PATCH 2/4] log to event --- staging/cse/windows/kubernetesfunc.ps1 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/staging/cse/windows/kubernetesfunc.ps1 b/staging/cse/windows/kubernetesfunc.ps1 index c921fd4af62..9b47e896daf 100644 --- a/staging/cse/windows/kubernetesfunc.ps1 +++ b/staging/cse/windows/kubernetesfunc.ps1 @@ -202,10 +202,10 @@ function Check-APIServerConnectivity { } $tcpClient.Close() } catch [System.AggregateException] { - Write-Log "Retry ${retryString}: Failed to connect to API server $MasterIP. AggregateException: " + $_.Exception.ToString() + Logs-To-Event -TaskName "AKS.WindowsCSE.CheckAPIServerConnectivity" -TaskMessage "Retry ${retryString}: Failed to connect to API server $MasterIP. AggregateException: " + $_.Exception.ToString() $LastException = $_.Exception.ToString() } catch { - Write-Log "Retry ${retryString}: Failed to connect to API server $MasterIP. Error: $_" + Logs-To-Event -TaskName "AKS.WindowsCSE.CheckAPIServerConnectivity" -TaskMessage "Retry ${retryString}: Failed to connect to API server $MasterIP. Error: $_" $LastException = $_.ToString() } From d1b6d85b935454c1adcc43fa7cf361a75e053fec Mon Sep 17 00:00:00 2001 From: Tim Wright Date: Mon, 9 Feb 2026 03:47:55 +0000 Subject: [PATCH 3/4] better last exception --- staging/cse/windows/kubernetesfunc.ps1 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/staging/cse/windows/kubernetesfunc.ps1 b/staging/cse/windows/kubernetesfunc.ps1 index 9b47e896daf..fdeba487925 100644 --- a/staging/cse/windows/kubernetesfunc.ps1 +++ b/staging/cse/windows/kubernetesfunc.ps1 @@ -206,7 +206,7 @@ function Check-APIServerConnectivity { $LastException = $_.Exception.ToString() } catch { Logs-To-Event -TaskName "AKS.WindowsCSE.CheckAPIServerConnectivity" -TaskMessage "Retry ${retryString}: Failed to connect to API server $MasterIP. Error: $_" - $LastException = $_.ToString() + $LastException = "$_" } $retryCount++ From da4cc145d68bb9434e73a97c01fe699d6890c382 Mon Sep 17 00:00:00 2001 From: Tim Wright Date: Wed, 11 Feb 2026 10:02:56 +1300 Subject: [PATCH 4/4] Update staging/cse/windows/kubernetesfunc.ps1 Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- staging/cse/windows/kubernetesfunc.ps1 | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/staging/cse/windows/kubernetesfunc.ps1 b/staging/cse/windows/kubernetesfunc.ps1 index fdeba487925..ec2ff53c04b 100644 --- a/staging/cse/windows/kubernetesfunc.ps1 +++ b/staging/cse/windows/kubernetesfunc.ps1 @@ -214,7 +214,18 @@ function Check-APIServerConnectivity { Sleep $RetryInterval } while ($retryCount -lt $MaxRetryCount) - Set-ExitCode -ExitCode $global:WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY -ErrorMessage "Failed to connect to API server $MasterIP after $retryCount retries. Last exception: $LastException" + $lastExceptionMessage = "" + if ($LastException -ne $null) { + if ($LastException.Exception -ne $null -and -not [string]::IsNullOrEmpty($LastException.Exception.Message)) { + $lastExceptionMessage = $LastException.Exception.Message + } else { + $lastExceptionMessage = $LastException.ToString() + } + # Normalize any CR/LF in the exception message to spaces to keep ErrorMessage single-line. + $lastExceptionMessage = $lastExceptionMessage -replace "(`r|`n)+", " " + } + + Set-ExitCode -ExitCode $global:WINDOWS_CSE_ERROR_CHECK_API_SERVER_CONNECTIVITY -ErrorMessage "Failed to connect to API server $MasterIP after $retryCount retries. Last exception: $lastExceptionMessage" } function Get-CACertificates {