Class: Aws::CloudWatchEvents::Types::InputTransformer

Inherits:
Struct
  • Object
show all
Includes:
Structure
Defined in:
lib/aws-sdk-cloudwatchevents/types.rb

Overview

Contains the parameters needed for you to provide custom input to a target based on one or more pieces of data extracted from the event.

Constant Summary collapse

SENSITIVE =
[]

Instance Attribute Summary collapse

Instance Attribute Details

#input_paths_mapHash<String,String>

Map of JSON paths to be extracted from the event. You can then insert these in the template in ‘InputTemplate` to produce the output you want to be sent to the target.

‘InputPathsMap` is an array key-value pairs, where each value is a valid JSON path. You can have as many as 100 key-value pairs. You must use JSON dot notation, not bracket notation.

The keys cannot start with “Amazon Web Services.”

Returns:

  • (Hash<String,String>)


2086
2087
2088
2089
2090
2091
# File 'lib/aws-sdk-cloudwatchevents/types.rb', line 2086

class InputTransformer < Struct.new(
  :input_paths_map,
  :input_template)
  SENSITIVE = []
  include Aws::Structure
end

#input_templateString

Input template where you specify placeholders that will be filled with the values of the keys from ‘InputPathsMap` to customize the data sent to the target. Enclose each `InputPathsMaps` value in brackets: &lt;value&gt; The InputTemplate must be valid JSON.

If ‘InputTemplate` is a JSON object (surrounded by curly braces), the following restrictions apply:

  • The placeholder cannot be used as an object key.

^

The following example shows the syntax for using ‘InputPathsMap` and `InputTemplate`.

‘ “InputTransformer”:`

‘“InputPathsMap”: {“instance”: “$.detail.instance”,“status”: “$.detail.status”,`

‘“InputTemplate”: “<instance> is in state <status>”`

‘}`

To have the ‘InputTemplate` include quote marks within a JSON string, escape each quote marks with a slash, as in the following example:

‘ “InputTransformer”:`

‘“InputPathsMap”: {“instance”: “$.detail.instance”,“status”: “$.detail.status”,`

‘“InputTemplate”: “<instance> is in state ”<status>“”`

‘}`

The ‘InputTemplate` can also be valid JSON with varibles in quotes or out, as in the following example:

‘ “InputTransformer”:`

‘“InputPathsMap”: {“instance”: “$.detail.instance”,“status”: “$.detail.status”,`

‘“InputTemplate”: ’<instance>,“myStatus”: “<instance> is in state ”<status>“”‘`

‘}`

Returns:

  • (String)


2086
2087
2088
2089
2090
2091
# File 'lib/aws-sdk-cloudwatchevents/types.rb', line 2086

class InputTransformer < Struct.new(
  :input_paths_map,
  :input_template)
  SENSITIVE = []
  include Aws::Structure
end