Skip to content

Commit a996f51

Browse files
author
aws-sdk-cpp-automation
committed
Amazon VPC Flow Logs adds support for tags and tagging on resource creation.
1 parent bf55bd2 commit a996f51

16 files changed

+318
-184
lines changed

aws-cpp-sdk-core/include/aws/core/VersionConfig.h

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,4 @@
1313
* permissions and limitations under the License.
1414
*/
1515

16-
#define AWS_SDK_VERSION_STRING "1.7.287"
16+
#define AWS_SDK_VERSION_STRING "1.7.288"

aws-cpp-sdk-ec2/include/aws/ec2/EC2Client.h

+12-15
Original file line numberDiff line numberDiff line change
@@ -17802,11 +17802,10 @@ namespace Model
1780217802
* you can specify that the Spot Fleet distribute the target capacity across the
1780317803
* Spot pools included in its launch specifications. By ensuring that the Spot
1780417804
* Instances in your Spot Fleet are in different Spot pools, you can improve the
17805-
* availability of your fleet.</p> <p>You can specify tags for the Spot Fleet
17806-
* request and instances launched by the fleet. You cannot tag other resource types
17807-
* in a Spot Fleet request because only the <code>spot-fleet-request</code> and
17808-
* <code>instance</code> resource types are supported.</p> <p>For more information,
17809-
* see <a
17805+
* availability of your fleet.</p> <p>You can specify tags for the Spot Fleet and
17806+
* Spot Instances. You cannot tag other resource types in a Spot Fleet request
17807+
* because only the <code>spot-fleet-request</code> and <code>instance</code>
17808+
* resource types are supported.</p> <p>For more information, see <a
1781017809
* href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html">Spot
1781117810
* Fleet Requests</a> in the <i>Amazon EC2 User Guide for Linux
1781217811
* Instances</i>.</p><p><h3>See Also:</h3> <a
@@ -17828,11 +17827,10 @@ namespace Model
1782817827
* you can specify that the Spot Fleet distribute the target capacity across the
1782917828
* Spot pools included in its launch specifications. By ensuring that the Spot
1783017829
* Instances in your Spot Fleet are in different Spot pools, you can improve the
17831-
* availability of your fleet.</p> <p>You can specify tags for the Spot Fleet
17832-
* request and instances launched by the fleet. You cannot tag other resource types
17833-
* in a Spot Fleet request because only the <code>spot-fleet-request</code> and
17834-
* <code>instance</code> resource types are supported.</p> <p>For more information,
17835-
* see <a
17830+
* availability of your fleet.</p> <p>You can specify tags for the Spot Fleet and
17831+
* Spot Instances. You cannot tag other resource types in a Spot Fleet request
17832+
* because only the <code>spot-fleet-request</code> and <code>instance</code>
17833+
* resource types are supported.</p> <p>For more information, see <a
1783617834
* href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html">Spot
1783717835
* Fleet Requests</a> in the <i>Amazon EC2 User Guide for Linux
1783817836
* Instances</i>.</p><p><h3>See Also:</h3> <a
@@ -17856,11 +17854,10 @@ namespace Model
1785617854
* you can specify that the Spot Fleet distribute the target capacity across the
1785717855
* Spot pools included in its launch specifications. By ensuring that the Spot
1785817856
* Instances in your Spot Fleet are in different Spot pools, you can improve the
17859-
* availability of your fleet.</p> <p>You can specify tags for the Spot Fleet
17860-
* request and instances launched by the fleet. You cannot tag other resource types
17861-
* in a Spot Fleet request because only the <code>spot-fleet-request</code> and
17862-
* <code>instance</code> resource types are supported.</p> <p>For more information,
17863-
* see <a
17857+
* availability of your fleet.</p> <p>You can specify tags for the Spot Fleet and
17858+
* Spot Instances. You cannot tag other resource types in a Spot Fleet request
17859+
* because only the <code>spot-fleet-request</code> and <code>instance</code>
17860+
* resource types are supported.</p> <p>For more information, see <a
1786417861
* href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html">Spot
1786517862
* Fleet Requests</a> in the <i>Amazon EC2 User Guide for Linux
1786617863
* Instances</i>.</p><p><h3>See Also:</h3> <a

