Tous les produits
Search
Centre de documentation

Elastic Compute Service:ModifyInvocationAttribute

Dernière mise à jour :Sep 20, 2026

Modifie les informations d'exécution d'une tâche planifiée Cloud Assistant, y compris le contenu de la commande, le mode d'exécution planifiée et l'ajout d'instances ECS ou d'instances gérées à la tâche.

Description de l'opération

  • Vous pouvez modifier les tâches avec les modes d'exécution suivants (voir la valeur RepeatMode renvoyée par DescribeInvocations) :
    • Period : exécution périodique.

    • NextRebootOnly : exécute automatiquement la commande au prochain démarrage de l'instance.

    • EveryReboot : exécute automatiquement la commande à chaque démarrage de l'instance.

  • Vous pouvez modifier les tâches dans les états suivants (voir la valeur InvocationStatus renvoyée par DescribeInvocations) :
    • Pending : le système vérifie ou envoie la commande. Si l'état d'exécution de la commande sur au moins une instance est Pending, l'état d'exécution global est Pending.

    • Running : la commande est en cours d'exécution sur l'instance. Si l'état d'exécution de la commande sur au moins une instance est Running, l'état d'exécution global est Running.

    • Scheduled : la commande planifiée a été envoyée et est en attente d'exécution. Si l'état d'exécution de la commande sur au moins une instance est Scheduled, l'état d'exécution global est Scheduled.

    • Stopping : la tâche est en cours d'arrêt. Si l'état d'exécution de la commande sur au moins une instance est Stopping, l'état d'exécution global est Stopping.

  • Avant de modifier les informations d'exécution de la tâche planifiée (y compris le contenu de la commande, les paramètres personnalisés et la fréquence d'exécution), la version de l'agent Cloud Assistant sur les instances ECS ou les instances gérées ayant déjà exécuté la tâche doit être ultérieure aux versions suivantes :
    • Linux : 2.2.3.541

    • Windows : 2.1.3.541

    • Si le résultat de l'appel renvoie le code d'erreur InvalidOperation.CloudAssistantVersionUnsupported, mettez à jour l'agent Cloud Assistant vers la dernière version.

  • Lorsque vous exécutez une commande commune Cloud Assistant, vous ne pouvez pas modifier le contenu de la commande CommandContent.

  • Lorsque vous modifiez le contenu de la commande CommandContent et que la tâche a été créée en appelant InvokeCommand ou RunCommand avec KeepCommand défini sur true, une nouvelle commande est créée et conservée de manière permanente, ce qui est décompté de votre quota de commandes Cloud Assistant. Vous pouvez conserver de 500 à 50 000 commandes Cloud Assistant dans une région. Vous pouvez également demander une augmentation de quota. Pour plus d'informations sur la façon de consulter et d'augmenter les quotas, consultez Gestion des quotas.

Testez maintenant

Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale. Testez cette API dans OpenAPI Explorer, sans signature manuelle. Les appels réussis génèrent automatiquement du code SDK correspondant à vos paramètres. Téléchargez-le avec une sécurité intégrée des identifiants pour une utilisation locale.

Test

Autorisation RAM

Le tableau ci-dessous décrit les autorisations nécessaires pour appeler cette API. Vous pouvez les définir dans une politique Resource Access Management (RAM). Les colonnes du tableau sont détaillées ci-dessous :

  • Action : les actions peuvent être utilisées dans l'élément Action des instructions de politique de permissions RAM pour accorder les autorisations nécessaires à l'exécution de l'opération.

  • API : l'API que vous pouvez appeler pour exécuter l'action.

  • Niveau d'accès : le niveau d'accès prédéfini accordé pour chaque API. Valeurs valides : create, list, get, update et delete.

  • Type de ressource : le type de ressource qui prend en charge l'autorisation pour exécuter l'action. Il indique si l'action prend en charge les permissions au niveau de la ressource. La ressource spécifiée doit être compatible avec l'action. Sinon, la politique sera inefficace.

    • Pour les API avec permissions au niveau de la ressource, les types de ressource requis sont marqués d'un astérisque (*). Spécifiez l'Alibaba Cloud Resource Name (ARN) correspondant dans l'élément Resource de la politique.

    • Pour les API sans permissions au niveau de la ressource, la valeur All Resources est affichée. Utilisez un astérisque (*) dans l'élément Resource de la politique.

  • Clé de condition : les clés de condition définies par le service. La clé permet un contrôle granulaire, applicable aux actions seules ou aux actions associées à des ressources spécifiques. En plus des clés de condition propres au service, Alibaba Cloud fournit un ensemble de clés de condition communes applicables à tous les services pris en charge par RAM.

  • Action dépendante : les actions dépendantes requises pour exécuter l'action. Pour mener à bien l'opération, l'utilisateur RAM ou le rôle RAM doit disposer des permissions pour toutes les actions dépendantes.

