/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once #include #include #include #include #include namespace Aws { namespace CloudWatchLogs { namespace Model { /** */ class DescribeLogStreamsRequest : public CloudWatchLogsRequest { public: AWS_CLOUDWATCHLOGS_API DescribeLogStreamsRequest(); // Service request name is the Operation name which will send this request out, // each operation should has unique request name, so that we can get operation's name from this request. // Note: this is not true for response, multiple operations may have the same response name, // so we can not get operation's name from response. inline virtual const char* GetServiceRequestName() const override { return "DescribeLogStreams"; } AWS_CLOUDWATCHLOGS_API Aws::String SerializePayload() const override; AWS_CLOUDWATCHLOGS_API Aws::Http::HeaderValueCollection GetRequestSpecificHeaders() const override; /** *

The name of the log group.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline const Aws::String& GetLogGroupName() const{ return m_logGroupName; } /** *

The name of the log group.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline bool LogGroupNameHasBeenSet() const { return m_logGroupNameHasBeenSet; } /** *

The name of the log group.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline void SetLogGroupName(const Aws::String& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = value; } /** *

The name of the log group.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline void SetLogGroupName(Aws::String&& value) { m_logGroupNameHasBeenSet = true; m_logGroupName = std::move(value); } /** *

The name of the log group.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline void SetLogGroupName(const char* value) { m_logGroupNameHasBeenSet = true; m_logGroupName.assign(value); } /** *

The name of the log group.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline DescribeLogStreamsRequest& WithLogGroupName(const Aws::String& value) { SetLogGroupName(value); return *this;} /** *

The name of the log group.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline DescribeLogStreamsRequest& WithLogGroupName(Aws::String&& value) { SetLogGroupName(std::move(value)); return *this;} /** *

The name of the log group.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline DescribeLogStreamsRequest& WithLogGroupName(const char* value) { SetLogGroupName(value); return *this;} /** *

Specify either the name or ARN of the log group to view. If the log group is * in a source account and you are using a monitoring account, you must use the log * group ARN.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline const Aws::String& GetLogGroupIdentifier() const{ return m_logGroupIdentifier; } /** *

Specify either the name or ARN of the log group to view. If the log group is * in a source account and you are using a monitoring account, you must use the log * group ARN.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline bool LogGroupIdentifierHasBeenSet() const { return m_logGroupIdentifierHasBeenSet; } /** *

Specify either the name or ARN of the log group to view. If the log group is * in a source account and you are using a monitoring account, you must use the log * group ARN.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline void SetLogGroupIdentifier(const Aws::String& value) { m_logGroupIdentifierHasBeenSet = true; m_logGroupIdentifier = value; } /** *

Specify either the name or ARN of the log group to view. If the log group is * in a source account and you are using a monitoring account, you must use the log * group ARN.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline void SetLogGroupIdentifier(Aws::String&& value) { m_logGroupIdentifierHasBeenSet = true; m_logGroupIdentifier = std::move(value); } /** *

Specify either the name or ARN of the log group to view. If the log group is * in a source account and you are using a monitoring account, you must use the log * group ARN.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline void SetLogGroupIdentifier(const char* value) { m_logGroupIdentifierHasBeenSet = true; m_logGroupIdentifier.assign(value); } /** *

Specify either the name or ARN of the log group to view. If the log group is * in a source account and you are using a monitoring account, you must use the log * group ARN.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline DescribeLogStreamsRequest& WithLogGroupIdentifier(const Aws::String& value) { SetLogGroupIdentifier(value); return *this;} /** *

Specify either the name or ARN of the log group to view. If the log group is * in a source account and you are using a monitoring account, you must use the log * group ARN.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline DescribeLogStreamsRequest& WithLogGroupIdentifier(Aws::String&& value) { SetLogGroupIdentifier(std::move(value)); return *this;} /** *

Specify either the name or ARN of the log group to view. If the log group is * in a source account and you are using a monitoring account, you must use the log * group ARN.

You must include either * logGroupIdentifier or logGroupName, but not both.

* */ inline DescribeLogStreamsRequest& WithLogGroupIdentifier(const char* value) { SetLogGroupIdentifier(value); return *this;} /** *

The prefix to match.

If orderBy is * LastEventTime, you cannot specify this parameter.

*/ inline const Aws::String& GetLogStreamNamePrefix() const{ return m_logStreamNamePrefix; } /** *

The prefix to match.

If orderBy is * LastEventTime, you cannot specify this parameter.

*/ inline bool LogStreamNamePrefixHasBeenSet() const { return m_logStreamNamePrefixHasBeenSet; } /** *

The prefix to match.

If orderBy is * LastEventTime, you cannot specify this parameter.

*/ inline void SetLogStreamNamePrefix(const Aws::String& value) { m_logStreamNamePrefixHasBeenSet = true; m_logStreamNamePrefix = value; } /** *

The prefix to match.

If orderBy is * LastEventTime, you cannot specify this parameter.

*/ inline void SetLogStreamNamePrefix(Aws::String&& value) { m_logStreamNamePrefixHasBeenSet = true; m_logStreamNamePrefix = std::move(value); } /** *

The prefix to match.

If orderBy is * LastEventTime, you cannot specify this parameter.

*/ inline void SetLogStreamNamePrefix(const char* value) { m_logStreamNamePrefixHasBeenSet = true; m_logStreamNamePrefix.assign(value); } /** *

The prefix to match.

If orderBy is * LastEventTime, you cannot specify this parameter.

*/ inline DescribeLogStreamsRequest& WithLogStreamNamePrefix(const Aws::String& value) { SetLogStreamNamePrefix(value); return *this;} /** *

The prefix to match.

If orderBy is * LastEventTime, you cannot specify this parameter.

*/ inline DescribeLogStreamsRequest& WithLogStreamNamePrefix(Aws::String&& value) { SetLogStreamNamePrefix(std::move(value)); return *this;} /** *

The prefix to match.

If orderBy is * LastEventTime, you cannot specify this parameter.

*/ inline DescribeLogStreamsRequest& WithLogStreamNamePrefix(const char* value) { SetLogStreamNamePrefix(value); return *this;} /** *

If the value is LogStreamName, the results are ordered by log * stream name. If the value is LastEventTime, the results are ordered * by the event time. The default value is LogStreamName.

If * you order the results by event time, you cannot specify the * logStreamNamePrefix parameter.

* lastEventTimestamp represents the time of the most recent log event * in the log stream in CloudWatch Logs. This number is expressed as the number of * milliseconds after Jan 1, 1970 00:00:00 UTC. * lastEventTimestamp updates on an eventual consistency basis. It * typically updates in less than an hour from ingestion, but in rare situations * might take longer.

*/ inline const OrderBy& GetOrderBy() const{ return m_orderBy; } /** *

If the value is LogStreamName, the results are ordered by log * stream name. If the value is LastEventTime, the results are ordered * by the event time. The default value is LogStreamName.

If * you order the results by event time, you cannot specify the * logStreamNamePrefix parameter.

* lastEventTimestamp represents the time of the most recent log event * in the log stream in CloudWatch Logs. This number is expressed as the number of * milliseconds after Jan 1, 1970 00:00:00 UTC. * lastEventTimestamp updates on an eventual consistency basis. It * typically updates in less than an hour from ingestion, but in rare situations * might take longer.

*/ inline bool OrderByHasBeenSet() const { return m_orderByHasBeenSet; } /** *

If the value is LogStreamName, the results are ordered by log * stream name. If the value is LastEventTime, the results are ordered * by the event time. The default value is LogStreamName.

If * you order the results by event time, you cannot specify the * logStreamNamePrefix parameter.

* lastEventTimestamp represents the time of the most recent log event * in the log stream in CloudWatch Logs. This number is expressed as the number of * milliseconds after Jan 1, 1970 00:00:00 UTC. * lastEventTimestamp updates on an eventual consistency basis. It * typically updates in less than an hour from ingestion, but in rare situations * might take longer.

*/ inline void SetOrderBy(const OrderBy& value) { m_orderByHasBeenSet = true; m_orderBy = value; } /** *

If the value is LogStreamName, the results are ordered by log * stream name. If the value is LastEventTime, the results are ordered * by the event time. The default value is LogStreamName.

If * you order the results by event time, you cannot specify the * logStreamNamePrefix parameter.

* lastEventTimestamp represents the time of the most recent log event * in the log stream in CloudWatch Logs. This number is expressed as the number of * milliseconds after Jan 1, 1970 00:00:00 UTC. * lastEventTimestamp updates on an eventual consistency basis. It * typically updates in less than an hour from ingestion, but in rare situations * might take longer.

*/ inline void SetOrderBy(OrderBy&& value) { m_orderByHasBeenSet = true; m_orderBy = std::move(value); } /** *

If the value is LogStreamName, the results are ordered by log * stream name. If the value is LastEventTime, the results are ordered * by the event time. The default value is LogStreamName.

If * you order the results by event time, you cannot specify the * logStreamNamePrefix parameter.

* lastEventTimestamp represents the time of the most recent log event * in the log stream in CloudWatch Logs. This number is expressed as the number of * milliseconds after Jan 1, 1970 00:00:00 UTC. * lastEventTimestamp updates on an eventual consistency basis. It * typically updates in less than an hour from ingestion, but in rare situations * might take longer.

*/ inline DescribeLogStreamsRequest& WithOrderBy(const OrderBy& value) { SetOrderBy(value); return *this;} /** *

If the value is LogStreamName, the results are ordered by log * stream name. If the value is LastEventTime, the results are ordered * by the event time. The default value is LogStreamName.

If * you order the results by event time, you cannot specify the * logStreamNamePrefix parameter.

* lastEventTimestamp represents the time of the most recent log event * in the log stream in CloudWatch Logs. This number is expressed as the number of * milliseconds after Jan 1, 1970 00:00:00 UTC. * lastEventTimestamp updates on an eventual consistency basis. It * typically updates in less than an hour from ingestion, but in rare situations * might take longer.

*/ inline DescribeLogStreamsRequest& WithOrderBy(OrderBy&& value) { SetOrderBy(std::move(value)); return *this;} /** *

If the value is true, results are returned in descending order. If the value * is to false, results are returned in ascending order. The default value is * false.

*/ inline bool GetDescending() const{ return m_descending; } /** *

If the value is true, results are returned in descending order. If the value * is to false, results are returned in ascending order. The default value is * false.

*/ inline bool DescendingHasBeenSet() const { return m_descendingHasBeenSet; } /** *

If the value is true, results are returned in descending order. If the value * is to false, results are returned in ascending order. The default value is * false.

*/ inline void SetDescending(bool value) { m_descendingHasBeenSet = true; m_descending = value; } /** *

If the value is true, results are returned in descending order. If the value * is to false, results are returned in ascending order. The default value is * false.

*/ inline DescribeLogStreamsRequest& WithDescending(bool value) { SetDescending(value); return *this;} /** *

The token for the next set of items to return. (You received this token from * a previous call.)

*/ inline const Aws::String& GetNextToken() const{ return m_nextToken; } /** *

The token for the next set of items to return. (You received this token from * a previous call.)

*/ inline bool NextTokenHasBeenSet() const { return m_nextTokenHasBeenSet; } /** *

The token for the next set of items to return. (You received this token from * a previous call.)

*/ inline void SetNextToken(const Aws::String& value) { m_nextTokenHasBeenSet = true; m_nextToken = value; } /** *

The token for the next set of items to return. (You received this token from * a previous call.)

*/ inline void SetNextToken(Aws::String&& value) { m_nextTokenHasBeenSet = true; m_nextToken = std::move(value); } /** *

The token for the next set of items to return. (You received this token from * a previous call.)

*/ inline void SetNextToken(const char* value) { m_nextTokenHasBeenSet = true; m_nextToken.assign(value); } /** *

The token for the next set of items to return. (You received this token from * a previous call.)

*/ inline DescribeLogStreamsRequest& WithNextToken(const Aws::String& value) { SetNextToken(value); return *this;} /** *

The token for the next set of items to return. (You received this token from * a previous call.)

*/ inline DescribeLogStreamsRequest& WithNextToken(Aws::String&& value) { SetNextToken(std::move(value)); return *this;} /** *

The token for the next set of items to return. (You received this token from * a previous call.)

*/ inline DescribeLogStreamsRequest& WithNextToken(const char* value) { SetNextToken(value); return *this;} /** *

The maximum number of items returned. If you don't specify a value, the * default is up to 50 items.

*/ inline int GetLimit() const{ return m_limit; } /** *

The maximum number of items returned. If you don't specify a value, the * default is up to 50 items.

*/ inline bool LimitHasBeenSet() const { return m_limitHasBeenSet; } /** *

The maximum number of items returned. If you don't specify a value, the * default is up to 50 items.

*/ inline void SetLimit(int value) { m_limitHasBeenSet = true; m_limit = value; } /** *

The maximum number of items returned. If you don't specify a value, the * default is up to 50 items.

*/ inline DescribeLogStreamsRequest& WithLimit(int value) { SetLimit(value); return *this;} private: Aws::String m_logGroupName; bool m_logGroupNameHasBeenSet = false; Aws::String m_logGroupIdentifier; bool m_logGroupIdentifierHasBeenSet = false; Aws::String m_logStreamNamePrefix; bool m_logStreamNamePrefixHasBeenSet = false; OrderBy m_orderBy; bool m_orderByHasBeenSet = false; bool m_descending; bool m_descendingHasBeenSet = false; Aws::String m_nextToken; bool m_nextTokenHasBeenSet = false; int m_limit; bool m_limitHasBeenSet = false; }; } // namespace Model } // namespace CloudWatchLogs } // namespace Aws