aws-cpp-sdk-ec2/include/aws/ec2/model/CreateFlowLogsRequest.h

+45
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
#include <aws/ec2/model/FlowLogsResourceType.h>
2222
#include <aws/ec2/model/TrafficType.h>
2323
#include <aws/ec2/model/LogDestinationType.h>
24+
#include <aws/ec2/model/TagSpecification.h>
2425
#include <utility>
2526

2627
namespace Aws
@@ -746,6 +747,47 @@ namespace Model
746747
inline CreateFlowLogsRequest& WithLogFormat(const char* value) { SetLogFormat(value); return *this;}
747748

748749

750+
/**
751+
* <p>The tags to apply to the flow logs.</p>
752+
*/
753+
inline const Aws::Vector<TagSpecification>& GetTagSpecifications() const{ return m_tagSpecifications; }
754+
755+
/**
756+
* <p>The tags to apply to the flow logs.</p>
757+
*/
758+
inline bool TagSpecificationsHasBeenSet() const { return m_tagSpecificationsHasBeenSet; }
759+
760+
/**
761+
* <p>The tags to apply to the flow logs.</p>
762+
*/
763+
inline void SetTagSpecifications(const Aws::Vector<TagSpecification>& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = value; }
764+
765+
/**
766+
* <p>The tags to apply to the flow logs.</p>
767+
*/
768+
inline void SetTagSpecifications(Aws::Vector<TagSpecification>&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications = std::move(value); }
769+
770+
/**
771+
* <p>The tags to apply to the flow logs.</p>
772+
*/
773+
inline CreateFlowLogsRequest& WithTagSpecifications(const Aws::Vector<TagSpecification>& value) { SetTagSpecifications(value); return *this;}
774+
775+
/**
776+
* <p>The tags to apply to the flow logs.</p>
777+
*/
778+
inline CreateFlowLogsRequest& WithTagSpecifications(Aws::Vector<TagSpecification>&& value) { SetTagSpecifications(std::move(value)); return *this;}
779+
780+
/**
781+
* <p>The tags to apply to the flow logs.</p>
782+
*/
783+
inline CreateFlowLogsRequest& AddTagSpecifications(const TagSpecification& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(value); return *this; }
784+
785+
/**
786+
* <p>The tags to apply to the flow logs.</p>
787+
*/
788+
inline CreateFlowLogsRequest& AddTagSpecifications(TagSpecification&& value) { m_tagSpecificationsHasBeenSet = true; m_tagSpecifications.push_back(std::move(value)); return *this; }
789+
790+
749791
/**
750792
* <p>The maximum interval of time during which a flow of packets is captured and
751793
* aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600
@@ -818,6 +860,9 @@ namespace Model
818860
Aws::String m_logFormat;
819861
bool m_logFormatHasBeenSet;
820862

863+
Aws::Vector<TagSpecification> m_tagSpecifications;
864+
bool m_tagSpecificationsHasBeenSet;
865+
821866
int m_maxAggregationInterval;
822867
bool m_maxAggregationIntervalHasBeenSet;
823868
};

aws-cpp-sdk-ec2/include/aws/ec2/model/DescribeFlowLogsRequest.h

+72-8
Original file line numberDiff line numberDiff line change
@@ -91,7 +91,15 @@ namespace Model
9191
* <code>log-group-name</code> - The name of the log group.</p> </li> <li> <p>
9292
* <code>resource-id</code> - The ID of the VPC, subnet, or network interface.</p>
9393
* </li> <li> <p> <code>traffic-type</code> - The type of traffic
94-
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> </ul>
94+
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> <li>
95+
* <p> <code>tag</code>:&lt;key&gt; - The key/value combination of a tag assigned
96+
* to the resource. Use the tag key in the filter name and the tag value as the
97+
* filter value. For example, to find all resources that have a tag with the key
98+
* <code>Owner</code> and the value <code>TeamA</code>, specify
99+
* <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter
100+
* value.</p> </li> <li> <p> <code>tag-key</code> - The key of a tag assigned to
101+
* the resource. Use this filter to find all resources assigned a tag with a
102+
* specific key, regardless of the tag value.</p> </li> </ul>
95103
*/
96104
inline const Aws::Vector<Filter>& GetFilter() const{ return m_filter; }
97105

