首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在AWS ProcessingConfigurationProperty字段中提取可选字段或默认值

在AWS ProcessingConfigurationProperty字段中提取可选字段或默认值
EN

Stack Overflow用户
提问于 2022-11-28 15:18:30
回答 1查看 22关注 0票数 0

我正在使用来创建传递输出(S3)前缀,我选择了JQ作为解析器,其中一个前缀键是可选的,我尝试了jq提供的替代选项,但是它给了我一个错误。我附加了随机AWS云跟踪和代码片段。

`

代码语言:javascript
运行
复制
{
  "eventVersion": "1.08",
  "OptionalKey": "Optional" ---> I want to get the optional field and if it does not exist return "undefined"
  "userIdentity": {
    "type": "AssumedRole",
    "principalId": "XXXXXXXXXXXXXXXXX:dkboss",
    "arn": "XXXXXXXXXXXXXXXXXXXXXXXXX/dkboss",
    "accountId": "XXXXXXXXXXXXXXXX",
    "sessionContext": {
      "sessionIssuer": {
        "type": "Role",
        "principalId": "XXXXXXXXXXXXXXXXXXXXXXXXXX",
        "arn": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
        "accountId": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
        "userName": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
      },
      "webIdFederationData": {},
      "attributes": {
        "creationDate": "2022-11-27T15:24:28Z",
        "mfaAuthenticated": "false"            }
    }
  },
  "eventTime": "2022-11-27T15:24:29Z",
  "eventSource": "signin.amazonaws.com", 
  "eventName": "ConsoleLogin",
  "awsRegion": "us-east-1",
  "sourceIPAddress": "1.1.1.1",
  "userAgent": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "requestParameters": null,
  "responseElements": {
    "ConsoleLogin": "Success"
  },
  "additionalEventData": {
    "MobileVersion": "No",
    "MFAUsed": "No"
  },
  "eventID": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "readOnly": false,
  "eventType": "AwsConsoleSignIn",      
  "managementEvent": true,
  "recipientAccountId": "XXXXXXXXXXXXXXXXXXXXXXX",
  "eventCategory": "Management",
  "tlsDetails": {
    "tlsVersion": "TLSv1.2",
    "cipherSuite": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "clientProvidedHostHeader": "signin.aws.amazon.com"
  }
}

‘我想要构建S3前缀,但我不知道如何支持可选值。

`

代码语言:javascript
运行
复制
 CfnDeliveryStream.ProcessorParameterProperty(
                            parameter_name="MetadataExtractionQuery",
                            parameter_value="{"
                            "tlsDetais : .tlsDetails.tlsVersion,"
                            'OptionalKey : .OptionalKey // "undefined",'
"}"

`在ProcessorParameterProperty内部,但是它失败了,出现了以下错误:

代码语言:javascript
运行
复制
JQ Subprocess failed due to: jq: error: syntax error, unexpected //, expecting '}' (Unix shell quoting issues?) at <top-level>, 
EN

回答 1

Stack Overflow用户

发布于 2022-11-28 17:36:01

您必须用括号对表达式进行分组:

代码语言:javascript
运行
复制
{
    tlsDetais : .tlsDetails.tlsVersion,
    OptionalKey : (.OptionalKey // "undefined")
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74602745

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档