ecs:ModifyInvocationAttribute

update

*Invocation.

acs:ecs:{#regionId}:{#accountId}:invocation/{#invocationId}

Instance.

acs:ecs:{#regionId}:{#accountId}:instance/{#instanceId}

Aucune Aucune

Paramètres de requête

Paramètre

Type

Requis

Description

Exemple

RegionId

string

Oui

L'identifiant de la région.

cn-hangzhou

InstanceId

array

Non

L'identifiant de l'instance ECS ou de l'instance gérée à ajouter à la tâche.

string

Non

L'identifiant de l'instance ECS ou de l'instance gérée à ajouter à la tâche. Le nombre total d'instances à ajouter et d'instances ayant déjà exécuté la tâche ne peut pas dépasser 100.

i-bp1i7gg30r52z2em****

InvokeId

string

Oui

L'identifiant d'exécution de la tâche à modifier.

t-hz0jdfwd9f****

CommandContent

string

Non

Le contenu de la commande modifié. Le contenu de la commande peut être en texte brut ou encodé en Base64. Notez les points suivants :

  • La taille du contenu de la commande après encodage en Base64 ne peut pas dépasser 24 Ko.

  • Si le contenu de la commande est encodé en Base64, définissez ContentEncoding=Base64.

  • Définissez EnableParameter=true pour activer la fonctionnalité de paramètres personnalisés dans le contenu de la commande :

    • Définissez les paramètres personnalisés en les entourant de {{}}. Les espaces et les sauts de ligne avant et après le nom du paramètre dans {{}} sont ignorés.

    • Le nombre de paramètres personnalisés ne peut pas dépasser 20.

    • Les noms des paramètres personnalisés ne peuvent contenir que a-z, A-Z, 0-9, des tirets (-) et des traits de soulignement (_). Le préfixe acs:: pour spécifier des paramètres d'environnement non intégrés n'est pas pris en charge. Les autres caractères ne sont pas pris en charge. Les noms de paramètres ne sont pas sensibles à la casse.

    • Chaque nom de paramètre personnalisé ne peut pas dépasser 64 octets.

  • Vous pouvez spécifier des paramètres d'environnement intégrés en tant que paramètres personnalisés. Lorsque la commande est exécutée, Cloud Assistant les remplace automatiquement par les valeurs correspondantes dans l'environnement sans affectation manuelle. Les paramètres d'environnement intégrés suivants sont pris en charge :

    • {{ACS::RegionId}} : l'identifiant de la région.

    • {{ACS::AccountId}} : l'UID du compte Alibaba Cloud.

    • {{ACS::InstanceId}} : l'identifiant de l'instance. Lorsque la commande est envoyée à plusieurs instances, pour utiliser {{ACS::InstanceId}} comme paramètre d'environnement intégré, assurez-vous que la version de l'agent Cloud Assistant n'est pas antérieure aux versions suivantes :
      • Linux : 2.2.3.309

      • Windows : 2.1.3.309

    • {{ACS::InstanceName}} : le nom de l'instance. Lorsque la commande est envoyée à plusieurs instances, pour utiliser {{ACS::InstanceName}} comme paramètre d'environnement intégré, assurez-vous que la version de l'agent Cloud Assistant n'est pas antérieure aux versions suivantes :
      • Linux : 2.2.3.344

      • Windows : 2.1.3.344

    • {{ACS::InvokeId}} : l'identifiant d'exécution de la commande. Pour utiliser {{ACS::InvokeId}} comme paramètre d'environnement intégré, assurez-vous que la version de l'agent Cloud Assistant n'est pas antérieure aux versions suivantes :
      • Linux : 2.2.3.309

      • Windows : 2.1.3.309

    • {{ACS::CommandId}} : l'identifiant de la commande. Lorsque vous appelez cette opération pour exécuter une commande, pour utiliser {{ACS::CommandId}} comme paramètre d'environnement intégré, assurez-vous que la version de l'agent Cloud Assistant n'est pas antérieure aux versions suivantes :
      • Linux : 2.2.3.309

      • Windows : 2.1.3.309

ZWNobyAxMjM=

EnableParameter

boolean

Non

Indique si la commande contient des paramètres personnalisés.

  • Lorsque vous activez les paramètres personnalisés ou modifiez les paramètres personnalisés Parameters, définissez ce paramètre sur true.

  • Lorsque vous ne modifiez pas les paramètres personnalisés Parameters, ne définissez pas ce paramètre ou définissez-le sur false.

false

Parameters

object

Non

Les paires clé-valeur des paramètres personnalisés à modifier lorsque la commande contient des paramètres personnalisés.

Le nombre de paramètres personnalisés varie de 0 à 10. Notez les points suivants :

  • Les clés ne peuvent pas être des chaînes vides et peuvent contenir jusqu'à 64 caractères.

  • Les valeurs peuvent être des chaînes vides.

  • Après l'encodage en Base64 des paramètres personnalisés et du contenu de la commande d'origine, la taille totale du contenu de la commande ne peut pas dépasser 24 Ko.

  • L'ensemble des noms de paramètres personnalisés doit être un sous-ensemble de l'ensemble de paramètres défini lors de la création de la commande. Pour les paramètres qui ne sont pas transmis, vous pouvez utiliser des chaînes vides comme substituts.

Valeur par défaut : vide, ce qui indique qu'aucune paire clé-valeur de paramètre personnalisé n'est modifiée.

{"name":"Jack", "accessKey":"LTAI*************"}

Frequency

string

Non

La fréquence d'exécution planifiée modifiée. Ce paramètre prend effet uniquement lorsque RepeatMode est défini sur Period. Trois types d'exécution planifiée sont pris en charge : l'exécution à intervalles fixes (basée sur une expression Rate), l'exécution unique à une heure spécifiée et l'exécution planifiée basée sur l'horloge (basée sur une expression Cron).

  • Exécution à intervalles fixes : basée sur une expression Rate, la commande est exécutée à l'intervalle spécifié. L'intervalle peut être spécifié en secondes (s), minutes (m), heures (h) ou jours (d). Ceci est applicable aux scénarios où les tâches sont exécutées à intervalles fixes. Format : rate(<valeur d'intervalle><unité d'intervalle>). Par exemple, pour une exécution toutes les 5 minutes, utilisez rate(5m). Les limites suivantes s'appliquent à l'exécution à intervalles fixes :

    • L'intervalle ne peut pas dépasser 7 jours ni être inférieur à 60 secondes, et doit être supérieur au délai d'attente spécifié lors de la création de la tâche planifiée.

    • L'intervalle d'exécution est basé sur une fréquence fixe et n'est pas lié au temps d'exécution réel de la tâche. Par exemple, si la commande est configurée pour s'exécuter toutes les 5 minutes et que la tâche prend 2 minutes pour se terminer, le prochain cycle d'exécution commence 3 minutes après la fin de la tâche.

    • L'heure de la prochaine exécution est calculée en fonction de l'heure de création de la tâche (voir CreationTime renvoyé par DescribeInvocations, notez qu'il ne s'agit pas de l'heure de modification) et de l'intervalle d'exécution modifié.

  • Exécution unique à une heure spécifiée : la commande est exécutée une seule fois dans le fuseau horaire et à l'heure spécifiés. Format : at(yyyy-MM-dd HH:mm:ss ), soit at(année-mois-jour heure:minute:seconde ). Si aucun fuseau horaire n'est spécifié, UTC est utilisé par défaut. Le fuseau horaire prend en charge les trois formats suivants :

    • Nom complet du fuseau horaire : tel que Asia/Shanghai (heure de Chine/Shanghai) et America/Los_Angeles (heure des États-Unis/Los Angeles).

    • Décalage du fuseau horaire par rapport au temps moyen de Greenwich : tel que GMT+8:00 (UTC+8) et GMT-7:00 (UTC-7). Lors de l'utilisation du format GMT, les zéros non significatifs ne sont pas pris en charge pour la valeur de l'heure.

    • Abréviation du fuseau horaire : seul UTC (temps universel coordonné) est pris en charge.

    Par exemple, pour une exécution unique à 13:15:30 le 6 juin 2022 à l'heure de Chine/Shanghai, utilisez : at(2022-06-06 13:15:30 Asia/Shanghai). Pour une exécution unique à 13:15:30 le 6 juin 2022 en UTC-7, utilisez : at(2022-06-06 13:15:30 GMT-7:00).

  • Exécution planifiée basée sur l'horloge (basée sur une expression Cron) : basée sur une expression Cron, la commande est exécutée selon les paramètres de la tâche planifiée. Format : <année (facultatif)> , soit . L'heure d'exécution de la tâche planifiée est calculée en fonction de l'expression Cron dans le fuseau horaire spécifié. Si aucun fuseau horaire n'est spécifié, le fuseau horaire interne du système de l'instance exécutant la tâche planifiée est utilisé par défaut. Pour plus d'informations sur les expressions Cron, consultez Expressions Cron. Le fuseau horaire prend en charge les trois formats suivants :

    • Nom complet du fuseau horaire : tel que Asia/Shanghai (heure de Chine/Shanghai) et America/Los_Angeles (heure des États-Unis/Los Angeles).

    • Décalage du fuseau horaire par rapport au temps moyen de Greenwich : tel que GMT+8:00 (UTC+8) et GMT-7:00 (UTC-7). Lors de l'utilisation du format GMT, les zéros non significatifs ne sont pas pris en charge pour la valeur de l'heure.

    • Abréviation du fuseau horaire : seul UTC (temps universel coordonné) est pris en charge. Par exemple, pour une exécution quotidienne à 10:15 en 2022 à l'heure de Chine/Shanghai, utilisez 0 15 10 ? * * 2022 Asia/Shanghai. Pour une exécution toutes les 30 minutes de 10:00 à 11:30 tous les jours en 2022 en UTC+8, utilisez 0 0/30 10-11 * * ? 2022 GMT+8:00. Pour une exécution toutes les 5 minutes de 14:00 à 14:55 tous les jours en octobre tous les deux ans à partir de 2022 en UTC, utilisez 0 0/5 14 * 10 ? 2022/2 UTC.

    Remarque

    L'intervalle minimum doit être supérieur ou égal au délai d'attente spécifié lors de la création de la tâche planifiée, et doit être d'au moins 10 secondes.

0 */20 * * * *

ContentEncoding

string

Non

Le type d'encodage du contenu de la commande (CommandContent). Valeurs valides (insensibles à la casse) :

  • PlainText : aucun encodage. Le contenu est transmis en texte brut.

  • Base64 : encodage Base64.

Valeur par défaut : PlainText. Si une valeur non valide est spécifiée, elle est traitée comme PlainText.

PlainText

ClientToken

string

Non

Le jeton client utilisé pour garantir l'idempotence de la requête. Vous pouvez utiliser le client pour générer le jeton, mais assurez-vous que le jeton est unique parmi les différentes requêtes. ClientToken ne peut contenir que des caractères ASCII et ne peut pas dépasser 64 caractères. Pour plus d'informations, consultez Comment garantir l'idempotence.

123e4567-e89b-12d3-a456-426655440000

Éléments de réponse

Élément

Type

Description

Exemple

object

CommandId

string

L'identifiant de la commande.

  • Une nouvelle commande est créée et le nouveau CommandId est renvoyé uniquement lorsque CommandContent est modifié.

  • Lorsque CommandContent n'est pas modifié, aucune nouvelle commande n'est créée, et le CommandId de la commande en cours d'exécution est renvoyé.

  • Si vous avez appelé InvokeCommand ou appelé RunCommand avec KeepCommand défini sur true, la nouvelle commande est conservée. Sinon, lorsque l'exécution est terminée ou que la tâche est arrêtée manuellement, toutes les commandes associées à la tâche sont supprimées.

c-hz01272yr52****

RequestId

string

L'identifiant de la requête.

473469C7-AA6F-4DC5-B3DB-A3DC0DE3****

Exemples

JSON format

{
  "CommandId": "c-hz01272yr52****",
  "RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3****"
}

Codes d'erreur

Code de statut HTTP

Code d'erreur

Message d'erreur

Description

400 InvalidParameter.Frequency The specified parameter Frequency is not valid. Le paramètre Frequency spécifié n'est pas valide.
400 InvalidParameters.KeyDuplicate The key in the parameter Parameters cannot be duplicated. La clé dans le paramètre Parameters ne peut pas être dupliquée.
400 InvalidParameters.KeyNotMatch The key in the parameter Parameters do not match those defined when creating the command. La clé dans le paramètre Parameters ne correspond pas à la clé définie lors de la création de la commande.
400 InvalidParameters.KeyMalformed The key in the parameter Parameters is not valid. La clé dans le paramètre Parameters n'est pas valide.
400 InvalidParameters.KeyEmpty The key in the parameter Parameters cannot be empty. La clé dans le paramètre Parameters ne peut pas être vide.
400 InvalidCommandContent.DecodeError The specified parameter CommandContent can not be Base64 decoded. Le paramètre CommandContent ne peut pas être décodé à l'aide de Base64.
400 InvalidClientToken.Malformed The specified parameter clientToken is not valid. Le paramètre idempotent spécifié est invalide.
500 InternalError An error occurred when you dispatched the request. Une erreur interne s'est produite. Réessayez.
403 InvalidParameterCharacter The specified parameter %s contains illegal characters.
403 InvalidInstanceId.OSTypeUnsupported The OS type of the instance corresponding to the parameter InstanceId does not support the specified command type. Le type de système d'exploitation de l'instance spécifiée par le paramètre InstanceId ne prend pas en charge le type de commande spécifié.
403 InvalidOperation.RepeatModeUnsupported The operation is not supported for current repeat mode of invocation. La méthode d'exécution de commande actuelle ne prend pas en charge cette opération.
403 InvalidOperation.InvokeAlreadyFinished The operation is not supported for finished invocation. Cette opération n'est pas prise en charge pour les tâches terminées.
403 InvalidOperation.CloudAssistantVersionUnsupported The operation is not supported for current CloudAssistant version of instance. La version de Cloud Assistant de l'instance actuelle ne prend pas en charge cette opération.
403 InvalidOperation.ModifyPublicCommandUnsupported Modification of the content of Public Command is not supported. La modification du contenu des commandes publiques n'est pas prise en charge.
403 InvalidCommandContent.LengthLimitExceeded The length of the parameter CommandContent exceeds the limit of %s KB characters.
403 Operation.Forbidden The operation is not permitted. L'opération n'est pas autorisée.
403 InvalidParameters.CountLimitExceeded The count of the parameter Parameters exceeds the limit of 10. Le nombre de clés dans le paramètre Parameters dépasse la limite de 10.
403 InvalidParameters.KeyLengthLimitExceeded The length of the key in the parameter Parameters exceeds the limit of 64 characters. La longueur de la clé dans le paramètre Parameters dépasse la limite de 64 caractères.
403 InvalidInstanceId.CountLimitExceeded The count of the parameter InstanceId exceeds the limit of %s.
403 CommandLimitExceeded The count of command in current region exceeds the limit of %s.
403 InvalidParameters.ValueTypeUnsupported The type of the value in the parameter Parameters is not supported. Le type de valeur dans le paramètre Parameters n'est pas pris en charge.
403 IdempotentParameterMismatch The specified parameter has changed while using an already used clientToken. Les paramètres de la requête ne correspondent pas à la requête utilisant le même ClientToken.
403 IdempotentProcessing The previous idempotent request(s) is still processing. La requête idempotente précédente est toujours en cours de traitement. Réessayez ultérieurement.
404 InvalidInvokeId.NotFound The specified parameter InvokeId does not exist. Le paramètre InvokeId spécifié n'existe pas. Vérifiez que le paramètre est correct.
404 InvalidInstanceId.NotFound The specified parameter InstanceId does not exist. L'instance spécifiée n'existe pas. Vérifiez que l'identifiant de l'instance est correct.
404 InvalidRegionId.NotFound The specified parameter RegionId does not exist. Le paramètre RegionId spécifié n'existe pas. Vérifiez si le produit est disponible dans cette région.
404 InvalidCommandId.NotFound The specified CommandId does not exist.

Consultez Codes d'erreur pour la liste complète.

Notes de version

Consultez Notes de version pour la liste complète.