@@ -105,7 +113,15 @@ namespace Model
105113
* <code>log-group-name</code> - The name of the log group.</p> </li> <li> <p>
106114
* <code>resource-id</code> - The ID of the VPC, subnet, or network interface.</p>
107115
* </li> <li> <p> <code>traffic-type</code> - The type of traffic
108-
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> </ul>
116+
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> <li>
117+
* <p> <code>tag</code>:&lt;key&gt; - The key/value combination of a tag assigned
118+
* to the resource. Use the tag key in the filter name and the tag value as the
119+
* filter value. For example, to find all resources that have a tag with the key
120+
* <code>Owner</code> and the value <code>TeamA</code>, specify
121+
* <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter
122+
* value.</p> </li> <li> <p> <code>tag-key</code> - The key of a tag assigned to
123+
* the resource. Use this filter to find all resources assigned a tag with a
124+
* specific key, regardless of the tag value.</p> </li> </ul>
109125
*/
110126
inline bool FilterHasBeenSet() const { return m_filterHasBeenSet; }
111127

@@ -119,7 +135,15 @@ namespace Model
119135
* <code>log-group-name</code> - The name of the log group.</p> </li> <li> <p>
120136
* <code>resource-id</code> - The ID of the VPC, subnet, or network interface.</p>
121137
* </li> <li> <p> <code>traffic-type</code> - The type of traffic
122-
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> </ul>
138+
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> <li>
139+
* <p> <code>tag</code>:&lt;key&gt; - The key/value combination of a tag assigned
140+
* to the resource. Use the tag key in the filter name and the tag value as the
141+
* filter value. For example, to find all resources that have a tag with the key
142+
* <code>Owner</code> and the value <code>TeamA</code>, specify
143+
* <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter
144+
* value.</p> </li> <li> <p> <code>tag-key</code> - The key of a tag assigned to
145+
* the resource. Use this filter to find all resources assigned a tag with a
146+
* specific key, regardless of the tag value.</p> </li> </ul>
123147
*/
124148
inline void SetFilter(const Aws::Vector<Filter>& value) { m_filterHasBeenSet = true; m_filter = value; }
125149

@@ -133,7 +157,15 @@ namespace Model
133157
* <code>log-group-name</code> - The name of the log group.</p> </li> <li> <p>
134158
* <code>resource-id</code> - The ID of the VPC, subnet, or network interface.</p>
135159
* </li> <li> <p> <code>traffic-type</code> - The type of traffic
136-
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> </ul>
160+
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> <li>
161+
* <p> <code>tag</code>:&lt;key&gt; - The key/value combination of a tag assigned
162+
* to the resource. Use the tag key in the filter name and the tag value as the
163+
* filter value. For example, to find all resources that have a tag with the key
164+
* <code>Owner</code> and the value <code>TeamA</code>, specify
165+
* <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter
166+
* value.</p> </li> <li> <p> <code>tag-key</code> - The key of a tag assigned to
167+
* the resource. Use this filter to find all resources assigned a tag with a
168+
* specific key, regardless of the tag value.</p> </li> </ul>
137169
*/
138170
inline void SetFilter(Aws::Vector<Filter>&& value) { m_filterHasBeenSet = true; m_filter = std::move(value); }
139171

@@ -147,7 +179,15 @@ namespace Model
147179
* <code>log-group-name</code> - The name of the log group.</p> </li> <li> <p>
148180
* <code>resource-id</code> - The ID of the VPC, subnet, or network interface.</p>
149181
* </li> <li> <p> <code>traffic-type</code> - The type of traffic
150-
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> </ul>
182+
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> <li>
183+
* <p> <code>tag</code>:&lt;key&gt; - The key/value combination of a tag assigned
184+
* to the resource. Use the tag key in the filter name and the tag value as the
185+
* filter value. For example, to find all resources that have a tag with the key
186+
* <code>Owner</code> and the value <code>TeamA</code>, specify
187+
* <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter
188+
* value.</p> </li> <li> <p> <code>tag-key</code> - The key of a tag assigned to
189+
* the resource. Use this filter to find all resources assigned a tag with a
190+
* specific key, regardless of the tag value.</p> </li> </ul>
151191
*/
152192
inline DescribeFlowLogsRequest& WithFilter(const Aws::Vector<Filter>& value) { SetFilter(value); return *this;}
153193

