文件 AWS 開發套件範例 GitHub 儲存庫中有更多可用的 AWS SDK 範例。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
文件 AWS 開發套件範例 GitHub 儲存庫中有更多可用的 AWS SDK 範例。
本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
DeleteMaintenanceWindow
搭配 AWS SDK 或 CLI 使用
下列程式碼範例示範如何使用 DeleteMaintenanceWindow
。
動作範例是大型程式的程式碼摘錄,必須在內容中執行。您可以在下列程式碼範例的內容中看到此動作:
- CLI
-
- AWS CLI
-
刪除維護時段
此 delete-maintenance-window
範例示範移除指定的維護時段。
aws ssm delete-maintenance-window \
--window-id "mw-1a2b3c4d5e6f7g8h9"
輸出:
{
"WindowId":"mw-1a2b3c4d5e6f7g8h9"
}
如需詳細資訊,請參閱 AWS Systems Manager 使用者指南中的刪除維護時段 (AWS CLI)。
- Java
-
- SDK for Java 2.x
-
public void deleteMaintenanceWindow(String winId) {
DeleteMaintenanceWindowRequest windowRequest = DeleteMaintenanceWindowRequest.builder()
.windowId(winId)
.build();
CompletableFuture<Void> future = CompletableFuture.runAsync(() -> {
getAsyncClient().deleteMaintenanceWindow(windowRequest)
.thenAccept(response -> {
System.out.println("The maintenance window was successfully deleted.");
})
.exceptionally(ex -> {
throw new CompletionException(ex);
}).join();
}).exceptionally(ex -> {
Throwable cause = (ex instanceof CompletionException) ? ex.getCause() : ex;
if (cause instanceof SsmException) {
throw new RuntimeException("SSM error: " + cause.getMessage(), cause);
} else {
throw new RuntimeException("Unexpected error: " + cause.getMessage(), cause);
}
});
try {
future.join();
} catch (CompletionException ex) {
throw ex.getCause() instanceof RuntimeException ? (RuntimeException) ex.getCause() : ex;
}
}
- JavaScript
-
- SDK for JavaScript (v3)
-
import { DeleteMaintenanceWindowCommand, SSMClient } from "@aws-sdk/client-ssm";
import { parseArgs } from "node:util";
export const main = async ({ windowId }) => {
const client = new SSMClient({});
try {
await client.send(
new DeleteMaintenanceWindowCommand({ WindowId: windowId }),
);
console.log(`Maintenance window '${windowId}' deleted.`);
return { Deleted: true };
} catch (caught) {
if (caught instanceof Error && caught.name === "MissingParameter") {
console.warn(`${caught.message}. Did you provide this value?`);
} else {
throw caught;
}
}
};
- PowerShell
-
- Tools for PowerShell
-
範例 1:此範例示範移除維護時段。
Remove-SSMMaintenanceWindow -WindowId "mw-06d59c1a07c022145"
輸出:
mw-06d59c1a07c022145
- Python
-
- SDK for Python (Boto3)
-
class MaintenanceWindowWrapper:
"""Encapsulates AWS Systems Manager maintenance window actions."""
def __init__(self, ssm_client):
"""
:param ssm_client: A Boto3 Systems Manager client.
"""
self.ssm_client = ssm_client
self.window_id = None
self.name = None
@classmethod
def from_client(cls):
ssm_client = boto3.client("ssm")
return cls(ssm_client)
def delete(self):
"""
Delete the associated AWS Systems Manager maintenance window.
"""
if self.window_id is None:
return
try:
self.ssm_client.delete_maintenance_window(WindowId=self.window_id)
logger.info("Deleted maintenance window %s.", self.window_id)
print(f"Deleted maintenance window {self.name}")
self.window_id = None
except ClientError as err:
logger.error(
"Couldn't delete maintenance window %s. Here's why: %s: %s",
self.window_id,
err.response["Error"]["Code"],
err.response["Error"]["Message"],
)
raise