Uso de RemoveTargets
con un AWS SDK o una CLI
En los siguientes ejemplos de código, se muestra cómo utilizar RemoveTargets
.
- .NET
-
- AWS SDK for .NET
-
nota
Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS
. Eliminar todos los destinos de una regla por el nombre de regla.
/// <summary> /// Delete an event rule by name. /// </summary> /// <param name="ruleName">The name of the event rule.</param> /// <returns>True if successful.</returns> public async Task<bool> RemoveAllTargetsFromRule(string ruleName) { var targetIds = new List<string>(); var request = new ListTargetsByRuleRequest() { Rule = ruleName }; ListTargetsByRuleResponse targetsResponse; do { targetsResponse = await _amazonEventBridge.ListTargetsByRuleAsync(request); targetIds.AddRange(targetsResponse.Targets.Select(t => t.Id)); request.NextToken = targetsResponse.NextToken; } while (targetsResponse.NextToken is not null); var removeResponse = await _amazonEventBridge.RemoveTargetsAsync( new RemoveTargetsRequest() { Rule = ruleName, Ids = targetIds }); if (removeResponse.FailedEntryCount > 0) { removeResponse.FailedEntries.ForEach(e => { _logger.LogError( $"Failed to remove target {e.TargetId}: {e.ErrorMessage}, code {e.ErrorCode}"); }); } return removeResponse.HttpStatusCode == HttpStatusCode.OK; }
-
Para obtener información sobre la API, consulte RemoveTargets en la Referencia de la API de AWS SDK for .NET.
-
- CLI
-
- AWS CLI
-
Eliminación de un destino de un evento
En este ejemplo se elimina el flujo de Amazon Kinesis denominado MyStream1 de ser un destino de la regla DailyLambdaFunction. Cuando se creó DailyLambdaFunction, este flujo se estableció como un destino con el ID de Target1:
aws events remove-targets --rule
"DailyLambdaFunction"
--ids"Target1"
-
Para obtener información sobre la API, consulte RemoveTargets
en la Referencia de comandos de la AWS CLI.
-
- Java
-
- SDK para Java 2.x
-
nota
Hay más en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS
. Eliminar todos los destinos de una regla por el nombre de regla.
public static void deleteTargetsFromRule(EventBridgeClient eventBrClient, String eventRuleName) { // First, get all targets that will be deleted. ListTargetsByRuleRequest request = ListTargetsByRuleRequest.builder() .rule(eventRuleName) .build(); ListTargetsByRuleResponse response = eventBrClient.listTargetsByRule(request); List<Target> allTargets = response.targets(); // Get all targets and delete them. for (Target myTarget : allTargets) { RemoveTargetsRequest removeTargetsRequest = RemoveTargetsRequest.builder() .rule(eventRuleName) .ids(myTarget.id()) .build(); eventBrClient.removeTargets(removeTargetsRequest); System.out.println("Successfully removed the target"); } }
-
Para obtener información sobre la API, consulte RemoveTargets en la Referencia de la API de AWS SDK for Java 2.x.
-
- Kotlin
-
- SDK para Kotlin
-
nota
Hay más información en GitHub. Busque el ejemplo completo y aprenda a configurar y ejecutar en el Repositorio de ejemplos de código de AWS
. suspend fun deleteTargetsFromRule(eventRuleName: String?) { // First, get all targets that will be deleted. val request = ListTargetsByRuleRequest { rule = eventRuleName } EventBridgeClient { region = "us-east-1" }.use { eventBrClient -> val response = eventBrClient.listTargetsByRule(request) val allTargets = response.targets // Get all targets and delete them. if (allTargets != null) { for (myTarget in allTargets) { val removeTargetsRequest = RemoveTargetsRequest { rule = eventRuleName ids = listOf(myTarget.id.toString()) } eventBrClient.removeTargets(removeTargetsRequest) println("Successfully removed the target") } } } }
-
Para obtener información acerca de la APl, consulte RemoveTargets
en la Referencia de la API de AWS SDK para Kotlin.
-
Para obtener una lista completa de las guías para desarrolladores del AWS SDK y ejemplos de código, consulte Uso de EventBridge con un SDK de AWS. En este tema también se incluye información sobre cómo comenzar a utilizar el SDK y detalles sobre sus versiones anteriores.