@@ -161,7 +201,15 @@ namespace Model
161201
* <code>log-group-name</code> - The name of the log group.</p> </li> <li> <p>
162202
* <code>resource-id</code> - The ID of the VPC, subnet, or network interface.</p>
163203
* </li> <li> <p> <code>traffic-type</code> - The type of traffic
164-
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> </ul>
204+
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> <li>
205+
* <p> <code>tag</code>:&lt;key&gt; - The key/value combination of a tag assigned
206+
* to the resource. Use the tag key in the filter name and the tag value as the
207+
* filter value. For example, to find all resources that have a tag with the key
208+
* <code>Owner</code> and the value <code>TeamA</code>, specify
209+
* <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter
210+
* value.</p> </li> <li> <p> <code>tag-key</code> - The key of a tag assigned to
211+
* the resource. Use this filter to find all resources assigned a tag with a
212+
* specific key, regardless of the tag value.</p> </li> </ul>
165213
*/
166214
inline DescribeFlowLogsRequest& WithFilter(Aws::Vector<Filter>&& value) { SetFilter(std::move(value)); return *this;}
167215

@@ -175,7 +223,15 @@ namespace Model
175223
* <code>log-group-name</code> - The name of the log group.</p> </li> <li> <p>
176224
* <code>resource-id</code> - The ID of the VPC, subnet, or network interface.</p>
177225
* </li> <li> <p> <code>traffic-type</code> - The type of traffic
178-
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> </ul>
226+
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> <li>
227+
* <p> <code>tag</code>:&lt;key&gt; - The key/value combination of a tag assigned
228+
* to the resource. Use the tag key in the filter name and the tag value as the
229+
* filter value. For example, to find all resources that have a tag with the key
230+
* <code>Owner</code> and the value <code>TeamA</code>, specify
231+
* <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter
232+
* value.</p> </li> <li> <p> <code>tag-key</code> - The key of a tag assigned to
233+
* the resource. Use this filter to find all resources assigned a tag with a
234+
* specific key, regardless of the tag value.</p> </li> </ul>
179235
*/
180236
inline DescribeFlowLogsRequest& AddFilter(const Filter& value) { m_filterHasBeenSet = true; m_filter.push_back(value); return *this; }
181237

@@ -189,7 +245,15 @@ namespace Model
189245
* <code>log-group-name</code> - The name of the log group.</p> </li> <li> <p>
190246
* <code>resource-id</code> - The ID of the VPC, subnet, or network interface.</p>
191247
* </li> <li> <p> <code>traffic-type</code> - The type of traffic
192-
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> </ul>
248+
* (<code>ACCEPT</code> | <code>REJECT</code> | <code>ALL</code>).</p> </li> <li>
249+
* <p> <code>tag</code>:&lt;key&gt; - The key/value combination of a tag assigned
250+
* to the resource. Use the tag key in the filter name and the tag value as the
251+
* filter value. For example, to find all resources that have a tag with the key
252+
* <code>Owner</code> and the value <code>TeamA</code>, specify
253+
* <code>tag:Owner</code> for the filter name and <code>TeamA</code> for the filter
254+
* value.</p> </li> <li> <p> <code>tag-key</code> - The key of a tag assigned to
255+
* the resource. Use this filter to find all resources assigned a tag with a
256+
* specific key, regardless of the tag value.</p> </li> </ul>
193257
*/
194258
inline DescribeFlowLogsRequest& AddFilter(Filter&& value) { m_filterHasBeenSet = true; m_filter.push_back(std::move(value)); return *this; }
195259

0 commit comments

Comments
 (0)