

# PutRuntimeManagementConfig
<a name="API_PutRuntimeManagementConfig"></a>

设置函数版本的运行时管理配置。有关更多信息，请参阅 [Runtime updates](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html)（运行时更新）。

## 请求语法
<a name="API_PutRuntimeManagementConfig_RequestSyntax"></a>

```
PUT /2021-07-20/functions/FunctionName/runtime-management-config?Qualifier=Qualifier HTTP/1.1
Content-type: application/json

{
   "RuntimeVersionArn": "string",
   "UpdateRuntimeOn": "string"
}
```

## URI 请求参数
<a name="API_PutRuntimeManagementConfig_RequestParameters"></a>

请求使用以下 URI 参数。

 ** [FunctionName](#API_PutRuntimeManagementConfig_RequestSyntax) **   <a name="lambda-PutRuntimeManagementConfig-request-FunctionName"></a>
Lambda 函数的名称。  

**名称格式**
+  **函数名称** – `my-function`。
+  **函数 ARN** – `arn:aws:lambda:us-west-2:123456789012:function:my-function`。
+  **部分 ARN** – `123456789012:function:my-function`。
长度约束仅适用于完整 ARN。如果您仅指定函数名称，它的长度限制为 64 个字符。  
长度限制：最小长度为 1。长度上限为 140。  
模式：`(arn:(aws[a-zA-Z-]*)?:lambda:)?([a-z]{2}(-gov)?-[a-z]+-\d{1}:)?(\d{12}:)?(function:)?([a-zA-Z0-9-_]+)(:(\$LATEST|[a-zA-Z0-9-_]+))?`  
必需：是

 ** [Qualifier](#API_PutRuntimeManagementConfig_RequestSyntax) **   <a name="lambda-PutRuntimeManagementConfig-request-Qualifier"></a>
指定该函数的版本。可以是 `$LATEST` 或已发布的版本号。如果未指定任何值，则将返回 `$LATEST` 版本的配置。  
长度限制：最小长度为 1。长度上限为 128。  
模式：`(|[a-zA-Z0-9$_-]+)`

## 请求正文
<a name="API_PutRuntimeManagementConfig_RequestBody"></a>

请求接受采用 JSON 格式的以下数据。

 ** [RuntimeVersionArn](#API_PutRuntimeManagementConfig_RequestSyntax) **   <a name="lambda-PutRuntimeManagementConfig-request-RuntimeVersionArn"></a>
您希望函数使用的运行时版本的 ARN。  
仅在使用**手动**运行时更新模式时需要。
类型：字符串  
长度限制：最小长度为 26。最大长度为 2048。  
模式：`^arn:(aws[a-zA-Z-]*):lambda:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1}::runtime:.+$`  
必需：否

 ** [UpdateRuntimeOn](#API_PutRuntimeManagementConfig_RequestSyntax) **   <a name="lambda-PutRuntimeManagementConfig-request-UpdateRuntimeOn"></a>
指定运行时更新模式。  
+  **自动（默认）**– 通过[两阶段运行时版本推出](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html#runtime-management-two-phase)，自动更新到最新的安全运行时版本。对于大多数客户来说，这是确保其始终从运行时更新中受益的最佳选择。
+  **函数更新** – 当您更新函数时，Lambda 会将函数的运行时更新为最新的安全运行时版本。这种方法可将运行时更新与函数部署同步，这样，您就可以控制应用运行时更新的时间，并及早检测和缓解少数运行时更新不兼容问题。使用此设置时，您需要定期更新函数以保持最新的函数运行时。
+  **手动** – 在函数配置中指定运行时版本。该函数将无限期使用此运行时版本。在极少数情况下，新的运行时版本与现有函数不兼容，这样您就可以将函数回滚到早期运行时版本。有关更多信息，请参阅 [Roll back a runtime version](https://docs.aws.amazon.com/lambda/latest/dg/runtimes-update.html#runtime-management-rollback)（回滚运行时版本）。
类型：字符串  
有效值：`Auto | Manual | FunctionUpdate`  
必需：是

## 响应语法
<a name="API_PutRuntimeManagementConfig_ResponseSyntax"></a>

```
HTTP/1.1 200
Content-type: application/json

{
   "FunctionArn": "string",
   "RuntimeVersionArn": "string",
   "UpdateRuntimeOn": "string"
}
```

## 响应元素
<a name="API_PutRuntimeManagementConfig_ResponseElements"></a>

如果此操作成功，则该服务将会发送回 HTTP 200 响应。

服务以 JSON 格式返回以下数据。

 ** [FunctionArn](#API_PutRuntimeManagementConfig_ResponseSyntax) **   <a name="lambda-PutRuntimeManagementConfig-response-FunctionArn"></a>
函数的 ARN  
类型：字符串  
模式：`arn:(aws[a-zA-Z-]*)?:lambda:[a-z]{2}(-gov)?-[a-z]+-\d{1}:\d{12}:function:[a-zA-Z0-9-_]+(:(\$LATEST|[a-zA-Z0-9-_]+))?`

 ** [RuntimeVersionArn](#API_PutRuntimeManagementConfig_ResponseSyntax) **   <a name="lambda-PutRuntimeManagementConfig-response-RuntimeVersionArn"></a>
配置函数所使用的运行时的 ARN。如果运行时更新模式为**手动**，则将返回 ARN，否则将返回 `null`。  
类型：字符串  
长度限制：最小长度为 26。最大长度为 2048。  
模式：`^arn:(aws[a-zA-Z-]*):lambda:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1}::runtime:.+$`

 ** [UpdateRuntimeOn](#API_PutRuntimeManagementConfig_ResponseSyntax) **   <a name="lambda-PutRuntimeManagementConfig-response-UpdateRuntimeOn"></a>
运行时更新模式。  
类型：字符串  
有效值：`Auto | Manual | FunctionUpdate`

## 错误
<a name="API_PutRuntimeManagementConfig_Errors"></a>

有关所有操作返回的常见错误的信息，请参阅 [常见错误](CommonErrors.md)。

 ** InvalidParameterValueException **   
请求中的参数之一无效。  
HTTP 状态代码：400

 ** ResourceConflictException **   
资源已存在，或者其他操作正在进行中。  
HTTP 状态代码：409

 ** ResourceNotFoundException **   
请求中指定的资源不存在。  
HTTP 状态代码：404

 ** ServiceException **   
AWS Lambda 服务遇到了内部错误。  
HTTP 状态代码：500

 ** TooManyRequestsException **   
超出了请求吞吐量限制。有关更多信息，请参阅 [Lambda 限额](https://docs.aws.amazon.com/lambda/latest/dg/gettingstarted-limits.html#api-requests)。  
HTTP 状态代码：429

## 另请参阅
<a name="API_PutRuntimeManagementConfig_SeeAlso"></a>

有关在特定语言的 AWS SDK 中使用此 API 的更多信息，请参阅以下内容：
+  [AWS 命令行界面](https://docs.aws.amazon.com/goto/aws-cli/lambda-2015-03-31/PutRuntimeManagementConfig) 
+  [适用于 .NET 的 AWS SDK](https://docs.aws.amazon.com/goto/DotNetSDKV3/lambda-2015-03-31/PutRuntimeManagementConfig) 
+  [适用于 C\$1\$1 的 AWS SDK](https://docs.aws.amazon.com/goto/SdkForCpp/lambda-2015-03-31/PutRuntimeManagementConfig) 
+  [适用于 Go 的 AWS SDK](https://docs.aws.amazon.com/goto/SdkForGoV1/lambda-2015-03-31/PutRuntimeManagementConfig) 
+  [适用于 Java V2 的 AWS SDK](https://docs.aws.amazon.com/goto/SdkForJavaV2/lambda-2015-03-31/PutRuntimeManagementConfig) 
+  [AWS 适用于 JavaScript 的开发工具包 V3](https://docs.aws.amazon.com/goto/SdkForJavaScriptV3/lambda-2015-03-31/PutRuntimeManagementConfig) 
+  [适用于 PHP V3 的 AWS SDK](https://docs.aws.amazon.com/goto/SdkForPHPV3/lambda-2015-03-31/PutRuntimeManagementConfig) 
+  [适用于 Python 的 AWS SDK](https://docs.aws.amazon.com/goto/boto3/lambda-2015-03-31/PutRuntimeManagementConfig) 
+  [适用于 Ruby V3 的 AWS SDK](https://docs.aws.amazon.com/goto/SdkForRubyV3/lambda-2015-03-31/PutRuntimeManagementConfig) 